Movatterモバイル変換


[0]ホーム

URL:


KR20160010293A - Communication method of node in content centric network(ccn) and node - Google Patents

Communication method of node in content centric network(ccn) and node
Download PDF

Info

Publication number
KR20160010293A
KR20160010293AKR1020150038852AKR20150038852AKR20160010293AKR 20160010293 AKR20160010293 AKR 20160010293AKR 1020150038852 AKR1020150038852 AKR 1020150038852AKR 20150038852 AKR20150038852 AKR 20150038852AKR 20160010293 AKR20160010293 AKR 20160010293A
Authority
KR
South Korea
Prior art keywords
node
interlace
pit
content
ack
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
KR1020150038852A
Other languages
Korean (ko)
Other versions
KR102337119B1 (en
Inventor
굽타 아브히섹
엠 샨카라난다 바가비
반살 쿠샬
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사filedCritical삼성전자주식회사
Priority to US14/803,323priorityCriticalpatent/US10305640B2/en
Publication of KR20160010293ApublicationCriticalpatent/KR20160010293A/en
Application grantedgrantedCritical
Publication of KR102337119B1publicationCriticalpatent/KR102337119B1/en
Activelegal-statusCriticalCurrent
Anticipated expirationlegal-statusCritical

Links

Images

Classifications

Landscapes

Abstract

Translated fromKorean

컨텐츠 중심 네트워크에서 이전 노드로부터 컨텐츠를 요청하는 제1 인터레스트를 수신하고, 제1 인터레스트에 응답하여, 제1 인터레스트의 수신을 나타내는 제1 ACK 메시지를 생성하며, 이전 노드에게 제1 ACK 메시지를 전송하는 노드의 통신 방법을 제공할 수 있다.Receiving a first request for content from a previous node in a content-centric network; generating, in response to the first request, a first ACK message indicating receipt of a first inter- To a node in the network.

Description

Translated fromKorean
컨텐츠 중심 네트워크에서 노드의 통신 방법 및 그 노드{COMMUNICATION METHOD OF NODE IN CONTENT CENTRIC NETWORK(CCN) AND NODE}[0001] COMMUNICATION METHOD OF NODE IN CONTENT CENTRIC NETWORK (CCN) AND NODE [0002]

아래의 실시예들은 컨텐츠 중심 네트워크(Content Centric Networking; CCN))에서 노드의 통신 방법 및 그 노드에 관한 것이다.The following embodiments relate to a node's communication method and its node in a content-centric network (CCN).

컨텐츠 중심 네트워크(CCN)는 이름 기반의 라우팅(name-based routing), 네트워크 내의 캐싱(in-network caching) 및 패킷마다의 보안성을 제공하는 네트워킹 토폴로지이다. 컨텐츠 중심 네트워크는 피어-투-피어(peer-to-peer) 컨텐츠 공유를 위한 실용적인 기술 및 컴퓨터 네트워크의 아키텍쳐에 대한 대안이 될 수 있다. 컨텐츠 중심 네트워크는 인터넷 프로토콜(Internet Protocol; IP)의 호스트 주소들(host addresses)을 대체할 수 있는 컨텐츠 이름을 사용하여 효율적인 정보 공유를 위한 새로운 네트워킹 원리를 제공할 수 있다.Content-centric networks (CCNs) are networking topologies that provide name-based routing, in-network caching, and per-packet security. Content-centric networks can be an alternative to practical technology and computer network architectures for peer-to-peer content sharing. Content-centric networks can provide new networking principles for efficient information sharing by using content names that can replace host addresses of Internet Protocol (IP).

컨텐츠 중심 네트워크(CCN)는, 수신된 컨텐츠의 물리적 위치, 특정 참조(specific reference)를 가지기 보다는, 사용자로 하여금 사용자에 의해 요청된 데이터에 집중하도록 하는 통신 네트워크를 제공한다.A content-centric network (CCN) provides a communication network that allows a user to focus on data requested by a user rather than having a physical location, specific reference to the received content.

일 실시예에 따르면, 노드의 통신 방법은 컨텐츠 중심 네트워크에서 이전 노드(previous node)로부터 컨텐츠를 요청하는 제1 인터레스트(Interest)를 수신하는 단계; 상기 제1 인터레스트에 응답하여, 상기 제1 인터레스트의 수신을 나타내는 제1 ACK 메시지(ACKnowledgement message)를 생성하는 단계; 및 상기 이전 노드에게 상기 제1 ACK 메시지를 전송하는 단계를 포함한다.According to one embodiment, a method of communicating a node includes receiving a first interest requesting content from a previous node in a content-centric network; In response to the first interlace, generating a first acknowledgment message indicating reception of the first interlace; And transmitting the first ACK message to the previous node.

상기 제1 ACK 메시지를 생성하는 단계는 상기 제1 인터레스트와 관련된 고유의 시퀀스 넘버에 기초하여 상기 제1 ACK 메시지를 생성하는 단계를 포함할 수 있다.The generating of the first ACK message may include generating the first ACK message based on a unique sequence number associated with the first interlace.

상기 노드의 통신 방법은 상기 제1 ACK 메시지를 전송한 후, 상기 노드의 PIT(Propagating Interest Table)에 상기 제1 인터레스트와 관련된 PIT 엔트리를 생성하는 단계; 및 상기 PIT 엔트리에 상기 제1 인터레스트와 관련된 시퀀스 넘버를 저장하는 단계를 더 포함할 수 있다.The method comprising: generating a PIT entry associated with the first inter- est in a propagation interest table (PIT) of the node after transmitting the first ACK message; And storing the sequence number associated with the first interlace in the PIT entry.

상기 노드의 통신 방법은 상기 제1 ACK 메시지를 전송한 후, 상기 제1 인터레스트와 관련된 컨텐츠가 상기 노드의 컨텐츠 스토어에 존재하지 않는 경우, 제2 인터레스트를 생성하는 단계; 다음 노드(next node)에게 상기 제2 인터레스트를 전송함에 따라, ACK 타이머(acknowledgement timer)를 시작하는 단계; 및 상기 다음 노드로부터 상기 제2 인터레스트에 응답한 제2 ACK 메시지를 수신한 경우, 상기 ACK 타이머를 정지하는 단계를 더 포함할 수 있다.The method comprising the steps of: generating a second interlace when a content related to the first interlace is not present in the content store of the node after transmitting the first ACK message; Initiating an ACK timer by sending the second interlace to a next node; And stopping the ACK timer when receiving a second ACK message in response to the second interlace from the next node.

상기 제2 인터레스트를 생성하는 단계는 넌스(Nonce)를 가지는 상기 제2 인터레스트를 생성하는 단계를 포함할 수 있다.The step of generating the second interlace may include generating the second interlace having a nonce.

상기 제2 인터레스트는 파라미터들을 포함하고, 상기 파라미터들은 상기 노드에서 상기 제2 인터레스트에 대응하는 컨텐츠의 이용 가능성(availability)에 기초하여 변경될 수 있다.The second interrest includes parameters, and the parameters can be changed based on availability of content corresponding to the second interrest at the node.

상기 노드의 통신 방법은 상기 제2 ACK 메시지가 상기 ACK 타이머의 만료 시까지 수신되지 않는 경우, 상기 다음 노드에게 상기 제2 인터레스트를 재전송하는 단계를 더 포함할 수 있다.The method of communication of the node may further include retransmitting the second interlace to the next node if the second ACK message is not received until the expiration of the ACK timer.

상기 노드의 통신 방법은 상기 제2 인터레스트를 재전송함에 따라, 상기 ACK 타이머를 일정한 백 오프 타임 아웃 값(back-off timeout value)으로 다시 시작하는 단계를 더 포함할 수 있다.The method of communication of the node may further include restarting the ACK timer with a constant back-off timeout value as the second interlace is retransmitted.

상기 제2 인터레스트는 상기 제2 인터레스트를 식별할 수 있는 고유의 시퀀스 넘버와 관련되고, 상기 고유의 시퀀스 넘버는 IN 시퀀스 넘버(IN Sequence Number; ISN) 및 OUT 시퀀스 넘버(OUT Sequence Number; OSN)를 포함할 수 있다.The second interlace is associated with a unique sequence number that can identify the second interlace and the unique sequence number includes an IN Sequence Number (ISN) and an OUT Sequence Number (OSN) ).

상기 노드의 통신 방법은 상기 제1 인터레스트가 수신되면, 상기 노드의 PIT에 상기 IN 시퀀스 넘버를 저장하는 단계를 더 포함할 수 있다.The communication method of the node may further include storing the IN sequence number in the PIT of the node when the first interlace is received.

상기 노드의 통신 방법은 상기 제2 인터레스트를 상기 다음 노드에게 전송할 때, 상기 노드의 PIT에 상기 OUT 시퀀스 넘버를 저장하는 단계를 더 포함할 수 있다.The communication method of the node may further include storing the OUT sequence number in the PIT of the node when the second interlace is transmitted to the next node.

상기 제1 ACK 메시지를 전송하는 단계는 상기 제1 인터레스트가 수신된 인커밍 페이스(incoming face)가 원거리(remote)인지 여부를 판단 하는 단계; 및 상기 인커밍 페이스가 원거리로 판단되면, 상기 제1 인터레스트에 응답하여 상기 제1 ACK 메시지를 전송하는 단계를 포함할 수 있다.Wherein the transmitting the first ACK message comprises: determining whether an incoming face received by the first interlace is remote; And transmitting the first ACK message in response to the first interlace if the incoming face is determined to be distant.

상기 노드의 통신 방법은 상기 인커밍 페이스가 근거리로 판단되면, 상기 제1 인터레스트에 상기 이전 노드에 의해 생성된 복제된 넌스(duplicated Nonce)가 있는지 여부를 판단하는 단계; 상기 복제된 넌스가 있다고 판단되는 경우, 상기 제1 인터레스트의 IN 시퀀스 넘버가 상기 노드의 PIT에 포함된 엔트리(entry)의 IN 시퀀스 넘버와 일치하는지 여부에 기초하여, 상기 제1 인터레스트를 상기 이전 노드에 의해 재전송된 인터레스트로 선언하는 단계를 더 포함할 수 있다.Wherein the communication method of the node includes the steps of: determining whether there is a duplicated Nonce generated by the previous node in the first interlace if the incoming face is determined as a short distance; Based on whether or not the IN sequence number of the first interlace coincides with the IN sequence number of an entry included in the PIT of the node, And declaring it as an interlace retransmitted by the previous node.

상기 노드의 통신 방법은 상기 다음 노드로부터 컨텐츠 를 수신함에 따라 상기 노드의 PIT 엔트리를 STALE 플래그에 의해 표시(mark)하는 단계; 상기 PIT 엔트리에 대응하는 PIT 타이머를 시작하는 단계; 및 상기 PIT 타이머가 만료되는 경우, 상기 노드의 PIT에서 상기 PIT 엔트리를 제거하는 단계를 더 포함할 수 있다.The method comprising: marking a PIT entry of the node with a STALE flag upon receiving content from the next node; Initiating a PIT timer corresponding to the PIT entry; And if the PIT timer expires, removing the PIT entry from the PIT of the node.

상기 PIT 타이머의 값은 상기 노드의 Round Trip Time(RTT)에 기초하여 계산될 수 있다.The value of the PIT timer may be calculated based on the Round Trip Time (RTT) of the node.

일 실시예에 따르면, 노드는 컨텐츠 중심 네트워크에서 이전 노드(previous node)로부터 컨텐츠를 요청하는 제1 인터레스트를 수신하는 수신부; 상기 제1 인터레스트에 응답하여, 상기 제1 인터레스트의 수신을 나타내는 제1 ACK 메시지를 생성하는 처리부; 및 상기 이전 노드에게 상기 제1 ACK 메시지를 전송하는 전송부를 포함한다.According to one embodiment, the node comprises: a receiver for receiving a first interlace requesting content from a previous node in a content-oriented network; A processing unit responsive to the first interlace to generate a first ACK message indicating receipt of the first interlace; And a transmitter for transmitting the first ACK message to the previous node.

상기 노드는 PIT 엔트리들을 포함하는 PIT를 더 포함하고, 상기 처리부는 상기 PIT에 상기 제1 인터레스트와 관련된 PIT 엔트리를 생성하고, 상기 PIT 엔트리에 상기 제1 인터레스트와 관련된 시퀀스 넘버를 저장할 수 있다.The node may further comprise a PIT containing PIT entries and the processing unit may generate a PIT entry associated with the first interlace in the PIT and store a sequence number associated with the first interlace in the PIT entry .

상기 노드는 컨텐츠를 저장하는 컨텐츠 스토어를 더 포함하고, 상기 처리부는 상기 전송부가 상기 제1 ACK 메시지를 전송한 후, 상기 제1 인터레스트와 관련된 컨텐츠가 상기 컨텐츠 스토어에 존재하지 않는 경우에 제2 인터레스트를 생성하여 다음 노드에게 전송할 수 있다.Wherein the node further comprises a content store for storing content, and after the transmitting unit transmits the first ACK message, if the content related to the first interlace is not present in the content store, An interlace can be generated and transmitted to the next node.

상기 처리부는 상기 제2 인터레스트를 생성하여 다음 노드에게 전송함에 따라 ACK 타이머를 시작하고, 상기 다음 노드로부터 상기 제2 인터레스트에 응답한 제2 ACK 메시지를 수신한 경우에 상기 ACK 타이머를 정지할 수 있다.The processing unit starts the ACK timer according to the generation of the second interlace and transmits the second interlace to the next node and stops the ACK timer when receiving the second ACK message responding to the second interlace from the next node .

상기 처리부는 상기 제2 ACK 메시지가 상기 ACK 타이머의 만료 시까지 수신되지 않는 경우, 상기 다음 노드에게 상기 제2 인터레스트를 재전송하고, 상기 ACK 타이머를 일정한 백 오프 타임 아웃 값으로 다시 시작할 수 있다.The processing unit may resend the second interlace to the next node if the second ACK message is not received until the expiration of the ACK timer and resume the ACK timer with a constant backoff timeout value.

상기 제2 인터레스트는 상기 제2 인터레스트를 식별할 수 있는 고유의 시퀀스 넘버와 관련되고, 상기 고유의 시퀀스 넘버는 IN 시퀀스 넘버 및 OUT 시퀀스 넘버를 포함할 수 있다.The second interlace may be associated with a unique sequence number that can identify the second interlace, and the unique sequence number may include an IN sequence number and an OUT sequence number.

상기 처리부는 상기 다음 노드로부터 컨텐츠 를 수신함에 따라 상기 노드의 PIT 엔트리를 STALE 플래그에 의해 표시하고, 상기 PIT 엔트리에 대응하는 PIT 타이머를 시작하며, 상기 PIT 타이머가 만료되면 상기 노드의 전파 인터레스트 테이블(PIT)에서 상기 PIT 엔트리를 제거할 수 있다.The processing unit displays the PIT entry of the node by the STALE flag as it receives the content from the next node, starts the PIT timer corresponding to the PIT entry, and when the PIT timer expires, The PIT entry may be removed from the PIT.

일 실시예에 따르면, 노드의 통신 방법은 인터레스트 소유자- 상기 인터레스트 소유자는 상기 컨텐츠 중심 네트워크에서 상기 인터레스트의 신뢰성 있는 전송을 보증(ensure)하는 ACK 타이머(acknowledgement timer)를 유지함-가 노드에게 컨텐츠를 요청하는 인터레스트를 전송하는 단계; 및 상기 인터레스트 소유자가, 상기 ACK 타이머의 만료 전에 상기 노드에 의해 상기 인터레스트의 수신을 알리는 ACK 메시지를 수신하는 단계를 포함한다.According to one embodiment, a method of communicating with a node comprises the steps of: maintaining an acknowledgment timer for ensuring reliable transmission of the inter- est in the content-centric network by the inter- Transmitting an interlace requesting content; And receiving, by the interleaving owner, an ACK message informing receipt of the interlace by the node prior to expiration of the ACK timer.

상기 노드의 통신 방법은 상기 ACK 타이머의 만료 이후에 상기 노드에게 상기 인터레스트 소유자에 의해 상기 인터레스트를 재전송하는 단계를 더 포함할 수 있다.The method of communication of the node may further comprise retransmitting the interlace by the interleaving owner to the node after expiration of the ACK timer.

상기 인터레스트 소유자는 상기 인터레스트를 상기 노드에게 전송하기 위해 상기 인터레스트 소유자의 전달 인터레스트 테이블에서 상기 인터레스트의 엔트리를 생성할 수 있다.The interpreter owner may generate an entry of the interpreter in the transferring interest table of the interpreter owner to transfer the interpreter to the node.

상기 노드의 통신 방법은 상기 컨텐츠가 상기 노드의 컨텐츠 스토어에서 유용한지 여부를 결정하는 단계; 상기 결정에 응답하여 상기 인터레스트 소유자에게 상기 컨텐츠를 전송하는 단계; 상기 인터레스트 소유자가 상기 컨텐츠를 수신함에 응답하여 STALE 플래그에 의해 상기 펜딩 엔트리(pending entry)를 표시하는 단계-상기 인터레스트 소유자는 상기 컨텐츠를 수신함에 응답하여 PIT 타이머를 유지함-; 및 상기 PIT 타이머가 만료되었다는 결정에 응답하여 상기 PIT로부터 상기 STALE 플래그에 해당하는 펜딩 엔트리를 삭제하는 단계를 더 포함할 수 있다.The communication method of the node comprising the steps of: determining whether the content is available in the content store of the node; Sending the content to the owner of the intercept in response to the determination; Displaying the pending entry by a STALE flag in response to the content owner receiving the content, the interpreter owner maintaining a PIT timer in response to receiving the content; And deleting the pending entry corresponding to the STALE flag from the PIT in response to the determination that the PIT timer has expired.

상기 노드의 통신 방법은 상기 스테일 플래그에 의해 해당 PIT가 표시되고, 상기 PIT 타이머가 만료되기 전에 상기 컨텐츠를 수신함에 응답하여 상기 컨텐츠가 중복되었음을 선언하는 단계를 더 포함할 수 있다.The communication method of the node may further include a step of declaring that the content is duplicated in response to receipt of the content before the PIT timer is expired and the PIT is indicated by the stall flag.

상기 인터레스트는 IN 시퀀스 넘버 및 OUT 시퀀스 넘버와 연관되고, 상기 인터레스트의 상기 IN 시퀀스 넘버는 상기 인터레스트가 상기 노드에 수신될 때, 상기 노드의 PIT에 저장되고, 상기 인터레스트의 상기 OUT 시퀀스 넘버는 상기 인터레스트가 상기 컨텐츠 중심 네트워크의 다른 노드로부터 포워딩될 때, 상기 노드의 상기 PIT에 저장될 수 있다.Wherein the IN sequence number is associated with an IN sequence number and an OUT sequence number, the IN sequence number of the interlace being stored in a PIT of the node when the INTEREST is received at the node, The number may be stored in the PIT of the node when the inter- est is forwarded from another node of the content-centric network.

상기 ACK 메시지는 시퀀스 넘버와 관련되고, 상기 인터레스트와 관련된 고유 식별자(unique identifier)는 상기 ACK 메시지가 상기 인터레스트에 대응됨을 식별하기 위해 상기 ACK 메시지와 관련된 상기 고유 식별자와 매칭될 수 있다.The ACK message may be associated with a sequence number and a unique identifier associated with the intercept may be matched with the unique identifier associated with the ACK message to identify that the ACK message corresponds to the interlace.

도 1은 일 실시예에 따른 컨텐츠 중심 네트워크(CCN)의 구조를 나타낸 도면이다.
도 2는 일 실시예에 따른 컨텐츠 중심 네트워크에서 노드의 블록 다이어그램이다.
도 3은 일 실시예에 따른 노드의 통신 방법을 나타낸 흐름도이다.
도 4는 다른 실시예에 따른 노드의 통신 방법을 나타낸 흐름도이다.
도 5는 다른 실시예에 따른 노드의 통신 방법을 나타낸 흐름도이다.
도 6은 일 실시예에 따른 컨텐츠 중심 네트워크에서 인터레스트의 전송을 보장하기 위해 각 노드에서 ACK 타이머(Acknowledgement timer)와 PIT 타이머(PIT timer)가 유지되는 과정을 나타낸 도면이다.
도 7은 일 실시예에 따른 컨텐츠 중심 네트워크에서 노드들 간에 전송된 ACK 패킷이 삭제(drop)된 경우의 동작을 나타낸 도면이다.
도 8은 다른 실시예에 따른 컨텐츠 중심 네트워크에서 노드들 간에 전송된 ACK 패킷이 삭제된 경우의 동작을 나타낸 도면이다.
도 9는 일실시예에 따른 컨텐츠 중심 네트워크에서 노드들간의 인터레스트가 삭제된 경우, ACK 타이머의 종료 후에 인터레스트가 재전송되는 과정을 나타낸 도면이다.
도 10은 일실시예에 따른 컨텐츠 중심 네트워크의 각 노드에서 인터레스트를 처리하는 방법을 나타낸 도면이다.
도 11은 일 실시예에 따른 컨텐츠 중심 네트워크에서 노드가 인접 노드들부터 수신되는 컨텐츠(incoming content)를 처리하는 방법을 나타낸 도면이다.
도 12는 일 실시예에 따른 컨텐츠 중심 네트워크에서 노드들 간에 인터레스트가 삭제된 경우를 나타낸 도면이다.
도 13은 일 실시예에 따라 다수의 CCN 클라이언드들을 포함하는 컨텐츠 중심 네트워크에서 두 노드들 중 어느 하나에서 인터레스트가 삭제된 경우를 나타낸 도면이다.
도 14는 일 실시예에 따라 두 개의 모바일 디바이스들 중 어느 하나의 모바일 디바이스와 액세스 포인트 간에 전송되는 인터레스트가 삭제되는 경우를 나타낸 도면이다.
도 15은 도 12에 도시된 경우에 대하여 일실시예에 따른 ACK 메커니즘을 사용한 경우 및 ACK 메커니즘을 사용하지 않은 경우의 처리율 비교 결과를 나타낸 그래프이다.
도 16는 노드들의 개수 증가를 통해 확률을 변화시키는 도 13에 도시된 경우에 대한 처리율 비교 결과를 나타낸 그래프이다.
도 17은 도 14에 도시된 경우에 대하여 일실시예에 따른 ACK 메커니즘을 사용한 경우 및 ACK 메커니즘을 사용하지 않은 경우의 처리율 비교 결과를 나타낸 그래프이다.
도 18은 일 실시예에 따른 노드의 블록도이다.
도 19는 일 실시예에 따른 컨텐츠 중심 네트워크에서 인터레스트의 전송을 제어하는 방법 및 시스템을 구현하는 컴퓨팅 환경을 설명하기 위한 도면이다.
FIG. 1 is a diagram illustrating a structure of a content center network (CCN) according to an exemplary embodiment of the present invention.
2 is a block diagram of a node in a content-centric network according to one embodiment.
3 is a flowchart illustrating a method of communicating a node according to an embodiment.
4 is a flowchart illustrating a method of communicating a node according to another embodiment.
5 is a flowchart illustrating a method of communicating a node according to another embodiment.
FIG. 6 is a diagram illustrating a process of maintaining an ACK timer and a PIT timer at each node in order to guarantee the transmission of an interlace in a content-centered network according to an exemplary embodiment of the present invention.
7 is a diagram illustrating an operation in a case where an ACK packet transmitted between nodes in a content-centric network according to an embodiment is dropped.
FIG. 8 is a diagram illustrating an operation when an ACK packet transmitted between nodes in a content-centered network according to another embodiment is deleted.
9 is a diagram illustrating a process in which an interrest is retransmitted after an end of an ACK timer when an inter-node between nodes is deleted in a content-centered network according to an exemplary embodiment.
FIG. 10 is a diagram illustrating a method of processing an advertisement in each node of the content-centric network according to an exemplary embodiment of the present invention.
FIG. 11 is a diagram illustrating a method for a node to process incoming content from neighboring nodes in a content-centric network according to an exemplary embodiment of the present invention.
FIG. 12 is a diagram illustrating a case where an interpreter is deleted between nodes in a content-centric network according to an exemplary embodiment of the present invention.
FIG. 13 is a diagram illustrating a case in which an interlace is deleted from one of two nodes in a content-centric network including a plurality of CCN clients according to an exemplary embodiment of the present invention.
FIG. 14 is a diagram illustrating a case in which an interlace transmitted between a mobile device and an access point of one of two mobile devices is deleted according to an embodiment.
FIG. 15 is a graph illustrating a throughput comparison result in the case shown in FIG. 12 when the ACK mechanism according to an embodiment is used and when the ACK mechanism is not used.
FIG. 16 is a graph showing the throughput comparison result for the case shown in FIG. 13 in which the probability is changed by increasing the number of nodes.
FIG. 17 is a graph showing the throughput comparison result when the ACK mechanism according to an embodiment is used and when the ACK mechanism is not used with respect to the case shown in FIG. 14. FIG.
18 is a block diagram of a node according to one embodiment.
19 is a diagram for describing a computing environment for implementing a method and system for controlling transmission of an interlace in a content-oriented network according to an embodiment.

이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.In the following, embodiments will be described in detail with reference to the accompanying drawings. Like reference symbols in the drawings denote like elements.

아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Various modifications may be made to the embodiments described below. It is to be understood that the embodiments described below are not intended to limit the embodiments, but include all modifications, equivalents, and alternatives to them.

실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the examples are used only to illustrate specific embodiments and are not intended to limit the embodiments. The singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, the terms "comprises" or "having" and the like refer to the presence of stated features, integers, steps, operations, elements, components, or combinations thereof, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this embodiment belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
In the following description of the present invention with reference to the accompanying drawings, the same components are denoted by the same reference numerals regardless of the reference numerals, and redundant explanations thereof will be omitted. In the following description of the embodiments, a detailed description of related arts will be omitted if it is determined that the gist of the embodiments may be unnecessarily blurred.

이하에서는 컨텐츠 중심 네트워크(CCN)의 구조를 살펴보기에 앞서, 컨텐츠 중심 네트워크에 대하여 살펴본다.Before explaining the structure of the content-centric network (CCN), a content-centric network will be described below.

컨텐츠 중심 네트워크에서, 요청 패킷은 인터레스트(Interest)로, 응답 패킷은 컨텐츠(또는 컨텐츠 객체(Content Object))로 알려져 있다. 컨텐츠는 적절한 크기의 청크들(chunks)(즉, 컨텐츠들)로 구분되고, 각각의 인터레스트는 청크를 요청한다.In the content-oriented network, the request packet is known as an interest and the response packet is known as a content (or a content object). The content is divided into chunks of appropriate size (i.e., content), and each of the interrests requests a chunk.

컨텐츠를 요청하는 노드는 순차적인 방식으로 복수 개의 인터레스트들을 전송한다. 이때, 인터레스트 각각은 컨텐츠와 연관될 수 있다.The node requesting the content transmits a plurality of interlaces in a sequential manner. At this time, each of the interrests may be associated with the content.

컨텐츠 중심 네트워크에서, 모든 인터레스트들을 위해, 최대 하나의 컨텐츠가 수신될 수 있다. 또한, 전송된 인터레스트는 적당한 이름 기반 라우팅 기술을 적용함으로써 컨텐츠 소스(content source)를 향해 전파될 수 있다.In a content-centric network, for all interrupts, a maximum of one content can be received. In addition, the transmitted interrest can be propagated towards a content source by applying an appropriate name-based routing technique.

인터레스트를 수신한 컨텐츠 중심 네트워크의 각 중간 노드(intermediate node)는 컨텐츠 스토어(Content Store; CS)로 알려진 컨텐츠 캐시(content cache)에 있는 컨텐츠에 대한 인터레스트의 수신을 체크한다.Each intermediate node of the content-centric network receiving the interrest checks the receipt of the inter-content for the content in the content cache known as the content store (CS).

요청된 컨텐츠가 컨텐츠 스토어에서 발견되면, 노드는 컨텐츠로 응답할 수 있다. 요청된 컨텐츠가 컨텐츠 스토어에서 발견되지 않으면, 노드는 인터레스트를 컨텐츠 중심 네트워크의 다음 노드(또는 인접 노드)에게 전달할 수 있다.If the requested content is found in the content store, the node may respond with the content. If the requested content is not found in the content store, the node may forward the inter- est to the next node (or neighbor node) of the content-centric network.

인터레스트를 전달하기 전에, 중간 노드는 인터레스트 정보를 전파 인터레스트 테이블(Propagating Interest Table; 이하 'PIT')로 알려진 인터레스트 테이블에 저장할 수 있다.Before delivering the inter- est, the intermediate node may store the inter- est information in an inter- pretast table known as a Propagating Interest Table (PIT).

포워딩 정보는 수동으로 또는 적절한 라우팅 기술을 통해 알려지고, FIB (Forwarding Information Base) 테이블에 저장될 수 있다.The forwarding information is known either manually or through an appropriate routing technique, and may be stored in a Forwarding Information Base (FIB) table.

컨텐츠를 포함하는 노드는 중간 노드들에서 생성된 PIT 엔트리에 의해 형성된 역 방향 경로(reverse path)를 사용하여 컨텐츠를 요청한 노드에게 응답할 수 있다. 컨텐츠가 노드 내에 있는 경우에 컨텐츠가 컨텐츠를 요청한 노드를 향해 중간 노드들을 통과하면, PIT 엔트리는 (엔드 노드들을 포함하는) 중간 노드들에서 제거될 수 있다.The node containing the content may respond to the node requesting the content using a reverse path formed by the PIT entries generated at the intermediate nodes. If the content is within a node, the PIT entry may be removed from the intermediate nodes (including the end nodes) if the content passes through the intermediate nodes towards the node that requested the content.

한번에 하나의 인터레스트를 전송하는 비효율적인 방법을 사용하는 대신에, 복수의 요청들이 인터레스트를 형성하기 위해 응집될 수 있다.Instead of using an inefficient method of transmitting one interlace at a time, multiple requests can be aggregated to form an interlace.

인터레스트는 인터레스트의 윈도우 사이즈(window size)라고 알려진 동적으로 변경된 엔티티(entity)에 의해 감시되는 하나 이상의 컨텐츠들을 요청한다. 윈도우 사이즈 'w_max'를 가지는 인터레스트는 인터레스트와 연관된 컨텐츠를 수신하기 위해 컨텐츠 중심 네트워크에서 노드에게 전송된다. 'w_max' 는 미리 정의된 최대 값일 수 있다.An interrest requests one or more content to be watched by a dynamically altered entity known as the window size of the interlace. An interrest with a window size of 'w_max' is sent to the node in the content-centric network to receive the content associated with the interlace. 'w_max' may be a predefined maximum value.

컨텐츠 전송자(content sender)가 인터레스트를 수신하면, 컨텐츠 전송자는 인터레스트의 윈도우 사이즈를 판독하고, 요청 노드에게 컨텐츠를 전송할 수 있다. 또한, 인터레스트 정보는 세그먼트 시작 범위(segment start range)를 포함한다.When the content sender receives the inter- est, the content sender can read the window size of the inter- est and send the content to the requesting node. In addition, the interleaved information includes a segment start range.

첫번째 누락 컨텐츠는 새로운 인터레스트가 구성되고, 다음 노드로 전송되는 지점(point)으로 간주될 수 있다. 이러한 방식으로, 인터레스트의 윈도우 사이즈는 각 노드에서의 컨텐츠의 이용 가능성에 기초하여 각 노드에서 감소될 수 있다.The first missing content can be regarded as a point at which a new interlace is constructed and sent to the next node. In this way, the window size of the interlace can be reduced at each node based on the availability of the content at each node.

인터레스트가 컨텐츠 중심 네트워크의 임의의 노드들에서 삭제(drop)된 경우, 요청하는 노드에서의 컨텐츠 복구 시간은 길어질 수 있다. 그러므로, 요청자 노드(requester node)에서 인터레스트에 대응하는 컨텐츠를 가지는 각 노드에 대하여 인터레스트의 신뢰성 있는 전송을 보장하는 것이 중요하다. 컨텐츠 중심 네트워크의 중간 노드들 중 임의의 중간 노드에서의 인터레스트의 삭제는 요청자 노드에서의 처리율에 영향을 미칠 수 있다.
If the interrest is dropped at any of the nodes in the content-centric network, the content recovery time at the requesting node may be long. Therefore, it is important to ensure reliable transmission of the inter- est for each node having content corresponding to the inter- est at the requester node. Deletion of an interlace at any intermediate node among the intermediate nodes of the content-oriented network may affect the throughput at the requestor node.

도 1은 일 실시예에 따른 컨텐츠 중심 네트워크(CCN)의 구조를 나타낸 도면이다.FIG. 1 is a diagram illustrating a structure of a content center network (CCN) according to an exemplary embodiment of the present invention.

도 1에 도시된 바와 같이, 컨텐츠 중심 네트워크(CCN)(100)는 초기 노드(initial node)(110), 및 복수의 노드들(120,130)을 포함한다. 초기 노드(110)는 'CCN 클라이언트'라고도 불릴 수 있다.As shown in FIG. 1, a content-centric network (CCN) 100 includes aninitial node 110, and a plurality ofnodes 120 and 130. Theinitial node 110 may also be referred to as a " CCN client ".

일 실시예에서 '노드'는 컨텐츠 중심 네트워크에서 인터레스트 패킷을 전송하고, 컨텐츠를 수신할 수 있는 모바일 디바이스 및 액세스 포인트 등을 포함하는 모든 통신 장치를 의미하는 것으로서 본 명세서에서 기재하고 있는 초기 노드, CCN 클라이언트, 인터레스트 소유자, 중간 노드 등을 모두 포함하는 의미로 이해될 수 있다.In one embodiment, a 'node' refers to all communication devices, including mobile devices and access points, that are capable of transmitting and receiving content in a content-centric network and receiving content, such as an initial node, A CCN client, an owner of an interface, an intermediate node, and the like.

초기 노드(110)는 인접 노드(예를 들어, 노드(102))에게 컨텐츠를 요청하는 인터레스트(Interest)를 전송한다. '인터레스트'는 컨텐츠를 요청하는 패킷으로 이해될 수 있다.The initiatingnode 110 sends an interest requesting content to a neighboring node (e.g., node 102). 'Interrest' can be understood as a packet requesting content.

인터레스트는 예를 들어, 요청들의 수 및 요청 시작 세그먼트 번호(request start segment number) 등과 같이 포함 가능한 파라미터들을 포함할 수 있지만, 반드시 이에 한정되지는 않는다.The interrest can include, but is not necessarily limited to, include parameters, such as, for example, the number of requests and the request start segment number.

초기 노드(110)로부터 수신한 인터레스트에 응답하여, 제2 노드(120)는 초기 노드(110)에게 ACK 메시지(Acknowledgement message)를 전송한다. 또한, 인터레스트는 제2 노드(120)로부터 제3 노드(130)에게 전송될 수 있다.Thesecond node 120 transmits an acknowledgment message to theinitial node 110 in response to the received inter-play message from theinitial node 110. In addition, the interlace may be transmitted from thesecond node 120 to thethird node 130. [

인터레스트는 인접 노드들에게 전송되기 전에 변경될 수 있다. 도 1의 실시예에서 초기 노드(110)의 인접 노드들은 제2 노드(120) 및 제3 노드(130)이다. 이때 각 노드에게 전송되는 인터레스트에 포함된 파라미터들은 인터레스트의 적어도 하나의 요청과 관련된 컨텐츠의 이용 가능성(availability)에 기초하여 변경될 수 있다.The interrest may be changed before being transmitted to neighboring nodes. In the embodiment of FIG. 1, the neighbor nodes of theinitial node 110 are thesecond node 120 and thethird node 130. The parameters included in the inter- est sent to each node at this time may be changed based on the availability of the content associated with the at least one request of the inter- est.

실시예에서, 초기 노드(110)는 인터레스트를 생성하고, 생성된 인터레스트를 제2 노드(120)에게 전송할 수 있다. 컨텐츠 중심 네트워크에서 제2 노드(120)가 인터레스트를 수신하는 경우, 제2 노드(120)는 인터레스트를 처리하기 전에 즉시 ACK 메시지를 전송할 수 있다. 이와 유사하게, 제3 노드(130)가 초기 노드(110) 또는 제2 노드(120)로부터 인터레스트를 수신하는 경우, 제3 노드(130)은 인터레스트에 응답하여 즉시 초기 노드(110) 또는 제2 노드(120)에게 ACK 메시지를 전송할 수 있다.In an embodiment, the initiatingnode 110 may generate an interpreter and send the generated interpreter to thesecond node 120. In a content-centric network, when thesecond node 120 receives an interlace, thesecond node 120 may immediately transmit an ACK message before processing the interlace. Similarly, when thethird node 130 receives an inter- view from either theinitial node 110 or thesecond node 120, thethird node 130 immediately responds to the inter- And may transmit an ACK message to thesecond node 120.

이하의 상세한 설명에서 사용되는 용어 '인터레스트 소유자'는 컨텐츠 중심 네트워크에서 인접 노드에게 인터레스트를 전송하는 노드를 의미한다. 따라서, 컨텐츠 중심 네트워크에서 인터레스트를 전송하는 각 노드는 아래에서 기술하는 설명의 맥락에서 인터레스트 소유자로 이해될 수 있다.As used in the following detailed description, the term " inter-owner " refers to a node that transmits an inter- est to a neighboring node in a content-centric network. Thus, each node transmitting an interrest in a content-centric network can be understood as an inter-owner in the context of the description described below.

일 실시예에서 인터레스트 소유자를 포함하는 각 노드는 컨텐츠 중심 네트워크에서 인터레스트의 신뢰성 있는 전송을 보장하기 위한 ACK 타이머(Acknowledgement timer)를 유지할 수 있다. 인터레스트 소유자는 다른 노드(들)에게 인터레스트를 전송한 후에 ACK 타이머를 초기화할 수 있다.In one embodiment, each node, including the owner of the interrest, may maintain an ACK timer to ensure reliable transmission of the inter- view in the content-centric network. The owner of the interrest can initialize the ACK timer after transmitting the inter- est to the other node (s).

인터레스트 소유자는 인터레스트에 응답하여, 인터레스트를 수신한 노드로부터 ACK 메시지를 수신할 수 있다. ACK 메시지가 수신되면, 인터레스트 소유자에서의 ACK 타이머는 정지할 수 있다. ACK 타이머의 만료 시까지 인터레스트를 전송한 노드로부터 ACK 메시지가 수신되지 않으면, 인터레스트 소유자는 노드에게 인터레스트를 재전송할 수 있다.The interrest owner may, in response to the interrest, receive an ACK message from the node that received the interrest. When an ACK message is received, the ACK timer at the owner of the intercept can be stopped. If the ACK message is not received from the node that transmitted the inter- est until the expiration of the ACK timer, the inter- view owner can retransmit the inter- view to the node.

일 실시예에서 인터레스트 소유자는 인터레스트를 생성하고, 생성된 인터레스트를 다음 노드에게 전송할 수 있다. 컨텐츠 중심 네트워크에서 노드가 인터레스트를 수신하는 경우, 노드는 인터레스트를 처리하기 전에 즉시 ACK 메시지를 전송할 수 있다. 이와 마찬가지로, 인접 노드가 인터레스트를 수신하는 경우, 인접 노드 또한 즉시 ACK 메시지를 전송할 수 있다. 일 실시예에서는 이처럼 컨텐츠 중심 네트워크에 포함된 각 노드가 전송된 모든 인터레스트에 대하여 ACK 메시지를 제공하는 ACK 메커니즘을 수행함으로써 인터레스트의 신뢰성 있는 전달을 보장할 수 있다.In one embodiment, the interrest owner can create an interrest and send the generated interrest to the next node. In a content-centric network, when a node receives an inter- est, the node may send an ACK message immediately before processing the inter- est. Likewise, if the neighboring node receives an interlace, the neighboring node may also immediately transmit an ACK message. In one embodiment, each node included in the content-centric network can ensure reliable delivery of the interleaves by performing an ACK mechanism for providing an ACK message to all the transmitted inter-nodes.

일 실시예에 따른 ACK 메커니즘은 인터레스트들이 삭제(drop)되지 않은 경우에는 일반적인 ACK 메커니즘과 유사하게 수행될 수 있다. 인터레스트들이 삭제된다면, 일 실시예에 따른 ACK 메커니즘은 일반적인 ACK 메커니즘과 비교할 때에 처리량을 크게 향상시킬 수 있다.The ACK mechanism according to an exemplary embodiment may be performed in a manner similar to a general ACK mechanism when the interleaves are not dropped. If the interrests are deleted, the ACK mechanism according to an embodiment can greatly improve the throughput when compared with a general ACK mechanism.

일 실시예에 따른 ACK 메커니즘은 TCP(Transport Control Protocol)의 요청 ACK 메커니즘과 비교할 때 다음과 같은 차이점을 가질 수 있다.The ACK mechanism according to an exemplary embodiment may have the following differences when compared with the request ACK mechanism of the TCP (Transport Control Protocol).

TCP에서 ACK 메커니즘은 컨텐츠 수신을 승인하고, 또한 새로운 컨텐츠를 요청한다. 일 실시예에 따른 ACK 메커니즘은 컨텐츠 중심 네트워크에서 다음 노드로의 인터레스트의 전송을 보장하고, 컨텐츠와 어떠한 관련성도 가지지 않는다.In TCP, the ACK mechanism acknowledges the receipt of content and also requests new content. The ACK mechanism according to an exemplary embodiment guarantees the transmission of an interrest from a content-centered network to a next node, and has no relation to contents.

TCP에서 ACK 시퀀스 넘버는 요청된 다음 세그먼트 번호를 (바이트의 형태로) 식별하는 데에 이용된다. 일 실시예에 따른 ACK 메커니즘에서, 시퀀스 넘버는 두 개의 유사한 인터레스트들을 구별하기 위해 사용된다.In TCP, an ACK sequence number is used to identify the next requested segment number (in the form of bytes). In the ACK mechanism according to an embodiment, the sequence number is used to distinguish between two similar interlaces.

또한, TCP는 오직 하나의 시퀀스를 사용하는 반면에 일 실시예에 따른 ACK 메커니즘은 그 동작을 위해 IN 및 OUT 시퀀스 넘버를 요구한다. 또한, TCP에서는 PIT(Propagation Interest Table)의 개념이 없고, TCP에는 PIT 타이머가 존재하지 않는다.
Also, while TCP uses only one sequence, the ACK mechanism according to one embodiment requires IN and OUT sequence numbers for its operation. In TCP, there is no concept of PIT (Propagation Interest Table), and there is no PIT timer in TCP.

도 2는 일 실시예에 따른 컨텐츠 중심 네트워크에서 노드의 블록 다이어그램이다.2 is a block diagram of a node in a content-centric network according to one embodiment.

도 2에 도시된 바와 같이, 컨텐츠 중심 네트워크의 노드(200)는 노드(200) 내에서 존재하는 복수의 응용 프로그램들(예를 들어, 응용 프로그램 1 내지 응용 프로그램 n)이 존재하는 응용 계층(application layer)(201)을 포함할 수 있다. 여기서, 노드(200)는 도 1에 도시된 초기 노드(110)일 수도 있고, 제2 노드(120) 또는 제3 노드(103)일 수 있다. 일 실시예에서, 응용 프로그램은 노드(200)에 설치된 브라우저(browser)일 수도 있다.2, thenode 200 of the content-centric network includes a plurality of application programs (for example,application programs 1 to n) existing in thenode 200layer 201 as shown in FIG. Here, thenode 200 may be theinitial node 110 shown in FIG. 1, or may be thesecond node 120 or the third node 103. In one embodiment, the application program may be a browser installed in thenode 200.

컨텐츠 중심 네트워크에서 노드(200)는 예를 들어, 센서들(Sensors), 네트워크 코어(Network Core), 미디어 프레임워크(Media Framework), CCN 라이브러리(CCN library) 등을 포함하는 라이브러리들(libraries)(203)을 포함하지만, 이에 한정되지 않는다.In the content-centric network, thenode 200 may include libraries (e.g., sensors), a network core, a media framework, a CCN library, etc. 203, but is not limited thereto.

또한, 노드(200)는 CCN 엔진(210)을 포함할 수 있다.In addition, thenode 200 may include aCCN engine 210.

CCN 엔진(210)은 컨텐츠 스토어(CS)(211), 전파 인터레스트 테이블(PIT)(213) 및 ACK 타이머(217)를 포함할 수 있다.TheCCN engine 210 may include a content store (CS) 211, a radio wave interference table (PIT) 213, and anACK timer 217.

노드(200)는 컨텐츠에 대응하는 적어도 하나의 요청을 인터레스트와 함께 전송할 수 있다.Node 200 may send at least one request corresponding to the content along with the interlace.

전송된 인터레스트는 적절한 이름 기반의 라우팅 기술을 적용함으로써 컨텐츠 소스를 향해 전파될 수 있다.The transmitted interrest can be propagated towards the content source by applying appropriate name-based routing techniques.

인터레스트를 수신한 각 중간 노드는 자신의 컨텐츠 스토어(컨텐츠 캐시라고도 함)(211)에 있는 컨텐츠를 체크할 수 있다. 컨텐츠 스토어(211)에서 요청된 컨텐츠가 발견되면, 노드(200)는 컨텐츠로 응답하고, 발견되지 않은 경우에는 인터레스트를 다음 노드 또는 인접 노드에게 포워딩할 수 있다.Each intermediate node that has received the interrest can check the content in its content store (also referred to as a content cache) When the requested content is found in thecontent store 211, thenode 200 responds with the content. If not, thenode 200 can forward the inter- est to the next node or the neighboring node.

포워딩하기 전에, 노드(200)는 전파 인터레스트 테이블(PIT)(213)로 알려진 인터레스트 테이블에 인터레스트 정보를 저장할 수 있다.Prior to forwarding, thenode 200 may store theinterest information in aninterest table known as a propagationinterest table (PIT)

전파 인터레스트 테이블(PIT)(213)은 PIT 타이머(215)를 포함할 수 있다. PIT 타이머(215)는 노드에 컨텐츠가 도착하면 카운트를 시작할 수 있다.The propagation interference table (PIT) 213 may include aPIT timer 215. ThePIT timer 215 may start counting when content arrives at the node.

일 실시예에서, 전파 인터레스트 테이블(PIT)(213)의 엔트리(entry)는 PIT 타이머(215)의 만료 시에 전파 인터레스트 테이블(PIT)(213)로부터 제거될 수 있다.In one embodiment, an entry in the propagation interference table (PIT) 213 may be removed from the propagation interference table (PIT) 213 upon expiration of thePIT timer 215.

또한, CCN 엔진(210)은 전송 계층(transport layer)(205)을 통해 네트워크 계층(network layer)(207)으로 인터레스트를 전송할 수 있다. 전송 계층(205)은 예를 들어, UDP(User Datagram Protocol) 또는 TCP(Transport Control Protocol)을 사용할 수 있다. 네트워크 계층(207)은 IP(Internet Protocol)를 이용할 수 있다.
In addition, theCCN engine 210 may transmit the interleaves to anetwork layer 207 via atransport layer 205. Thetransport layer 205 may use, for example, UDP (User Datagram Protocol) or TCP (Transport Control Protocol). Thenetwork layer 207 may use an IP (Internet Protocol).

도 3은 일 실시예에 따른 노드의 통신 방법을 나타낸 흐름도이다.3 is a flowchart illustrating a method of communicating a node according to an embodiment.

도 3을 참조하면, 일 실시예에 따른 노드는 컨텐츠 중심 네트워크에서 이전 노드(previous node)로부터 컨텐츠를 요청하는 제1 인터레스트를 수신한다(310).Referring to FIG. 3, a node receives a first interlace requesting content from a previous node in a content-centric network (310).

제1 인터레스트는 제1 인터레스트를 식별할 수 있는 고유의 시퀀스 넘버와 관련될 수 있다. 고유의 시퀀스 넘버는 IN 시퀀스 넘버(IN Sequence Number; ISN) 및 OUT 시퀀스 넘버(OUT Sequence Number; OSN)를 포함할 수 있다.The first interlace may be associated with a unique sequence number that can identify the first interlace. The unique sequence number may include an IN Sequence Number (ISN) and an OUT Sequence Number (OSN).

노드는 제1 인터레스트가 수신되면, 노드의 PIT에 IN 시퀀스 넘버를 저장할 수 있다.The node may store the IN sequence number in the PIT of the node when the first interlace is received.

노드는 제1 인터레스트에 응답하여, 제1 인터레스트의 수신을 나타내는 제1 ACK 메시지(ACKnowledgement message)를 생성한다(320). 노드는 제1 인터레스트와 관련된 고유의 시퀀스 넘버에 기초하여 제1 ACK 메시지를 생성할 수 있다.In response to the first interlace, the node generates a first acknowledgment message (ACKnowledgment message) indicating receipt of the first interlace (320). The node may generate a first ACK message based on a unique sequence number associated with the first interlace.

노드는 이전 노드에게 제1 ACK 메시지를 전송한다(330). 노드는 제1 인터레스트를 처리하기 전에 제1 ACK 메시지를 먼저 전송할 수 있다. 제1 ACK 메시지는 제1 인터레스트의 고유 식별자(unique identifier)에 해당하는 시퀀스 넘버와 관련될 수 있다. 제1 인터레스트의 시퀀스 넘버는 제1 ACK 메시지가 제1 인터레스트에 대응됨을 나타내기 위해 제1 ACK 메시지에서도 동일한 값으로 일치될 수 있다.
The node sends a first ACK message to the previous node (330). The node may first transmit the first ACK message before processing the first interlace. The first ACK message may be associated with a sequence number corresponding to a unique identifier of the first interlace. The sequence number of the first interlace may be matched with the same value in the first ACK message to indicate that the first ACK message corresponds to the first interlace.

도 4는 다른 실시예에 따른 노드의 통신 방법을 나타낸 흐름도이다.4 is a flowchart illustrating a method of communicating a node according to another embodiment.

도 4를 참조하면, 일 실시예에 따른 노드는 컨텐츠 중심 네트워크에서 이전 노드로부터 컨텐츠를 요청하는 제1 인터레스트를 수신한다(405).Referring to FIG. 4, a node receives a first interlace requesting content from a previous node in a content-centric network (405).

노드는 제1 인터레스트에 응답하여, 제1 인터레스트의 수신을 나타내는 제1 ACK 메시지를 생성한다(410).The node, in response to the first interlace, generates a first ACK message indicating receipt of the first interlace (410).

노드는 이전 노드에게 제1 ACK 메시지를 전송한다(415).The node sends a first ACK message to the previous node (415).

노드는 PIT에 제1 인터레스트와 관련된 PIT 엔트리를 생성할 수 있다(420).The node may generate a PIT entry associated with the first interlace in the PIT (420).

노드는 PIT 엔트리에 제1 인터레스트와 관련된 시퀀스 넘버를 저장한다(425).The node stores the sequence number associated with the first interlace in the PIT entry (425).

노드는 제1 인터레스트와 관련된 컨텐츠가 노드의 컨텐츠 스토어에 존재하는지 여부를 판단할 수 있다(430).The node may determine whether the content associated with the first inter- est is present in the node's content store (430).

단계(430)의 판단 결과, 제1 인터레스트와 관련된 컨텐츠가 노드의 컨텐츠 스토어에 존재하는 경우, 노드는 컨텐츠를 이전 노드에게 전송할 수 있다(460).If it is determined instep 430 that the content related to the first interlace exists in the content store of the node, the node may transmit the content to the previous node (460).

단계(430)의 판단 결과, 제1 인터레스트와 관련된 컨텐츠가 노드의 컨텐츠 스토어에 존재하는지 않는 경우, 노드는 제2 인터레스트를 생성할 수 있다(435). 이때, 제2 인터레스트는 제1 인터레스트가 요청하는 것과 동일한 컨텐츠를 요청하는 것일 수 있다. 제1 인터레스트에 포함된 일부 파라미터들의 값은 노드에 의해 변경되어 제2 인터레스트에 반영될 수 있다. 제2 인터레스트는 파라미터들을 포함하고, 파라미터들은 노드에서 제2 인터레스트에 대응하는 컨텐츠의 이용 가능성에 기초하여 변경될 수 있다.As a result of the determination instep 430, if the content related to the first interlace does not exist in the contents store of the node, the node may generate the second interlace (step 435). At this time, the second interlace may be requesting the same content as that requested by the first interlace. The values of some parameters included in the first interlace may be changed by the node and reflected in the second interlace. The second interlace includes parameters, and the parameters can be changed based on the availability of the content corresponding to the second interlace at the node.

제2 인터레스트는 제2 인터레스트를 식별할 수 있는 고유의 시퀀스 넘버와 관련되고, 고유의 시퀀스 넘버는 IN 시퀀스 넘버 및 OUT 시퀀스 넘버를 포함할 수 있다. 노드는 넌스(Nonce)를 가지는 제2 인터레스트를 생성할 수 있다.The second interlace may be associated with a unique sequence number that can identify the second interlace, and the unique sequence number may include an IN sequence number and an OUT sequence number. The node can generate a second interlace having a nonce.

노드는 단계(435)에서 생성한 제2 인터레스트를 다음 노드에게 전송할 수 있다(440). 노드는 제2 인터레스트를 다음 노드에게 전송할 때, 노드의 PIT에 OUT 시퀀스 넘버를 저장할 수 있다.The node may send the second interrece generated instep 435 to the next node (440). When the node transmits the second interlace to the next node, it can store the OUT sequence number in the PIT of the node.

노드는 다음 노드에게 제2 인터레스트를 전송함에 따라, ACK 타이머를 시작할 수 있다(445). 노드는 예를 들어, 제2 인터레스트의 전송과 동시에 ACK 타이머를 시작할 수 있다. ACK 타이머는 제2 인터레스트의 신뢰성 있는 전송을 보장하기 위한 것이다.The node may initiate an ACK timer (445) as it transmits the secondinterest to the next node. The node may initiate an ACK timer, for example, concurrently with the transmission of the second interlace. The ACK timer is for ensuring reliable transmission of the second inter- est.

노드는 ACK 타이머의 만료 시까지 제2 ACK 메시지가 수신되었는지를 판단할 수 있다(450). 제2 ACK 메시지는 제2 인터레스트에 응답한 것일 수 있다.The node may determine whether a second ACK message has been received until the expiration of the ACK timer (450). The second ACK message may be in response to the second interlace.

단계(450)의 판단 결과, ACK 타이머의 만료 시까지 제2 ACK 메시지가 수신된 경우, 노드는 단계(445)에서 시작한 ACK 타이머를 정지할 수 있다(455).As a result of the determination instep 450, if a second ACK message is received until the expiration of the ACK timer, the node can stop the ACK timer started in step 445 (455).

단계(450)의 판단 결과, ACK 타이머의 만료 시까지 제2 ACK 메시지가 수신되지 않는 경우, 노드는 다음 노드에게 제2 인터레스트를 재전송할 수 있다(465). 단계(465)에서 제2 인터레스트의 재전송 시에, 노드는 ACK 타이머를 일정한 백 오프 타임 아웃 값(back-off timeout value)으로 다시 시작할 수 있다.
If it is determined instep 450 that the second ACK message is not received until the expiration of the ACK timer, the node may retransmit the second interlace to the next node (465). Atstep 465, upon retransmission of the second interlace, the node may resume the ACK timer with a constant back-off timeout value.

도 5는 다른 실시예에 따른 노드의 통신 방법을 나타낸 흐름도이다.5 is a flowchart illustrating a method of communicating a node according to another embodiment.

도 5를 참조하면, 일 실시예에 따른 노드는 컨텐츠 중심 네트워크에서 이전 노드로부터 컨텐츠를 요청하는 제1 인터레스트를 수신한다(510).Referring to FIG. 5, a node receives a first interlace requesting content from a previous node in a content-centric network (510).

노드는 제1 인터레스트에 응답하여, 제1 인터레스트의 수신을 나타내는 제1 ACK 메시지를 생성한다(515).The node, in response to the first interlace, generates a first ACK message indicating receipt of the first interlace (515).

노드는 이전 노드에게 제1 ACK 메시지를 전송한다(520).The node transmits a first ACK message to the previous node (520).

노드는 제1 인터레스트와 관련된 컨텐츠가 노드의 컨텐츠 스토어에 존재하는지 여부를 판단할 수 있다(525).The node may determine whether content associated with the first inter- est is present in the content store of the node (525).

단계(525)의 판단 결과, 제1 인터레스트와 관련된 컨텐츠가 노드의 컨텐츠 스토어에 존재하는 경우, 노드는 이전 노드에게 컨텐츠를 전송할 수 있다(545).If it is determined instep 525 that the content related to the first inter- est exists in the content store of the node, the node may transmit the content to the previous node (545).

단계(525)의 판단 결과, 제1 인터레스트와 관련된 컨텐츠가 노드의 컨텐츠 스토어에 존재하지 않는 경우, 노드는 제2 인터레스트를 생성할 수 있다(530).If it is determined instep 525 that the content related to the first interlace is not present in the contents store of the node, the node may generate the second interlace (530).

노드는 다음 노드에게 제2 인터레스트를 전송할 수 있다(535).The node may send a second interlace to the next node (535).

노드는 다음 노드로부터 컨텐츠를 수신할 수 있다(540). 이때, 컨텐츠는 제2 인터레스트에 대응되는 것일 수 있다. 여기서, '대응된다'는 의미는 제2 인터레스트를 통해 요청한 컨텐츠에 해당한다는 것으로 이해될 수 있다.The node may receive the content from the next node (540). At this time, the content may correspond to the second interlace. Here, it can be understood that the meaning of 'corresponded' corresponds to the content requested through the secondinterest.

노드는 제1 인터레스트를 통해 해당 컨텐츠의 전송을 요청한 이전 노드에게 단계(540)에서 수신한 컨텐츠를 전송할 수 있다(545).The node may transmit the content received instep 540 to a previous node requesting transmission of the corresponding content through the first interlace (545).

노드는 PIT 엔트리를 STALE 플래그에 의해 표시(mark)할 수 있다(550). 이때, PIT 엔트리는 단계(545)에서 전송한 컨텐츠에 대응되는 것일 수 있다. STALE 플래그는 인터레스트에 의해 응답하여 수신한 컨텐츠에 해당하는 PIT 엔트리를 나타내는 것이다. STALE 플래그에 의해 표시된 PIT 엔트리는 일정 시간 후에 PIT에서 제거될 수 있다.The node may mark the PIT entry with the STALE flag (550). At this time, the PIT entry may correspond to the content transmitted instep 545. The STALE flag indicates a PIT entry corresponding to the content received in response to the interlace. The PIT entry indicated by the STALE flag may be removed from the PIT after a certain time.

노드는 PIT 엔트리에 대응하는 PIT 타이머(PIT timer)를 시작할 수 있다(555).The node may start a PIT timer (PIT timer) corresponding to the PIT entry (555).

노드는 단계(555)에서 시작한 PIT 타이머가 만료되는 경우, 노드의 PIT에서 PIT 엔트리를 제거할 수 있다(560).The node may remove the PIT entry from the node's PIT if the PIT timer started instep 555 expires (560).

예를 들어, 인터레스트가 정상적으로 노드에 도달하였으나, 노드가 인터레스트에 응답하여 전송한 ACK 메시지가 네트워크 정체 등으로 인해 삭제된 경우, ACK 메시지를 수신하지 못한 상대편 노드는 인터레스트를 재전송할 수 있다. 이러한 경우, 일반적으로 노드는 이전에 도달한 인터레스트가 요청하는 컨텐츠를 전송하고, 전송한 컨텐츠에 해당하는 PIT 엔트리를 자신의 PIT에서 즉시 삭제할 수 있다.For example, if an ACK message transmitted by a node in response to an interlace is successfully removed from the node due to a network congestion or the like, the opposite node that has not received the ACK message can retransmit the interlace . In this case, in general, the node can transmit the content requested by the previously arrivinginterest, and can immediately delete the PIT entry corresponding to the transmitted content from its PIT.

이때, 노드에는 상대편 노드가 재전송한 인터레스트에 대한 ACK 메시지 및 재전송 인터레스트와 관련된 컨텐츠가 다른 노드로부터 수신될 수 있다. 하지만, 컨텐츠에 일치하는 PIT 엔트리는 이미 노드의 PIT로부터 제거되었으므로, 노드는 PIT에서 일치하는 PIT 엔트리를 발견할 수 없어 전송된 컨텐츠를 삭제할 수 있다.At this time, the node can receive the contents related to the ACK message and the retransmission request for the interlace transmitted by the remote node from another node. However, since the PIT entry corresponding to the content has already been removed from the PIT of the node, the node can not find the matching PIT entry in the PIT and can delete the transmitted content.

이러한 상황을 회피하기 위해, 일 실시예에서는 컨텐츠 중심 네트워크의 노드들 각각에서 PIT 타이머를 유지할 수 있다. 노드는 컨텐츠의 수신 시에 PIT에서 즉시 PIT 엔트리를 삭제하는 대신에 PIT 타이머의 카운트를 시작하고, PIT 타이머가 만료됨에 따라 PIT에 대응하는 PIT 엔트리를 제거할 수 있다. 이를 통해 일 실시예에서는 불필요한 중복 컨텐츠의 재전송에 의한 노드들 간의 링크 낭비를 줄일 수 있다.
To avoid this situation, in one embodiment, a PIT timer may be maintained at each of the nodes of the content-centric network. The node may start counting the PIT timer instead of immediately deleting the PIT entry in the PIT upon receipt of the content and may remove the PIT entry corresponding to the PIT as the PIT timer expires. Thus, in one embodiment, it is possible to reduce the waste of links between nodes due to retransmission of unnecessary duplicate contents.

도 6은 일 실시예에 따른 컨텐츠 중심 네트워크에서 인터레스트의 전송을 보장하기 위해 각 노드에서 ACK 타이머와 PIT 타이머가 유지되는 과정을 나타낸 도면이다.6 is a diagram illustrating a process of maintaining an ACK timer and a PIT timer in each node in order to guarantee the transmission of an interlace in a content-centered network according to an exemplary embodiment of the present invention.

일 실시예에서는 컨텐츠 중심 네트워크의 각 노드들이 인터레스트를 수신함에 응답하여 ACK 메시지를 제공하도록 함으로써 인터레스트들의 신뢰성 있는 전송을 보장한다. 일 실시예에서, ACK 메시지(또는 ACK 패킷)은 타입 필드(type field)가 'CCN_ACK'로 설정된 CCN 컨텐츠의 일 유형일 수 있다. ACK 메시지에 대한 정보(즉, 페이로드(payload))의 존재는 선택적일 수 있다.In one embodiment, each node of the content-centric network provides an ACK message in response to receiving the interrest, thereby ensuring reliable transmission of the interrests. In one embodiment, the ACK message (or ACK packet) may be a type of CCN content whose type field is set to 'CCN_ACK'. The presence of information on the ACK message (i.e., payload) may be optional.

도 6에 도시된 바와 같이, CCN 클라이언트(601)는 넌스를 가지는 인터레스트를 생성할 수 있다(610). 일반적으로, 넌스는 인터레스트가 다시 수신되지 않음을 보장하기 위해, CCN 클라이언트(601)에서 생성될 수 있다.As shown in FIG. 6, theCCN client 601 may generate an uninteresting interlace (610). Generally, the nonce may be generated in theCCN client 601 to ensure that the inter- est is not received again.

CCN 클라이언트(601)은 CCN 클라이언트(601)과 관련된 PIT의 엔트리를 생성한다(615). 일 실시예에서, CCN 클라이언트(601)에서 생성된 인터레스트는 OUT 시퀀스 넘버(OSN)와 연관될 수 있다. 이때, OUT 시퀀스 넘버는 노드로부터 나가는(outgoing) 인터레스트의 시퀀스 넘버를 나타낸다. OUT 시퀀스 넘버는 예를 들어, 9와 같이 무작위로 생성된 번호일 수 있다. OUT 시퀀스 넘버는 임의로 생성되거나, 또는 노드에서 실행되는 일정 논리에 기초하여 생성될 수 있다.TheCCN client 601 creates an entry of the PIT associated with the CCN client 601 (615). In one embodiment, the generated inter- ests in theCCN client 601 may be associated with an OUT sequence number (OSN). At this time, the OUT sequence number indicates the sequence number of the outgoing outgoing node. The OUT sequence number may be a randomly generated number, for example, 9. The OUT sequence number may be randomly generated, or may be generated based on certain logic executed at the node.

도 6에서, CCN 클라이언트(601)가 전송하는 인터레스트의 OUT 시퀀스 넘버는 9이고, 이 값은 컨텐츠 중심 네트워크의 각 노드에서 컨텐츠의 이용 가능성에 기초하여 각 노드에 의해 변경될 수 있다.In FIG. 6, the OUT sequence number of the inter- est that theCCN client 601 transmits is 9, which can be changed by each node based on the availability of content at each node of the content-centric network.

CCN 클라이언트(601)은 노드(603)에게 인터레스트를 전송할 수 있다(620).TheCCN client 601 may send an interlace to the node 603 (620).

또한, CCN 클라이언트(601)은 도 3에 도시된 바와 같이 노드(603)에게 인터레스트를 전송한 후에 자신(CCN 클라이언트(601))의 ACK 타이머를 시작할 수 있다.In addition, theCCN client 601 may initiate an ACK timer for itself (CCN client 601) after sending an interlace to thenode 603 as shown in FIG.

인터레스트를 수신한 경우, 노드(603)는 수신한 인터레스트를 처리하기 전에 즉시 ACK 메시지를 전송할 수 있다(625). CCN 클라이언트(601)의 ACK 타이머는 노드(603)로부터 ACK 메시지를 수신하면 정지될 수 있다.If an interlace is received, thenode 603 may immediately send anACK message 625 before processing the received interlace. The ACK timer of theCCN client 601 may be stopped upon receiving the ACK message from thenode 603. [

이와 유사하게, 노드(605)가 인터레스트를 수신한 경우, 노드(605)은 즉시 ACK 메시지를 전송할 수 있다. 일 실시예에서, 인터레스트는 CCN 클라이언트(601)로부터 노드(605)까지 전송되는 인터레스트를 고유하게 식별할 수 있는 고유의 시퀀스 넘버와 연관될 수 있다. 시퀀스 넘버는 인터레스트 경로를 따라 위치하는 모든 노드 페어들에 대해 고유하다.Similarly, if thenode 605 has received an interlace, thenode 605 can immediately send an ACK message. In one embodiment, the interrest may be associated with a unique sequence number that can uniquely identify the inter- est transmitted from theCCN client 601 to thenode 605. [ The sequence number is unique for all node pairs located along the interlace path.

일 실시예에서, 노드(603)로부터 ACK 메시지를 수신한 경우, CCN 클라이언트(601)는 OUT 시퀀스 넘버(OSN)에 매칭하기 위해 자신(CCN 클라이언트(601))의 PIT를 검색할 수 있다. 이때, CCN 클라이언트(601)는 노드(603)가 클라이언트(601)로부터 전송된 인터레스트의 수신을 확인하기 전에 자신(CCN 클라이언트(601)의 PIT를 검색할 수 있다.In one embodiment, upon receiving an ACK message from anode 603, theCCN client 601 may retrieve the PIT of itself (the CCN client 601) to match the OUT Sequence Number (OSN). At this time, theCCN client 601 can search for the PIT of theCCN client 601 before thenode 603 confirms reception of the transmitted request from theclient 601. [

인터레스트가 노드(603)에 수신되면, 노드(603)는 인터레스트와 관련된 IN 시퀀스 넘버(ISN) 9가 노드(603)의 PIT에 저장되도록 PIT의 엔트리를 생성할 수 있다(630). IN 시퀀스 넘버는 예를 들어, 9와 같이, 임의로 생성되거나 노드에서 실행되는 일정 논리에 기초하여 생성될 수 있다.When an interlace is received atnode 603,node 603 may generate 630 an entry in the PIT such that the IN Sequence Number (ISN) 9 associated with the interlace is stored in the PIT ofnode 603. The IN sequence number may be generated based on certain logic that is randomly generated or executed at the node, e.g., 9.

또한, 노드(603)는 CCN 클라이언트(601)로부터 수신한 인터레스트를 처리한 후에 노드(605)에게 인터레스트를 전송할 수 있다(635). 인터레스트를 처리하는 방법에 따르면, 노드(603)는 자신의 컨텐츠 스토어에서 CCN 클라이언트(601)로부터 수신한 인터레스트와 관련된 이용 가능한 컨텐츠의 존재 여부를 체크할 수 있다. 인터레스트와 관련된 컨텐츠가 컨텐츠 스토어에 존재하는 경우, 노드(603)는 인터레스트와 관련된 컨텐츠를 CCN 클라이언트(601)에게 전송할 수 있다. 이때, 인터레스트의 시퀀스 넘버는 인터레스트를 노드(605)에게 전송하기 전에 OUT 시퀀스 넘버(OSN) 17로서 노드(603)의 PIT에 저장될 수 있다.Also, thenode 603 may process the intercept received from theCCN client 601 and then transmit the interlace to the node 605 (635). According to the method of processing the interrest, thenode 603 can check whether there is available content related to the received inter- est from theCCN client 601 in its content store. If the content related to the inter- est exists in the content store, thenode 603 may transmit the content related to the inter- est to theCCN client 601. [ At this time, the sequence number of the interlace may be stored in the PIT of thenode 603 as an OUT sequence number (OSN) 17 before transmitting the interlace to thenode 605.

일 실시예에서, 노드(605)는 노드(603)가 전송한 인터레스트의 수신을 확인하는 ACK 메시지를 생성하고, 노드(603)에게 ACK 메시지를 전송할 수 있다(640). ACK 메시지는 인터레스트와 관련된 시퀀스 넘버에 기초하여 노드(605)에서 생성될 수 있다.In one embodiment, thenode 605 may generate an ACK message confirming receipt of the inter- est sent by thenode 603 and may send an ACK message to the node 603 (640). The ACK message may be generated at thenode 605 based on the sequence number associated with the interlace.

일 실시예에서, ACK 타이머는 각 노드가 인터레스트를 이웃 노드(노드(603) 또는 노드(605))에게 포워딩 할 때 시작될 수 있다. 또한, ACK 메시지는, 각 노드의 ACK 타이머가 만료되기 전에, 노드들 중 어느 하나의 노드에 수신될 수 있다. 노드의 ACK 타이머가 만료되기 전까지 ACK 메시지가 수신되지 않으면, 노드는 인터레스트를 재전송할 수 있다. 이때, 인터레스트를 재전송한 노드의 ACK 타이머는 일정한 백-오프 타임 아웃 값으로 인터레스트의 재전송 시에 다시 카운트를 시작할 수 있다.In one embodiment, an ACK timer may be initiated when each node forwards an interrest to a neighboring node (node 603 or node 605). The ACK message may also be received at any one of the nodes before the ACK timer of each node expires. If the ACK message is not received until the node's ACK timer expires, the node can retransmit the inter- est. At this time, the ACK timer of the node that retransmits the interlace can start counting again when the interlace is retransmitted with a constant back-off timeout value.

도 6에 도시된 바와 같이, CCN 클라이언트(601), 노드(603) 및 노드(605) 각각은 인터레스트를 다음 노드(인접 노드)로 포워딩함과 동시에 각자의 ACK 타이머의 카운트를 시작할 수 있다. 각 노드에서 ACK 메시지가 ACK 타이머의 만료 전에 수신된 경우, 각 노드는 인터레스트를 재전송하지 않는다.As shown in FIG. 6, each of theCCN client 601, thenode 603, and thenode 605 can forward the interrest to the next node (adjacent node) and start counting the respective ACK timers. If an ACK message is received at each node before the expiration of the ACK timer, then each node does not retransmit the inter- est.

노드(603)로부터 인터레스트를 수신한 후, 노드(605)은 자신의 PIT에 IN 시퀀스 넘버(ISN) 17로서 인터레스트의 엔트리를 생성하고, 인터레스트에 대한 처리를 시작할 수 있다(645).After receiving the interlace fromnode 603,node 605 may create an entry of the interlace as IN Sequence Number (ISN) 17 in its PIT and begin processing for the interlace (645).

인터레스트를 처리한 후에, 노드(605)는 인터레스트의 OUT 시퀀스 넘버(OSN)를 13으로 변경하여 CCN 서버(607)에게 전송할 수 있다(650).After processing the interlace, thenode 605 may change the OUT Sequence Number (OSN) of the interlace to 13 and forward it to the CCN server 607 (650).

노드(605)로부터 인터레스트가 수신됨에 응답하여, CCN 서버(607)는 노드(605)에게 인터레스트의 수신을 확인하는 ACK 메시지를 전송할 수 있다(655). ACK 메시지는 노드(605)의 ACK 타이머가 만료되지 이전에 노드(605)에게 전송될 수 있다. ACK 메시지를 전송한 후에 CCN 서버(607)는 인터레스트에 대한 처리를 시작할 수 있다.In response to the receipt of the inter- view fromnode 605,CCN server 607 may send 655 an ACK message tonode 605 confirming receipt of the inter- est. The ACK message may be sent to thenode 605 before the ACK timer of thenode 605 expires. After transmitting the ACK message, theCCN server 607 can start the processing for the interrest.

CCN 서버(607)는 인터레스트를 처리한 후에, 노드(605)에게 (인터레스트에 일치하는) 컨텐츠를 전송할 수 있다(660). 일 실시예에서, 노드(605)가 CCN 서버(607)로부터 컨텐츠를 수신한 경우, 노드(605)는 STALE 플래그에 의해 해당 PIT 엔트리를 표시할 수 있다. 노드(605)은 PIT 타이머를 초기화할 수 있다. 인터레스트와 일치하는 컨텐츠를 수신함에 따른 노드의 PIT 타이머 초기화를 위한 요구 사항을 도 7의 실시예를 통해 설명한다.After theCCN server 607 processes the interleaves, it can send the content (matching the inter- est) to the node 605 (660). In one embodiment, when thenode 605 receives content from theCCN server 607, thenode 605 may display the corresponding PIT entry by means of the STALE flag.Node 605 may initialize the PIT timer. The requirements for the initialization of the PIT timer of the node according to the receipt of the contents matching the interrest will be described with reference to the embodiment of FIG.

PIT 타이머가 만료된 경우, 노드(605)은 해당 PIT 엔트리를 자신의 PIT에서 제거할 수 있다(665).If the PIT timer has expired, thenode 605 may remove the corresponding PIT entry from its PIT (665).

CCN 서버(607)로부터 수신된 컨텐츠는 노드(605)에 저장(cash)되고, 노드(605)은 노드(603)에게 컨텐츠를 전송할 수 있다(670).The content received from theCCN server 607 may be stored in thenode 605 and thenode 605 may transmit the content to thenode 603 inoperation 670.

컨텐츠가 수신되면, 노드(603)는 자신의 PIT 타이머 만료 후에 노드 노드(603)의 PIT에서 대응되는 PIT 엔트리를 제거할 수 있다 (675). 노드(603)는 PIT 타이머를 다시 초기화할 수 있다.When the content is received, thenode 603 may remove the corresponding PIT entry in the PIT of thenode node 603 after expiration of its PIT timer (675).Node 603 may reinitialize the PIT timer.

노드(603)는 노드(605)로부터 수신된 컨텐츠를 저장하고, 저장된 컨텐츠를 CCN 클라이언트(601)에게 전송할 수 있다(680).Thenode 603 may store the content received from thenode 605 and may transmit the stored content to the CCN client 601 (680).

CCN 클라이언트(601)은 노드(603)로부터 컨텐츠를 수신한 후에 자신의 PIT 타이머가 만료되면 자신(CCN 클라이언트(601))의 PIT에서 해당 PIT 엔트리를 제거한다(685). CCN 클라이언트(601)은 PIT 타이머를 다시 초기화할 수 있다.
After theCCN client 601 receives the content from thenode 603, theCCN client 601 removes the corresponding PIT entry from the PIT of the CCN client 601 (685) when its PIT timer expires. TheCCN client 601 may reinitialize the PIT timer.

도 7은 일 실시예에 따른 컨텐츠 중심 네트워크에서 노드들 간에 전송된 ACK 패킷이 삭제(drop)된 경우의 동작을 나타낸 도면이다.7 is a diagram illustrating an operation in a case where an ACK packet transmitted between nodes in a content-centric network according to an embodiment is dropped.

도 7을 참조하면, 인터레스트 소유자로 알려진 CCN 클라이언트(701)는 넌스를 가지는 인터레스트를 생성하고(710), 자신(CCN 클라이언트(701))의 PIT에 엔트리를 생성할 수 있다(715).Referring to FIG. 7, aCCN client 701, which is known as an interleaving owner, may generate 710 an interlace with a nonsense and may generate 715 an entry in the PIT of itself (CCN client 701).

일 실시예에서, CCN 클라이언트(701)에서 생성된 인터레스트는 OUT 시퀀스 넘버(OSN)와 연관될 수 있다. 인터레스트의 OUT 시퀀스 넘버는 9일 수 있다. 인터레스트의 OUT 시퀀스 넘버는 컨텐츠 중심 네트워크에 있는 각 노드에서의 컨텐츠의 이용 가능성에 기초하여 각 노드에 의해 변경될 수 있다.In one embodiment, the interleaves generated in theCCN client 701 may be associated with an OUT sequence number (OSN). The OUT sequence number of the interlace may be 9. The OUT sequence number of the interrest may be changed by each node based on the availability of the content at each node in the content-centric network.

CCN 클라이언트(701)는 노드(703)에게 인터레스트를 전송할 수 있다(720). CCN 클라이언트(701)는 노드(703)에게 인터레스트를 전송한 후에 ACK 타이머를 초기화할 수 있다. 노드(703)는 클라이언트 노드(701)로부터 OUT 시퀀스 넘버(OSN) 9를 가진 인터레스트를 수신할 수 있다. 노드(703)에서 인터레스트의 IN 시퀀스 넘버(ISN)은 9일 수 있다.TheCCN client 701 may send an interlace to the node 703 (720). TheCCN client 701 may initialize the ACK timer after transmitting the inter-Node 703 may receive an interlace with an OUT Sequence Number (OSN) 9 fromclient node 701. [ At thenode 703, the IN Sequence Number (ISN) of the interlace may be 9.

노드(703)는 클라이언트 노드(701)로부터 수신한 인터레스트를 처리하기 전에 즉시 CCN 클라이언트(701)에게 ACK 메시지를 전송할 수 있다(725). 이때, CCN 클라이언트(701)의 ACK 타이머는 노드(703)로부터 ACK 메시지를 수신한 후에 정지될 수 있다.Thenode 703 may send an ACK message to theCCN client 701 immediately before processing the intercept received from the client node 701 (725). At this time, the ACK timer of theCCN client 701 may be stopped after receiving the ACK message from thenode 703. [

클라이언트 노드(701)로부터 인터레스트가 수신되면, 노드(703)는 자신의 PIT에 엔트리를 생성할 수 있다(730). 예를 들어, 노드(703)는 PIT에 엔트리를 생성하고, PIT에 인터레스트와 관련된 시퀀스 넘버로서 IN 시퀀스 넘버(ISN) 9를 저장할 수 있다.When an interlude is received from theclient node 701, thenode 703 may generate an entry in its PIT (730). For example,node 703 may create an entry in the PIT and store the IN sequence number (ISN) 9 as a sequence number associated with the interlace in the PIT.

노드(703)는 단계(720)에서 CCN 클라이언트(701)로부터 수신한 인터레스트를 처리한 후에 노드(705)에게 인터레스트를 전송할 수 있다(735). 이때, 노드(703)가 노드(705)에게 전송하는 인터레스트의 시퀀스 넘버는 OUT 시퀀스 넘버(OSN) 17로서 노드(703)의 PIT에 저장될 수 있다. 또한, 노드(705)가 수신한 인터레스트의 IN 시퀀스 넘버는 17일 수 있다.Thenode 703 may process the intercept received from theCCN client 701 instep 720 and then forward the interlace to the node 705 (735). At this time, the sequence number of the interlace transmitted by thenode 703 to thenode 705 may be stored in the PIT of thenode 703 as an OUT sequence number (OSN) 17. In addition, the IN sequence number of the intercept received by thenode 705 may be 17.

노드(703)로부터 인터레스트를 수신한 노드(705)는 인터레스트의 수신을 확인하는 ACK 메시지를 생성하여 노드(703)에게 전송할 수 있다. 이때, ACK 메시지는 예를 들어, 네트워크 정체 등으로 인해 노드들(705 및 703) 간에 삭제될 수 있다(740).Thenode 705 receiving the inter- est from thenode 703 may generate an ACK message confirming receipt of the inter- est and transmit it to thenode 703. [ At this time, the ACK message may be deleted 740 betweennodes 705 and 703 due to, for example, network congestion.

단계(740)에서와 같이, 노드(705)가 전송한 ACK 메시지가 노드들(705 및 703) 간에 삭제된 경우, 노드(703)는 노드(703)의 ACK 타이머의 만료 후에 OUT 시퀀스 넘버 17으로 인터레스트를 재전송할 수 있다(745). 노드(705)로 재전송된 인터레스트의 IN 시퀀스 넘버는 17일 수 있다.If the ACK message transmitted by thenode 705 is deleted between thenodes 705 and 703, as instep 740, thenode 703 sends anOUT sequence number 17 after expiration of the ACK timer of thenode 703 The interlace may be retransmitted (745). The IN sequence number of the interlace retransmitted to thenode 705 may be 17.

노드(703)는 단계(745)에서 ACK 타이머의 만료에 따라 인터레스트를 재전송한 후, 노드(705)로부터 컨텐츠를 수신할 수 있다(750).Node 703 may retransmit the intercept according to the expiration of the ACK timer instep 745 and then receive the content from node 705 (step 750).

단계(745)에서의 인터레스트의 재전송과, 단계(750)에서 노드(705)로부터 중복 컨텐츠(duplicate content)의 수신을 초래한 인터레스트 때문에 노드(705)에서는 새로운 PIT 엔트리가 생성될 수 있다.A new PIT entry may be generated atnode 705 because of the interlace that caused the retransmission of the interlace atstep 745 and the receipt of duplicate content fromnode 705 atstep 750. [

도 7에서, 노드(703)가 노드(705)에게 인터레스트를 전송한 후, 노드(705)에 의해 노드(703)로 전송되는 ACK 메시지는 예를 들어, 네트워크 정체(network congestion) 등으로 인해 삭제될 수 있다. 이때, 노드(703)는 자신의 ACK 타이머가 만료될 때까지 ACK 메시지의 수신을 대기할 수 있다. 노드(703)는 ACK 타이머의 만료 시까지 ACK 메시지가 수신되지 않으면 노드(705)에게 인터레스트를 재전송할 수 있다. 이후, 단계(750)에서 이전에 전송된 인터레스트(즉, 단계(435)에서 전송한 인터레스트)에 일치하는 컨텐츠가 노드(703)에게 수신될 수 있다.7, an ACK message sent by anode 705 to anode 703 after anode 703 sends an interrest to anode 705 may result in a network congestion, for example, Can be deleted. At this time, thenode 703 can wait to receive an ACK message until its ACK timer expires.Node 703 may retransmit the intercept tonode 705 if an ACK message is not received until the expiration of the ACK timer. Then, instep 750, content matching the previously transmitted inter- est (i.e., the inter- est transmitted in step 435) may be received by thenode 703.

단계(750)에서 수신된 컨텐츠에 대해 일치하는 PIT 엔트리가 노드(703)의 PIT에서 발견된 경우, 노드(703)에 의해 PIT 엔트리는 제거되고(755), 컨텐츠는 CCN 클라이언트(701)에게 전달될 수 있다(760).If a matching PIT entry for content received instep 750 is found in the PIT ofnode 703, the PIT entry is removed 755 bynode 703 and the content is delivered to CCN client 701 (760).

단계(755)에서 노드(703)의 PIT 엔트리가 제거된 후, 노드(703)는 단계(745)에서 재전송한 인터레스트에 대한 ACK 메시지를 수신할 수 있다(765).After the PIT entry ofnode 703 is removed atstep 755,node 703 may receive 765 an ACK message for the re-transmitted intercept atstep 745.

이후, 노드(705)에 의해 전송된, 재전송 인터레스트와 관련된 컨텐츠가 노드(703)에 도착할 수 있다(770).Thereafter, content associated with the retransmission interpreter transmitted by thenode 705 may arrive at the node 703 (770).

단계(770)에서 수신된 컨텐츠에 일치하는 PIT 엔트리는 단계(755)에서 노드(703)의 PIT로부터 제거되었으므로, 노드(703)에서는 일치하는 PIT 엔트리가 발견되지 않고, 컨텐츠는 삭제될 수 있다(775). 상기 처리 과정에서, 노드(703)와 노드(705) 간의 링크는 불필요한 중복 컨텐츠의 재전송에 의해 낭비될 수 있다.Since the PIT entry matching the content received instep 770 has been removed from the PIT ofnode 703 instep 755, no matching PIT entry is found innode 703 and the content may be deleted 775). In this process, the link betweennode 703 andnode 705 may be wasted by retransmission of unnecessary duplicate content.

일 실시예에서는 이러한 상황을 회피하기 위해, 컨텐츠 중심 네트워크의 노드들(노드(701), 노드(703) 및 노드(705)) 각각에서 PIT 타이머를 유지할 수 있다.In one embodiment, to avoid this situation, a PIT timer may be maintained at each of the nodes (node 701,node 703, and node 705) of the content-centric network.

노드들(노드(701), 노드(703) 및 노드(705)) 각각은 컨텐츠의 수신 시에 즉시 PIT 엔트리를 삭제하는 대신에 PIT 타이머의 카운트를 시작하고, PIT 타이머가 만료됨에 따라 PIT에 대응하는 PIT 엔트리를 제거할 수 있다. 일 실시예에서, PIT 타이머의 값은 각 노드에서의 Round Trip Time(RTT) 추정에 기초하여 동적으로 계산될 수 있다.Each of the nodes (node 701,node 703, and node 705) starts counting the PIT timer instead of immediately deleting the PIT entry upon receipt of the content, and responds to the PIT as the PIT timer expires The PIT entry can be removed. In one embodiment, the value of the PIT timer can be computed dynamically based on Round Trip Time (RTT) estimates at each node.

일 실시예에서, 컨텐츠가 수신되면 컨텐츠에 대응되는 PIT의 엔트리는 CCN_PR_STALE 플래그로 표시될 수 있다. 정상적인 동작을 위해, 각 노드에서는 CCN_PR_STALE 플래그가 설정되지 않은 PIT 엔트리들만이 이용될 수 있다.In one embodiment, when the content is received, the entry of the PIT corresponding to the content may be indicated with the CCN_PR_STALE flag. For normal operation, only PIT entries that do not have the CCN_PR_STALE flag set in each node can be used.

인터레스트가 노드에게 수신되고, 노드 내의 컨텐츠 스토어에서 인터레스트에 해당하는 컨텐츠가 발견되면, 노드는 해당 인터레스트에 대한 PIT 엔트리를 생성하지 않을 수 있다.If the intercept is received by the node and content corresponding to the intercept is found in the content store in the node, the node may not generate a PIT entry for that inter- est.

상술한 바와 같이, 네트워크 정체 등으로 인해 노드가 ACK 메시지를 수신하지 못하여 인터레스트를 재전송하는 경우, 이것은 중복 컨텐츠 전송을 초래할 수 있다. 일 실시예에서는 이러한 경우에 노드가 PIT 엔트리를 생성하도록 할 수 있다. 이 경우, PIT 엔트리는 CCN_PR_STALE 플래그로 표시되고, 이러한 PIT 엔트리는 PIT 타이머의 만료 후에 순차적으로 제거될 수 있다.
As described above, when a node fails to receive an ACK message due to a network congestion or the like and retransmits an interlace, this may result in duplicate content transmission. In one embodiment, in this case, the node may cause the PIT entry to be generated. In this case, the PIT entry is marked with the CCN_PR_STALE flag, and this PIT entry can be removed sequentially after the expiration of the PIT timer.

도 8은 다른 실시예에 따른 컨텐츠 중심 네트워크에서 노드들 간에 전송된 ACK 패킷이 삭제된 경우의 동작을 나타낸 도면이다.FIG. 8 is a diagram illustrating an operation when an ACK packet transmitted between nodes in a content-centered network according to another embodiment is deleted.

도 8을 참조하면, CCN 클라이언트(801)는 인터레스트를 생성하고(810), CCN 클라이언트(801)와 관련된 PIT에 엔트리를 생성(또는 표시)할 수 있다(815). 일 실시예에서, CCN 클라이언트(801)에서 생성된 인터레스트는 노드로부터 나가는 인터레스트의 시퀀스 넘버인 OUT 시퀀스 넘버와 연관될 수 있다. 인터레스트의 OUT 시퀀스 넘버는 예를 들어, 9일 수 있다.8, theCCN client 801 may generate 810 an interlace and generate 815 an entry in the PIT associated with theCCN client 801. In one embodiment, the generated interlace in theCCN client 801 may be associated with an OUT sequence number that is the sequence number of the outgoing from the node. The OUT sequence number of the interlace may be 9, for example.

인터레스트의 OUT 시퀀스 넘버는 컨텐츠 중심 네트워크의 각 노드에서 컨텐츠의 이용 가능성에 기초하여 각 노드에서 변경될 수 있다.The OUT sequence number of the interlace may be changed at each node based on the availability of content at each node of the content-centric network.

CCN 클라이언트(801)는 노드(803)에게 인터레스트를 전송할 수 있다(820). CCN 클라이언트(801)는 인터레스트를 노드(803)에게 전송한 후에 자신(CCN 클라이언트(801))의 ACK 타이머를 초기화할 수 있다.TheCCN client 801 may send an interlace to the node 803 (820). TheCCN client 801 may initialize the ACK timer of itself (the CCN client 801) after sending the interlace to thenode 803. [

노드(803)는 CCN 클라이언트(801)로부터 OUT 시퀀스 넘버 9를 가진 인터레스트를 수신할 수 있다. 노드(803)로 수신된 인터레스트의 IN 시퀀스 넘버는 9일 수 있다.Node 803 may receive an interlace withOUT sequence number 9 fromCCN client 801. [ The IN sequence number of the intercept received atnode 803 may be nine.

노드(803)가 CCN 클라이언트(801)로부터 인터레스트를 수신한 경우, 노드(803)는 인터레스트를 처리하기에 앞서 ACK 메시지로 즉시 응답할 수 있다(825). 노드(803)로부터 ACK 메시지가 수신된 경우, CCN 클라이언트(801)의 ACK 타이머는 정지될 수 있다.If thenode 803 receives an inter- view from theCCN client 801, thenode 803 may immediately respond 825 to the ACK message before processing the inter- view. When an ACK message is received from thenode 803, the ACK timer of theCCN client 801 may be stopped.

인터레스트가 수신되면, 노드(803)는 PIT에 엔트리를 생성(또는 표시)할 수 있다(830). 예를 들어, 노드(803)의 PIT에서 엔트리가 생성되면, 인터레스트와 관련된 IN 시퀀스 넘버 9가 PIT에 저장될 수 있다.When an interrest is received, thenode 803 may generate (or display) an entry in the PIT (830). For example, if an entry is generated at the PIT of thenode 803, theIN sequence number 9 associated with the interlace may be stored in the PIT.

노드(803)는 인터레스트를 처리한 후에 다음 노드(노드(805)에게 인터레스트를 전송할 수 있다(835). 이때, 인터레스트의 시퀀스 넘버는 인터레스트를 다음 노드(노드(805))에게 전송하기 전에 노드(803)의 PIT에 OUT 시퀀스 넘버는 17 로 저장될 수 있다.Thenode 803 may process the interlace and then transmit the interlace to thenext node 805. At this time, the sequence number of the interlace transmits the interlace to the next node (node 805) The OUT sequence number may be stored as 17 in the PIT of thenode 803 before the OUT sequence number.

노드(803)로부터 노드(805)에게 수신된 인터레스트의 IN 시퀀스 넘버는 17일 수 있다.The IN sequence number of the intercept received from thenode 803 to thenode 805 may be 17.

일 실시예에에서, 노드(805)는 인터레스트의 수신을 확인하는 ACK 메시지를 생성하고, 노드(803)에게 ACK 메시지를 전송할 수 있다. 도 8에 도시된 실시예에서, ACK 메시지는 노드(803)와 노드(805) 간의 전송 중에 예를 들어, 네트워크 정체 등으로 인해 삭제(drop)될 수 있다(840).In one embodiment, thenode 805 may generate an ACK message confirming receipt of the inter- est and may send an ACK message to thenode 803. [ 8, an ACK message may be dropped 830 during transmission betweennode 803 andnode 805, for example due to network congestion or the like.

ACK 메시지가 전송 중에 삭제되어 ACK 메시지를 수신하지 못한 경우, 노드(803)는 ACK 타이머의 만료 후에 노드(805)에게 OUT 시퀀스 넘버 17을 가진 인터레스트를 재전송할 수 있다(845). 노드(805)에게 재전송된 인터레스트의 IN 시퀀스 넘버는 17일 수 있다. 단계(845)에서 재전송된 인터레스트는 CCN 클라이언트 노드(801)에서 생성된 것과 동일한 넌스를 포함할 수 있다.If the ACK message is deleted during transmission and the ACK message is not received, thenode 803 may retransmit the interlace with theOUT sequence number 17 to thenode 805 after the expiration of the ACK timer (845). The IN sequence number of the re-transmitted to thenode 805 may be 17. The re-transmitted interrest atstep 845 may include the same non-ness as that generated at theCCN client node 801. [

단계(845)에서 재전송한 인터레스트에 응답하여, 노드(803)는 노드(805)로부터 ACK 메시지를 수신할 수 있다(850). 이때, 노드(805)은 노드(803)의 ACK 타이머의 만료 전에 ACK 메시지는 노드(805)에게 전송할 수 있다.In response to the re-transmitted interstage atstep 845,node 803 may receive an ACK message from node 805 (850). At this time, thenode 805 can transmit an ACK message to thenode 805 before the expiration of the ACK timer of thenode 803. [

일 실시예에서, 단계(835)에서 전송된 인터레스트를 위한 PIT 엔트리가 노드(805)의 PIT에 생성되었기 때문에, 노드(805)는 PIT 엔트리를 생성하지 않을 수 있다(855).In one embodiment, thenode 805 may not generate a PIT entry (855) because the PIT entry for the inter-post sent instep 835 has been created in the PIT of thenode 805. [

단계(845)에서 노드(803)로부터 노드(805)로 재전송된 인터레스트는 이전의 단계(835)에서 전송된 인터레스트와 동일한 IN 시퀀스 넘버 17을 보유할 수 있다.The interret resent fromnode 803 tonode 805 instep 845 may have the sameIN sequence number 17 as the intercept sent inprevious step 835. [

노드(805)가 재전송 인터레스트를 수신하면, 노드(805)은 시퀀스 넘버에 일치하는 엔트리들을 위해 자신의 PIT를 검색하여 일치하는 엔트리를 발견할 수 있다.When thenode 805 receives the retransmission interpreter, thenode 805 may search its PIT for entries that match the sequence number and find a matching entry.

단계(835)에서 전송된 인터레스트로 인해 PIT에 이미 존재하던 PIT 엔트리로 인해, 노드(805)은 노드(803)에게 ACK 메시지를 전송할 수 있다. 노드(805)는 추가적인 인터레스트 처리를 수행하지 않고, 인터레스트를 삭제할 수 있다.Thenode 805 may send an ACK message to thenode 803 due to the PIT entry already present in the PIT due to the interrest transmitted instep 835. [ Thenode 805 can delete the interlace without performing additional interlace processing.

노드(805)은 CCN 서버(807)에게 인터레스트를 전송할 수 있다(860). 노드(805)에 의해 전송된 인터레스트의 OUT 시퀀스 넘버는 13이고, CCN 서버(807)에서 수신된 인터레스트의 IN 시퀀스 넘버는 13일 수 있다.Thenode 805 may send an interlace to the CCN server 807 (860). The OUT sequence number of the interlace transmitted by thenode 805 is 13 and the IN sequence number of the intercept received by theCCN server 807 may be 13.

노드(805)로부터 수신한 인터레스트에 응답하여, CCN 서버(807)는 노드(805)에게 ACK 메시지를 전송할 수 있다(865). CCN 서버(807)은 노드(805)에게 ACK 메시지를 전송한 후에, 인터레스트의 처리를 시작할 수 있다.In response to the intercept received from thenode 805, theCCN server 807 may send an ACK message to the node 805 (865). TheCCN server 807 may initiate processing of the intercept after sending an ACK message to thenode 805. [

인터레스트를 처리한 후에 CCN 서버(807)는 노드(805)에게 인터레스트에 일치하는 컨텐츠를 전송할 수 있다(870).After processing the interlace, theCCN server 807 may send 870 the content corresponding to the inter- est to thenode 805.

일 실시예에서, CCN 서버(807)로부터 컨텐츠가 수신된 경우, 노드(805)는 해당 PIT 엔트리를 STALE 플래그에 의해 표시할 수 있다. 노드(805)는 CCN 서버(807)로부터 컨텐츠를 수신함에 따라 노드(805)의 PIT 타이머를 초기화할 수 있다.In one embodiment, when content is received from theCCN server 807, thenode 805 may display the PIT entry by means of the STALE flag. Thenode 805 may initialize the PIT timer of thenode 805 as it receives content from theCCN server 807.

PIT 타이머가 만료되면, 노드(805)은 PIT에서 해당 PIT 엔트리를 제거할 수 있다(875).When the PIT timer expires, thenode 805 may remove the corresponding PIT entry from the PIT (875).

CCN 서버(807)로부터 컨텐츠를 수신한 노드(805)는 컨텐츠를 저장한 후, 노드(803)에게 컨텐츠를 전송할 수 있다(880).After receiving the content from theCCN server 807, thenode 805 may transmit the content to thenode 803 after storing the content (880).

노드(803)에 컨텐츠가 수신되면, 노드(803)는 STALE 플래그에 의해 해당 PIT 엔트리를 표시할 수 있다. 노드(803)는 PIT 타이머의 만료에 따라, 노드(803)의 PIT에서 해당 PIT 엔트리를 제거할 수 있다(885). 이후, 노드(803)는 PIT 타이머를 초기화할 수 있다.When the contents are received in thenode 803, thenode 803 can display the corresponding PIT entry by the STALE flag. Upon expiration of the PIT timer, thenode 803 may remove the corresponding PIT entry from the PIT of the node 803 (885). Thereafter, thenode 803 may initialize the PIT timer.

노드(803)는 노드(805)로부터 수신한 컨텐츠를 저장하고, CCN 클라이언트(801)에게 컨텐츠를 전송할 수 있다(890).Thenode 803 may store the content received from thenode 805 and may transmit the content to the CCN client 801 (890).

CCN 클라이언트(801)는 STALE 플래그에 의해 해당 PIT 엔트리를 표시하고, 노드(803)로부터 컨텐츠를 수신한 후에 자신의 PIT 타이머를 초기화할 수 있다. CCN 클라이언트(801)는 PIT 타이머가 만료됨에 따라 해당 PIT 엔트리를 제거할 수 있다(895).
TheCCN client 801 may display the PIT entry by the STALE flag and initialize its PIT timer after receiving the content from thenode 803. [ TheCCN client 801 may remove the corresponding PIT entry as the PIT timer expires (895).

도 9는 일실시예에 따른 컨텐츠 중심 네트워크에서 노드들간의 인터레스트가 삭제된 경우, ACK 타이머의 종료 후에 인터레스트가 재전송되는 과정을 나타낸 도면이다.9 is a diagram illustrating a process in which an interrest is retransmitted after an end of an ACK timer when an inter-node between nodes is deleted in a content-centered network according to an exemplary embodiment.

도 9를 참조하면, 인터레스트가 ACK 타이머의 만료 후에 ACK 메시지의 응답에 실패한 노드에게 재전송되는 경우가 도시된다.Referring to FIG. 9, it is shown that the interlace is retransmitted to the node that failed to respond to the ACK message after expiration of the ACK timer.

도 9에서 CCN 클라이언트(901)와 노드(905) 간에 수행되는 동작은 도 8의 단계(810) 내지 단계(835)의 과정과 동일하므로 해당 부분의 설명을 참조한다. 또한, 도 9에서는 도 8의 단계(840)에서 노드(805)이 노드(803)에게 전송한 ACK 메시지가 정상적으로 수신된 것으로 가정하고, 노드(905)에서 PIT 엔트리가 생성된 이후에 노드(905)과 CCN 서버(907) 간의 동작을 설명한다.The operations performed between theCCN client 901 and thenode 905 in FIG. 9 are the same as those in thesteps 810 to 835 in FIG. 8, and therefore, the description of the corresponding portions will be referred to. 9, it is assumed that the ACK message transmitted from thenode 805 to thenode 803 is normally received in thestep 840 of FIG. 8, and after the PIT entry is generated in thenode 905, ) And theCCN server 907 will be described.

도 9에서 노드(905)와 CCN 서버(907) 간에서 노드(905)로부터 전송된 OUT 시퀀스 넘버 13을 가진 인터레스트가 삭제될 수 있다(910).In FIG. 9, an interlace withOUT sequence number 13 sent fromnode 905 betweennode 905 andCCN server 907 may be deleted (910).

인터레스트가 삭제되면, 노드(905)에서는 ACK 타이머의 만료 전에 인터레스트에 응답하여 ACK 메시지가 수신되지 않는다. 이러한 경우, 노드(905)은 OUT 시퀀스 넘버 13을 가진 인터레스트를 CCN 서버(907)에게 재전송할 수 있다(920).If the interlace is deleted, thenode 905 does not receive an ACK message in response to the interlace before expiration of the ACK timer. In this case, thenode 905 may retransmit 920 theCCN server 907 with an OUT sequence with theOUT sequence number 13.

CCN 서버(907)는 노드(905)로부터 IN 시퀀스 넘버 13을 가진 재전송된 인터레스트를 수신할 수 있다.TheCCN server 907 may receive a retransmitted interlace with anIN sequence number 13 from thenode 905. [

노드(905)에 의해 재전송된 인터레스트가 CCN 서버(907)에서 수신되면, CCN 서버(907)는 노드(905)에게 인터레스트에 대응하는 ACK 메시지를 전송할 수 있다(930).When theCCN server 907 receives the re-transmitted interleaves by thenode 905, theCCN server 907 may transmit an ACK message corresponding to the interlace to the node 905 (930).

이후, CCN 서버(907)와 CCN 클라이언트(901) 간에 수행되는 동작은 도 8의 단계(870) 내지 단계(895)와 동일하므로 해당 부분의 설명을 참조하도록 한다.
Hereinafter, the operations performed between theCCN server 907 and theCCN client 901 are the same as thesteps 870 to 895 of FIG. 8, so that the description of the corresponding portions will be referred to.

도 10은 일실시예에 따른 컨텐츠 중심 네트워크의 각 노드에서 인터레스트를 처리하는 방법을 나타낸 도면이다.FIG. 10 is a diagram illustrating a method of processing an advertisement in each node of the content-centric network according to an exemplary embodiment of the present invention.

도 10을 참조하면, 일 실시예에 따른 노드는 컨텐츠 중심 네트워크에서 인터레스트 소유자로부터 인터레스트를 전송받을 수 있다(1001). 여기서, 인터레스트 소유자는 컨텐츠 중심 네트워크에서 인터레스트를 생성하여 전송한 노드로 이해될 수 있다.Referring to FIG. 10, a node according to an exemplary embodiment may receive (1001) an interest from an owner of an interest in a content-centric network. Here, the owner of the interrest can be understood as a node that has generated and transmitted an interrest in the content-oriented network.

노드는 인터레스트가 수신된 인커밍 페이스가 원거리(remote)인지 여부를 판단한다(1002). 여기서, '페이스(face)'는 통신 패킷이 전달되는 경로(path)를 의미하며, '인터페이스(interface)'로도 표현할 수 있다.The node determines whether the incoming face received by the interlace is remote (1002). Here, 'face' refers to a path through which a communication packet is transmitted, and can also be expressed as an 'interface'.

단계(1002)에서 인커밍 페이스가 원거리로 판단되는 경우, 노드는 인커밍 페이스를 통해 수신된 인터레스트에 응답하여 ACK 메시지를 전송할 수 있다(1003).Instep 1002, if the incoming face is determined to be remote, the node may send an ACK message in response to the received interlace over the incoming face (1003).

단계(1002)에서 인커밍 페이스가 원거리가 아닌 근거리로 판단되면, 노드는 인터레스트에 인터레스트 소유자에 의해 생성된 복제된 넌스(duplicate Nonce)가 있는지 여부를 판단할 수 있다(1004).If it is determined atstep 1002 that the incoming face is near, rather than remote, the node may determine 1004 whether there is a duplicate nonce generated by the intercept owner in the interlace.

단계(1004)에서 인터레스트 소유자에 의해 생성된 중복 넌스가 있다고 판단되는 경우, 노드는 인터레스트의 시퀀스 넘버(ISN)가 PIT 엔트리의 ISN과 일치하는지 여부를 판단할 수 있다(1021).If it is determined instep 1004 that there is a redundancy generated by the intercept owner, the node may determine 1021 whether the ISN of the interlace matches the ISN of the PIT entry.

단계(1021)에서, 인터레스트의 시퀀스 넘버(ISN)가 PIT 엔트리의 ISN과 일치한다고 판단되는 경우, 노드는 단계(1001)에서 수신한 인터레스트를 인터레스트 소유자에 의해 재전송된 인터레스트로 선언할 수 있다(1022).Instep 1021, if it is determined that the sequence number (ISN) of the interlace matches the ISN of the PIT entry, the node declares the intercept received instep 1001 as an interlace retransmitted by the inter- (1022).

단계(1021)에서, 인터레스트의 시퀀스 넘버(ISN)가 PIT 엔트리의 ISN과 일치하지 않는다고 판단되는 경우, 노드는 단계(1001)에서 수신한 인터레스트를 복제되거나 중복된 인터레스트들이라고 선언할 수 있다(1023). 단계(1022) 및 단계(1023)의 선언 후에 노드는 동작을 종료할 수 있다.Instep 1021, if it is determined that the sequence number (ISN) of the intercept does not match the ISN of the PIT entry, the node may declare the intercept received instep 1001 as duplicated or duplicated interleaves (1023). After the declaration ofstep 1022 andstep 1023, the node may terminate the operation.

단계(1004)에서, 인터레스트 소유자에 의해 생성된 중복 넌스가 없다고 판단되는 경우, 노드는 인터레스트에 있는 세그먼트들을 찾기 위해 노드의 컨텐츠 스토어를 검색할 수 있다(1005). 또한, 노드는 컨텐츠 스토어에서 인터레스트에 있는 다음 세그먼트를 검색할지 여부를 판단할 수 있다(1006).Atstep 1004, if it is determined that there is no redundancy generated by the intercept owner, the node may retrieve the content store of the node to search for segments in the interlace (1005). In addition, the node may determine whether to search for the next segment in the interstage in the content store (1006).

단계(1006)에서, 컨텐츠 스토어에서 검색할 다음 세그먼트가 존재하는 것으로 판단되면, 노드는 인터레스트에서 다음 세그먼트에 일치하는 것(즉, 컨텐츠 혹은 세그먼트)가 컨텐츠 스토어에서 발견되었는지를 판단할 수 있다(1007).Atstep 1006, if it is determined that there is a next segment to be searched in the content store, then the node can determine whether the next segment in the interre (i.e., content or segment) is found in the content store 1007).

단계(1007)에서, 다음 세그먼트에 일치하는 컨텐츠가 컨텐츠 스토어에서 발견된 경우, 노드는 인커밍 페이스로 컨텐츠를 전송(1008)한 다음, 단계(1006)으로 되돌아 갈 수 있다.If, atstep 1007, content matching the next segment is found in the content store, then the node may transfer the content at the incoming face 1008 and then return tostep 1006.

단계(1006)에서, 컨텐츠 스토어에서 검색할 다음 세그먼트가 존재하지 않는다고 판단되면, 노드는 노드의 인커밍 페이스가 원거리인지 여부를 판단할 수 있다(1009).Atstep 1006, if it is determined that there is no next segment to search in the content store, the node may determine whether the incoming face of the node is remote (1009).

단계(1007)에서, 인터레스트에서 다음 세그먼트와 일치하는 컨텐츠가 컨텐츠 스토어에 존재하지 않는다고 판단되면, 노드는 노드의 인커밍 페이스가 원거리인지 여부를 판단할 수 있다(1009).Instep 1007, if it is determined that content matching the next segment in the interlace does not exist in the content store, the node can determine whether the incoming face of the node is remote (1009).

단계(1009)에서, 인커밍 페이스가 원거리라고 판단된 경우, 노드는 컨텐츠 스토어로부터 제공된 컨텐츠가 있는지 여부를 판단할 수 있다(1010).Instep 1009, if it is determined that the incoming face is distant, the node may determine 1010 whether there is content provided from the content store.

단계(1010)에서, 컨텐츠 스토어로부터 제공된 컨텐츠가 있다고 판단되면, 노드는 재전송된 인터레스트들에 대한 답변을 회피하기 위해 타임 아웃 값을 가지는 false PIT 엔트리를 생성할 수 있다(1011). 또한, 노드는 인커밍 페이스로 컨텐츠를 재전송하는 것을 피하기 위해서 STALE 플래그에 의해 PIT 엔트리를 표시할 수 있다(1012). 노드는 재전송된 인터레스트들에 대한 답변을 회피하기 위해서 PIT 타이머를 시작할 수 있다(1013).Atstep 1010, if it is determined that there is content provided from the content store, the node may generate a false PIT entry having a timeout value to avoid a response to the retransmitted interleaves (1011). In addition, the node may display the PIT entry with the STALE flag to avoid retransmitting the content at the incoming face (1012). The node may initiate a PIT timer to avoid an answer to the retransmitted interleaves (1013).

단계(1010)에서, 컨텐츠 스토어로부터 제공된 컨텐츠가 없다고 판단되면, 노드는 인터레스트의 각 세그먼트를 위한 PIT 엔트리들을 생성할 수 있다(1015). 단계(1015)에서 인터레스트의 각 세그먼트에 대해 PIT 엔트리들이 생성된 경우, 노드는 변경된(modified) 인터레스트의 OSN을 갱신할 수 있다(1016).Instep 1010, if it is determined that there is no content provided from the content store, the node may generate PIT entries for each segment of the interlace (1015). If PIT entries are created for each segment of the interlace atstep 1015, then the node may update the OSN of the modified interlace (1016).

노드는 변경된 인터레스트를 컨텐츠 중심 네트워크에서 인접한 노드에게 전송하기 전에, 변경된 인터레스트에 대한 ACK 타이머를 시작할 수 있다(1017).The node may initiate an ACK timer for the changed interlace (1017) before sending the changed interlace to the neighboring node in the content-centric network.

단계(1017)에서 노드가 ACK 타이머를 시작한 경우, 노드는 ACK 타이머의 만료 전에 컨텐츠 중심 네트워크에서 인접 노드로부터 ACK 메시지가 수신되었는지 여부를 판단할 수 있다(1018). 단계(1018)에서 ACK 타이머의 만료 전에 인접 노드로부터 ACK 메시지가 수신된 경우, 노드는 ACK 타이머를 정지시킬 수 있다(1019). ACK 타이머의 만료 전에 인접 노드로부터 ACK 메시지가 수신되지 않은 경우, 노드는 컨텐츠 중심 네트워크에서 인접 노드로 인터레스트를 재전송할 수 있다(1020). 단계(1019) 또는 단계(1020)의 수행 후, 노드는 동작을 종료할 수 있다.If the node initiated the ACK timer instep 1017, the node may determine 1018 whether an ACK message has been received from the neighboring node in the content-centric network before expiration of the ACK timer. If an ACK message is received from the neighbor node before expiration of the ACK timer instep 1018, the node may stop the ACK timer (1019). If an ACK message is not received from the neighboring node before the expiration of the ACK timer, the node may retransmit the interlace to the neighboring node in the content-centric network (1020). After performingstep 1019 orstep 1020, the node may terminate the operation.

단계(1009)에서, 인커밍 페이스가 원거리가 아니라고(즉, 근거리로) 판단된 경우, 노드는 다시 단계(1014)로 가서 이후 동작을 수행할 수 있다.Instep 1009, if it is determined that the incoming face is not at a distance (i. E., Close), the node may go back tostep 1014 to perform the operation thereafter.

일 실시예에서 노드는 인접 노드에게 인터레스트를 재전송한 후에 ACK 타이머를 시작할 수도 있다. 이때, 노드에 의해 재전송된 인터레스트의 개수는 3개가 될 수 있다. 인터레스트가 인접 노드로 재전송되고, ACK 타이머의 만료 전에 ACK 메시지가 노드에서 수신되지 않은 경우, 노드는 컨텐츠 중심 네트워크에서 인접 노드에게 인터레스트를 재전송할 수 있다. 인터레스트는 ACK 타이머의 만료 전에 노드에서 ACK 메시지가 수신되지 않은 경우, 일 실시예에 따르면, 3번 인접 노드에게 재전송될 수 있다. ACK 메시지가 3번의 인터레스트 재전송 시도 후에도 노드에 수신되지 않은 경우, 노드는 ACK 타이머를 중지할 수 있다.In one embodiment, a node may initiate an ACK timer after retransmitting an interlace to a neighboring node. At this time, the number of interrests retransmitted by the node may be three. If the intercept is retransmitted to the neighboring node and the ACK message is not received at the node before the expiration of the ACK timer, the node may retransmit the intercept to the neighboring node in the content-centric network. The interrest may be retransmitted to the neighboringnode 3, according to one embodiment, if no ACK message is received at the node before the expiration of the ACK timer. If the ACK message has not been received by the node even after three inter-retry attempts, the node can abort the ACK timer.

도 10의 실시예에서 기술된 다양한 동작들, 유닛들, 블록들, 또는 행위들은 제시된 순서대로, 또는 다른 순서로, 동시에 또는 이들의 조합으로 수행될 수 있다. 또한, 실시예에 따라서, 도 10에서 나열된 동작들, 유닛들, 단계들, 블록들 또는 행위들은 생략될 수 있다.
The various operations, units, blocks, or acts described in the embodiment of FIG. 10 may be performed in the order presented, or in another order, concurrently, or a combination thereof. Also, depending on the embodiment, the operations, units, steps, blocks or behaviors listed in FIG. 10 may be omitted.

도 11은 일 실시예에 따른 컨텐츠 중심 네트워크에서 노드가 인접 노드들부터 수신되는 컨텐츠(incoming content)를 처리하는 방법을 나타낸 도면이다.FIG. 11 is a diagram illustrating a method for a node to process incoming content from neighboring nodes in a content-centric network according to an exemplary embodiment of the present invention.

도 11을 참조하면, 일 실시예에 따른 노드는 컨텐츠 중심 네트워크에서 인접 노드(들)로부터 컨텐츠를 수신할 수 있다(1101).11, a node according to one embodiment may receivecontent 1101 from a neighboring node (s) in a content-centric network.

노드는 컨텐츠 중심 네트워크에서 인접 노드로부터 수신된 컨텐츠의 타입을 결정할 수 있다(1102). 단계(1102)에서 노드로부터 수신된 컨텐츠의 타입이 ACK 메시지라고 판단되면, 노드는 컨텐츠 스토어에 ACK 메시지를 저장하지 않는다(1103). 노드는 ACK 메시지에 대응하는 인터레스트를 PIT에서 검색한다(1104).The node may determine the type of content received from the neighboring node in the content-centric network (1102). If it is determined instep 1102 that the type of the content received from the node is an ACK message, the node does not store the ACK message in the content store (1103). The node retrieves 1104 the PIT from the corresponding interlace to the ACK message.

노드는 PIT에서 PIT 엔트리가 ACK 메시지에 대응하는 인터레스트와 일치하는지 여부를 판단할 수 있다(1105).The node may determine whether the PIT entry in the PIT matches the corresponding corresponding to the ACK message (1105).

단계(1105)에서 PIT 엔트리가 일치하는 경우, 노드는 ACK 메시지의 시퀀스 넘버가 PIT의 OUT 시퀀스 넘버와 일치하는지를 판단할 수 있다(1106). 단계(1106)에서, ACK 시퀀스 넘버와 PIT의 OUT 시퀀스 넘버가 일치하는 경우, 노드는 ACK 타이머를 정지시킨다(1107).If the PIT entry matches instep 1105, the node may determine 1106 whether the sequence number of the ACK message matches the OUT sequence number of the PIT. Instep 1106, if the ACK sequence number matches the OUT sequence number of the PIT, the node stops the ACK timer (1107).

단계(1105)에서 PIT 엔트리가 일치하지 않는 경우, 노드는 PIT에 PIT 엔트리들이 더 존재하는지 여부를 판단할 수 있다(1108). 단계(1108)에서 PIT에 PIT 엔트리들이 더 존재하는 경우, 노드는 단계(1105)를 수행할 수 있다. 단계(1108)에서 PIT에 PIT 엔트리들이 더 존재하지 않는 경우, 노드는 동작을 종료할 수 있다(1109).If the PIT entry does not match instep 1105, the node may determine whether there are more PIT entries in the PIT (1108). If there are more PIT entries in the PIT atstep 1108, the node may performstep 1105. [ If there are no more PIT entries in the PIT atstep 1108, the node may terminate the operation (1109).

단계(1106)에서, ACK 시퀀스 넘버와 PIT의 OUT 시퀀스 넘버가 일치하지 않는 경우, 노드는 PIT에 PIT 엔트리들이 존재하는지 여부를 결정할 수 있다(1108). 노드는 PIT에 PIT 엔트리들이 존재하는지 여부에 기초하여, 동작을 종료(1109)하던지, 또는 단계(1105)로 되돌아 갈 수 있다.Instep 1106, if the ACK sequence number and the OUT sequence number of the PIT do not match, the node may determine whether there are PIT entries in the PIT (1108). The node may terminate the operation (1109), or return to step (1105), based on whether the PIT entries are present in the PIT.

단계(1102)에서 노드로부터 수신된 컨텐츠의 타입이 데이터라고 판단되면, 노드는 노드의 컨텐츠 스토어에 수신된 데이터를 저장할 수 있다(1110). 노드는 수신된 컨텐츠를 인터레스트와 일치시키기 위하여 자신의 PIT의 PIT 엔트리를 검색할 수 있다(1111). 노드는 PIT 엔트리가 인터레스트와 일치하는지 여부를 결정할 수 있다(1112). 일 실시예에서, 인터레스트의 OUT 시퀀스 넘버는 PIT 엔트리와 노드에서 수신된 인터레스트 간에 일치가 존재하는지 여부를 결정하기 위해 PIT 엔트리와 매칭될 수 있다.If it is determined instep 1102 that the type of content received from the node is data, the node may store the received data in the content store of the node (1110). The node may retrieve the PIT entry of its PIT to match the received content to the interleast (1111). The node may determine whether the PIT entry matches the interlace (1112). In one embodiment, the OUT sequence number of the intercept may match the PIT entry to determine whether there is a match between the PIT entry and the intercept received at the node.

단계(1112)에서 PIT 엔트리와 인터레스트가 일치하는 것으로 결정되면, 노드는 PIT에서 PIT 엔트리가 STALE 플래그에 의해 표시되었는지 여부를 판단할 수 있다(1113). 단계(1113)에서 PIT 엔트리가 STALE 플래그에 의해 표시되는지 않는 경우, 노드는 PIT 엔트리의 페이스로 컨텐츠를 전송할 수 있다(1114).If it is determined in step 1112 that the PIT entry and the interrelation match, the node may determine 1113 whether the PIT entry is indicated by the STALE flag in the PIT. If the PIT entry is not indicated by the STALE flag instep 1113, the node may transmit the content at the PIT entry's face (1114).

또한, 노드는 PIT 엔트리의 페이스가 원거리인지 여부를 판단할 수 있다(1115). 단계(1115)에서 PIT 엔트리의 페이스가 원거리로 판단되면, 노드는 컨텐츠의 재전송을 회피하기 위해 STALE 플래그에 의해 PIT 엔트리를 표시할 수 있다(1116). 노드는, 예를 들어, 도 7 및 도 9에서 ACK 메시지가 삭제되거나 인터레스트가 삭제된 경우와 같이, 재전송된 인터레스트들에 대한 응답을 회피하기 위해 PIT 타이머를 시작할 수 있다(1117).The node may also determine whether the face of the PIT entry is remote (1115). If the pace of the PIT entry is determined to be remote atstep 1115, the node may indicate the PIT entry by the STALE flag to avoid retransmission of the content (1116). The node may initiate a PIT timer to avoid a response to the retransmitted interleaves, e.g., when the ACK message is deleted or the interlace is deleted, e.g., in FIGS. 7 and 9 (1117).

노드는 PIT 타이머가 만료되었는지를 판단할 수 있다(1118). 단계(1118)에서 PIT 타이머가 만료되지 않은 경우, 노드는 PIT 타이머의 만료를 대기할 수 있다.The node may determine 1118 whether the PIT timer has expired. If, instep 1118, the PIT timer has not expired, the node may wait for the expiration of the PIT timer.

단계(1118)에서 PIT 타이머가 만료된 경우, 노드는 PIT에서 PIT 엔트리를 제거(1119)한 후, 동작을 종료할 수 있다.If the PIT timer expires instep 1118, the node may terminate the operation after removing 1119 the PIT entry from the PIT.

단계(1115)에서 PIT 엔트리의 페이스가 근거리로 판단되면, 노드는 PIT에서 PIT 엔트리를 제거할 수 있다(1118).If the pace of the PIT entry is determined to be short instep 1115, the node may remove the PIT entry from the PIT (1118).

단계(1112)에서, PIT 엔트리와 인터레스트가 일치하지 않는 것으로 결정되면, 노드는 PIT에 PIT 엔트리들이 더 존재하는지 여부를 판단할 수 있다(1120). 단계(1120)에서, PIT 엔트리들이 더 존재하는 경우, 노드는 단계(1112)로 돌아가서 PIT 엔트리가 인터레스트와 일치하는지 여부를 결정할 수 있다. 단계(1120)에서, PIT에 PIT 엔트리들이 더 존재하지 않는 경우, 노드는 동작을 종료할 수 있다(1121).At step 1112, if it is determined that the PIT entry and the intercept do not match, then the node may determine whether there are more PIT entries in the PIT (1120). Instep 1120, if there are more PIT entries, the node may go back to step 1112 to determine whether the PIT entry matches the interlace. Instep 1120, if there are no more PIT entries in the PIT, the node may terminate the operation (1121).

도 11의 실시예에서 기술된 다양한 동작들, 유닛들, 블록들, 또는 행위들은 제시된 순서대로, 또는 다른 순서로, 동시에 또는 이들의 조합으로 수행될 수 있다. 또한, 실시예에 따라서, 도 11에서 나열된 동작들, 유닛들, 단계들, 블록들 또는 행위들은 생략될 수 있다.
The various operations, units, blocks, or acts described in the embodiment of Fig. 11 may be performed in the order presented, or in another order, concurrently, or a combination thereof. Further, according to the embodiment, the operations, units, steps, blocks or behaviors listed in Fig. 11 may be omitted.

도 12는 일 실시예에 따른 컨텐츠 중심 네트워크에서 노드들 간에 인터레스트가 삭제된 경우를 나타낸 도면이다.FIG. 12 is a diagram illustrating a case where an interpreter is deleted between nodes in a content-centric network according to an exemplary embodiment of the present invention.

도 12를 참조하면, 일 실시예에 따른 컨텐츠 중심 네트워크는 CCN 클라이언트(1210) 및 CCN 노드들(즉, CCN 노드(1220) 및 CCN 노드(1230)), 및 CCN 서버(1240)를 포함할 수 있다.12, a content-centric network according to one embodiment may include aCCN client 1210 and CCN nodes (i.e., aCCN node 1220 and a CCN node 1230), and aCCN server 1240 have.

CCN 클라이언트(910)는 컨텐츠 중심 네트워크의 각 노드에게 인터레스트의 신뢰성 있는 전달을 보장하는 일 실시예에 따른 ACK 메커니즘과 UDP(User Datagram Protocol)의 접속을 통해 100MB 파일을 요청할 수 있다.TheCCN client 910 may request a 100 MB file through the connection of an ACK mechanism and a UDP (User Datagram Protocol) according to an exemplary embodiment that guarantees reliable delivery of the interrest to each node of the content-oriented network.

도 12에서, 인터레스트는 CCN 노드(1220) 및 CCN 노드(1230) 간에 일정 삭제 확률(drop probability)로 삭제될 수 있다. 이때, CCN 노드(1220) 및 CCN 노드(1230) 간에는 인터레스트만이 삭제되고, 컨텐츠은 삭제되지 않는다.In FIG. 12, the interlace may be deleted with a constant drop probability between theCCN node 1220 and theCCN node 1230. At this time, only the interrest is deleted between theCCN node 1220 and theCCN node 1230, and the contents are not deleted.

인터레스트의 삭제 확률이 0에서 0.5로 변화되면, 노드는 해당 처리량을 측정할 수 있다. 도 12의 설정에서 ACK 메커니즘이 사용되지 않고, 노드가 전달할 수 있는 최대 중복 인터레스트는 3에서 10000으로 증가될 수 있다. 여기서, 숫자 10000은 노드들에게 전달되는 유사한 인터레스트들의 다수 허용하기 위해 임의로 선택된 값일 수 있다.
If the deletion probability of the intercept changes from 0 to 0.5, the node can measure the throughput. In the configuration of FIG. 12, the ACK mechanism is not used, and the maximum redundant intercept that a node can deliver may be increased from 3 to 10000. Here, the number 10000 may be a value that is arbitrarily selected to allow a number of similar interlaces to be delivered to the nodes.

도 13은 일 실시예에 따라 다수의 CCN 클라이언드들을 포함하는 컨텐츠 중심 네트워크에서 두 노드들 중 어느 하나에서 인터레스트가 삭제된 경우를 나타낸 도면이다.FIG. 13 is a diagram illustrating a case in which an interlace is deleted from one of two nodes in a content-centric network including a plurality of CCN clients according to an exemplary embodiment of the present invention.

도 13을 참조하면, 일 실시예에 따른 컨텐츠 중심 네트워크는 다수의 CCN 클라이언트 노드들(1310), 두 개의 CCN 노드들(CCN 노드(1320) 및 CCN 노드(1330)) 및 CCN 서버(1340)를 포함할 수 있다.13, a content-centric network according to an exemplary embodiment includes a plurality ofCCN client nodes 1310, two CCN nodes (aCCN node 1320 and a CCN node 1330), and aCCN server 1340 .

일 실시예에 따른 ACK 메커니즘은 동일한 컨텐츠를 동시에 요청하는 다수의 클라이언트들에 대하여 공정성(fairness)을 유지할 수 있다. 도 13의 상황에서 다양한 삭제 확률에 대한 행동이 분석되고, 이에 대응되는 결과는 도 16에 도시될 수 있다. 일 실시예에서 인터레스트에 대한 서로 다른 삭제 확률들에 대하여 서로 다른 클라이언트들에 대하여 공정성이 유지되는 것을 도 16을 통해 관찰할 수 있다.
The ACK mechanism according to an exemplary embodiment may maintain fairness for a plurality of clients simultaneously requesting the same contents. In the situation shown in FIG. 13, the actions for various deletion probabilities are analyzed, and the corresponding results can be shown in FIG. It can be observed from Fig. 16 that fairness is maintained for different clients for different deletion probabilities for the intercept in one embodiment.

도 14는 일 실시예에 따라 두 개의 모바일 디바이스들 중 어느 하나의 모바일 디바이스와 액세스 포인트 간에 전송되는 인터레스트가 삭제되는 경우를 나타낸 도면이다.FIG. 14 is a diagram illustrating a case in which an interlace transmitted between a mobile device and an access point of one of two mobile devices is deleted according to an embodiment.

도 14를 참조하면, 두 개의 모바일 기기들(1410, 1430)이 액세스 포인트(1450)와 연결되어 있는 것을 볼 수 있다. 모바일 기기들(1410, 1430) 중 하나는 CCN 클라이언트(1410)이고, 다른 하나는 CCN 서버(1430)일 수 있다. 일정 확률로의 인터레스트 삭제는 CCN 서버(1430)의 인터페이스에서 수행될 수 있다.Referring to FIG. 14, it can be seen that twomobile devices 1410 and 1430 are connected to theaccess point 1450. One of themobile devices 1410 and 1430 may be aCCN client 1410 and the other may be aCCN server 1430. [ Interrupt deletion with a certain probability may be performed at the interface of theCCN server 1430.

이러한 상황에서 일 실시예에 따른 ACK 메커니즘을 사용한 경우 및 ACK 메커니즘을 사용하지 않은 경우(비-ACK 메커니즘)들 각각에 대한 테스트 결과들은 도 17에 도시된다.Test results for the case of using the ACK mechanism according to one embodiment and the case of not using the ACK mechanism (non-ACK mechanism) in this situation are shown in Fig.

상기 두 경우들은 삭제된 인터레스트가 없는 경우에 거의 동일한 방식으로 수행되므로, ACK 메시지 전송으로 인해 발생하는 오버헤드(overhead)를 확인할 수 있지만, 처리량 측면에서 유리하다.Since the above two cases are performed in almost the same manner in the absence of the deleted interleaves, it is possible to check the overhead caused by transmission of the ACK message, but it is advantageous in terms of throughput.

예를 들어, 인터레스트의 60%가 삭제된 경우, 일 실시예에 따른 ACK 메커니즘에 따르면, 인터레스트의 삭제가 없는 경우의 처리율에 비해 19.52%의 처리율을 제공할 수 있다(도 17 참조). 도 17에 도시된 바와 같이 인터레스트들의 20%만이 삭제된 경우, 비-ACK 메커니즘은 이상적인 무삭제 처리율의 20.5%를 제공할 수 있다. 또한, 비-ACK 메커니즘은 인터레스트들이 20% 이상 삭제된 경우, 파일 다운로드 완료에 실패할 수 있다.For example, when 60% of the interleaves are deleted, according to the ACK mechanism according to an embodiment, it is possible to provide a throughput of 19.52% compared to the case where there is no deletion of the interlace (see FIG. 17). If only 20% of the interrests are deleted, as shown in FIG. 17, the non-ACK mechanism can provide 20.5% of the ideal unprocessed throughput. In addition, the non-ACK mechanism may fail to complete the file download if the interrests are deleted by 20% or more.

PIT 엔트리에 대한 STALE 플래그 및 PIT 엔트리 타이머의 시작의 도입 결과, 필요한 메모리의 전반적인 증가가 있을 수 있다. ACK 메커니즘에서의 높은 처리율을 고려할 때 메모리의 증가는 수용할만하다.
As a result of introducing the STALE flag for the PIT entry and the start of the PIT entry timer, there may be an overall increase in memory required. Considering the high throughput in the ACK mechanism, the increase in memory is acceptable.

도 15은 도 12에 도시된 경우에 대하여 일실시예에 따른 ACK 메커니즘을 사용한 경우 및 ACK 메커니즘을 사용하지 않은 경우의 처리율 비교 결과를 나타낸 그래프이다.FIG. 15 is a graph illustrating a throughput comparison result in the case shown in FIG. 12 when the ACK mechanism according to an embodiment is used and when the ACK mechanism is not used.

도 15에서는 각 노드에서 세 개의 중복 인터레스트들이 Non-ACK 메커니즘을 통해 전송되도록 허용할 수 있다.In Figure 15, three redundant interlaces at each node may be allowed to be transmitted via the Non-ACK mechanism.

도 12에 도시된 상황으로부터 획득된 결과는 컨텐츠 중심 네트워크에서 일 실시예에 따른 ACK 메커니즘 및 두 개의 다른 ACK 메커니즘 간에 비교될 수 있다.The results obtained from the situation shown in FIG. 12 can be compared between the ACK mechanism according to an embodiment and two different ACK mechanisms in the content-based network.

제1 Non-ACK 메커니즘에서 최대 중복 인터레스트는 3 개이고, 제2 Non-ACK 메커니즘에서 최대 중복 인터레스트는 10000개일 수 있다.In the first non-ACK mechanism, there are three maximum redundant interrests, and in the second non-ACK mechanism, the maximum redundant interrests may be 10,000.

일 실시예에 따른 ACK 메커니즘에 대한 처리율을 나타내는 그래프 A에서 0.5의 인터레스트 삭제 확률, 및 200Mbps의 처리율이 달성된 것을 관찰할 수 있다. 반면에, 0.3의 인터레스트 삭제 확률의 최대 중복 인터레스트 개수 3개를 가지는 Non-ACK 메커니즘에 대한 그래프 B에서 처리율은 그래프에 나타난 바와 같이 O으로 내려간다.It can be seen that a probability of an interlace deletion of 0.5 and a throughput of 200 Mbps are achieved in the graph A showing the throughput for the ACK mechanism according to an embodiment. On the other hand, in graph B for the non-ACK mechanism with a maximum number of three interleaving of the interlace deletion probability of 0.3, the throughput goes down to O as shown in the graph.

또한, 최대 중복 인터레스트 개수 10000개를 가지는 Non-ACK 메커니즘에 대한 그래프 C에서 처리율은 그래프에 보여지는 바와 같이 0.5의 인터레스트 삭제 확률로 매우 낮음을 알 수 있다.
Also, in the graph C for the non-ACK mechanism having the maximum number of redundant interrupts of 10000, the throughput is very low, as shown in the graph, with a probability of dropping an interlace of 0.5.

도 16는 노드들의 개수 증가를 통해 확률을 변화시키는 도 13에 도시된 경우에 대한 처리율 비교 결과를 나타낸 그래프이다.FIG. 16 is a graph showing the throughput comparison result for the case shown in FIG. 13 in which the probability is changed by increasing the number of nodes.

도 16에 도시된 그래프로부터, 도 13에 도시된 모든 CCN 클라이언트들이 서로 다른 인터레스트 삭제 확률들(drop probabiliites)에 대하여 유사한 처리량을 달성해 왔음을 관찰할 수 있다. 그래프에 나타난 바와 같이, 인터레스트의 삭제 확률 제로(0)부터 인터레스트 삭제 확률(0.4)까지에 대응되는 처리율은 모든 CCN 클라이언트들에 대하여 선형일 수 있다. 처리율은 모든 CCN 클라이언트들에 대하여 동일하게 유지될 수 있다.From the graph shown in FIG. 16, it can be observed that all the CCN clients shown in FIG. 13 have achieved similar throughputs for different intra-probe deletion probabilities. As shown in the graph, the throughput corresponding to the intercept deletion probability (0) to the intercept deletion probability (0.4) may be linear for all CCN clients. The throughput can remain the same for all CCN clients.

도 16에서 인터레스트에 대한 서로 다른 삭제 확률들에 대하여도 서로 다른 클라이언트들에서 공정성이 유지됨을 알 수 있다.
In FIG. 16, fairness is maintained in different clients for different deletion probabilities for the interlace.

도 17은 도 14에 도시된 경우에 대하여 일실시예에 따른 ACK 메커니즘을 사용한 경우 및 ACK 메커니즘을 사용하지 않은 경우의 처리율 비교 결과를 나타낸 그래프이다.FIG. 17 is a graph showing the throughput comparison result when the ACK mechanism according to an embodiment is used and when the ACK mechanism is not used with respect to the case shown in FIG. 14. FIG.

도 17에서, 그래프 A는 일 실시예에 따른 ACK 메커니즘에 대한 처리율을 나타내고, 그래프 B는 Non-ACK 메커니즘에 대한 처리율을 나타낸다.In FIG. 17, Graph A represents the throughput for the ACK mechanism according to one embodiment, and Graph B represents the throughput for the Non-ACK mechanism.

그래프 A로부터, ACK 메커니즘을 사용하여 0.6의 삭제 확률으로 19.25%의 처리율이 달성되는 반면에, 그래프 B에서 Non-ACK 메커니즘을 사용하여 0.2의 삭제 확률로 20%의 처리율이 달성되는 것을 볼 수 있다. 그래프 B에서, 삭제 확률이 0.2를 초과하는 경우 처리율이 달성되지 않는 것을 관찰할 수 있다.
From the graph A, it can be seen that a throughput of 19.25% is achieved with an erasure probability of 0.6 using the ACK mechanism while a 20% throughput with a erasure probability of 0.2 is achieved using the Non-ACK mechanism in graph B . In graph B, it can be observed that the throughput is not achieved when the deletion probability exceeds 0.2.

도 18은 일 실시예에 따른 노드의 블록도이다.18 is a block diagram of a node according to one embodiment.

도 18을 참조하면, 일 실시예에 따른 노드(1800)는 수신부(1810), 처리부(1820), 전송부(1830)를 포함한다. 노드(1800)는 컨텐츠 스토어(CS)(1840), PIT(1850), 및 FIB(1860)를 더 포함할 수 있다.18, anode 1800 according to one embodiment includes areceiving unit 1810, aprocessing unit 1820, and atransmitting unit 1830. Thenode 1800 may further include a content store (CS) 1840, aPIT 1850, and aFIB 1860.

수신부(1810)는 컨텐츠 중심 네트워크에서 이전 노드로부터 컨텐츠를 요청하는 제1 인터레스트를 수신한다.Thereceiver 1810 receives a first request for content from a previous node in the content-centric network.

처리부(1820)는 제1 인터레스트에 응답하여, 제1 인터레스트의 수신을 나타내는 제1 ACK 메시지를 생성한다.Theprocessing unit 1820, in response to the first interlace, generates a first ACK message indicating reception of the first interlace.

전송부(1830)는 이전 노드에게 제1 ACK 메시지를 전송한다.Thetransmitting unit 1830 transmits the first ACK message to the previous node.

컨텐츠 스토어(CS)(1840)는 컨텐츠를 저장한다. 처리부(1820)는 전송부(1830)가 제1 ACK 메시지를 전송한 후, 제1 인터레스트와 관련된 컨텐츠가 컨텐츠 스토어(1840)에 존재하지 않는 경우에 제2 인터레스트를 생성할 수 있다. 처리부(1820)는 전송부(1830)를 통해 다음 노드에게 제2 인터레스트를 전송할 수 있다.Content store (CS) 1840 stores the content. Theprocessing unit 1820 may generate the second interlace when the content related to the first interlace is not present in the contents store 1840 after thetransmitting unit 1830 transmits the first ACK message. Theprocessing unit 1820 can transmit the second interlace to the next node via thetransmitting unit 1830. [

PIT(1850)는 PIT 엔트리들을 포함한다. 처리부(1820)는 PIT(1850)에 제1 인터레스트와 관련된 PIT 엔트리를 생성하고, PIT 엔트리에 제1 인터레스트와 관련된 시퀀스 넘버를 저장할 수 있다.PIT 1850 includes PIT entries. Theprocessing unit 1820 may generate a PIT entry associated with the first interlace in thePIT 1850 and store the sequence number associated with the first interlace in the PIT entry.

처리부(1820)는 PIT(1850) 내에서 검새하고자 하는 엔트리가 존재하지 않는 경우, FIB(Forwarding Information Base)(1860)를 검색할 수 있다. 이때, 처리부(1820)는 예를 들어, 최장 프리픽스 매칭(longest prefix matching)을 기초로 프리픽스와 FIB(1860)의 엔트리에 등록된 프리픽스에 대한 정보에 대한 검색을 수행할 수 있다.Theprocessing unit 1820 may search for a forwarding information base (FIB) 1860 when there is no entry to be searched in thePIT 1850. At this time, theprocessing unit 1820 can perform a search for information on the prefix registered in the entry of theFIB 1860 and the prefix based on the longest prefix matching, for example.

처리부(1820)는 제2 인터레스트를 생성하여 다음 노드(next node)에게 전송함에 따라 ACK 타이머를 시작하고, 수신부(1810)를 통해 다음 노드로부터 제2 인터레스트에 응답한 제2 ACK 메시지를 수신한 경우에 ACK 타이머를 정지할 수 있다.Theprocessing unit 1820 generates an ACK timer by generating a second interlace and transmitting it to a next node and receives a second ACK message from the next node in response to the second interlace through thereceiver 1810 In one case, the ACK timer can be stopped.

처리부(1820)는 제2 ACK 메시지가 ACK 타이머의 만료 시까지 수신되지 않는 경우, 다음 노드에게 제2 인터레스트를 재전송하고, ACK 타이머를 일정한 백 오프 타임 아웃 값으로 다시 카운트를 시작할 수 있다.If the second ACK message is not received until the expiration of the ACK timer, theprocessing unit 1820 can resend the second interlace to the next node and start counting the ACK timer back to a constant backoff timeout value.

처리부(1820)는 다음 노드로부터 컨텐츠를 수신함에 따라 노드의 PIT 엔트리를 STALE 플래그에 의해 표시하고, PIT 엔트리에 대응하는 PIT 타이머를 시작하며, PIT 타이머가 만료되면 노드의 전파 인터레스트 테이블(PIT)에서 PIT 엔트리를 제거할 수 있다.
Upon receiving the content from the next node, theprocessing unit 1820 displays the PIT entry of the node by the STALE flag, starts the PIT timer corresponding to the PIT entry, and when the PIT timer expires, the propagation interference table (PIT) Lt; RTI ID = 0.0 > PIT < / RTI >

도 19는 일 실시예에 따른 컨텐츠 중심 네트워크에서 인터레스트의 전송을 제어하는 방법 및 시스템을 구현하는 컴퓨팅 환경을 설명하기 위한 도면이다.19 is a diagram for describing a computing environment for implementing a method and system for controlling transmission of an interlace in a content-oriented network according to an embodiment.

도시된 바와 같이 컴퓨팅 환경(1900)은 적어도 하나의 처리부(Processing Unit)(1910), 메모리(Memory)(1920), 저장부(Storage)(1930), 복수의 네트워킹 장치들(Networking Devices)(1950) 및 복수의 입출력 장치들(I/O Devices)(1940)를 포함한다.As shown, thecomputing environment 1900 includes at least oneprocessing unit 1910, amemory 1920, astorage 1930, a plurality ofnetworking devices 1950 And a plurality of input / output devices (I / O Devices) 1940.

컴퓨팅 환경(1900)은 다수의 동종 및/또는 이종의 코어, 다른 종류들의 다수의 CPU들, 특정 미디어 및 다른 가속기들로 구성될 수 있다.Thecomputing environment 1900 can be comprised of multiple homogeneous and / or heterogeneous cores, multiple CPUs of different types, specific media, and other accelerators.

처리부(1910)는 제어부(Control Unit)(1913), 및 산술 논리 유닛(Arithmetic Logic Unit; ALU)(1916)을 포함할 수 있다.Theprocessing unit 1910 may include acontrol unit 1913 and an arithmetic logic unit (ALU) 1916.

처리부(1910)는 알고리즘의 명령들을 처리할 수 있다.Theprocessing unit 1910 can process the instructions of the algorithm.

처리부(1910)는 그 처리를 수행하기 위해서 제어부(1913)로부터 명령들을 수신한다. 또한, 명령들의 실행에 관련된 논리 및 산술 연산들은 산술 논리 유닛(ALU)(1916)의 도움으로 계산된다.Theprocessing unit 1910 receives the commands from thecontrol unit 1913 to perform the processing. Further, the logic and arithmetic operations involved in the execution of the instructions are computed with the aid of an arithmetic logic unit (ALU) 1916.

처리부(1910)는 단수 또는 복수 일 수 있으며, 단일 칩 또는 복수 개의 칩들에 위치할 수 있다.Theprocessing unit 1910 may be single or multiple, and may be located on a single chip or a plurality of chips.

구현을 위해 요구되는 명령들 및 코드들은 메모리(1920) 또는 저장부(1930) 중 어느 하나 또는 둘 다에 저장될 수 있다. 실행 시에, 처리부(1910)는 명령들을 메모리(1920) 및/또는 저장부(1930)로부터 가져올 수 있고, 가져온 명령들을 실행할 수 있다.The instructions and codes required for implementation may be stored in eithermemory 1920 or instorage 1930 or both. Upon execution,processing unit 1910 may fetch instructions frommemory 1920 and / orstorage 1930 and execute the fetched instructions.

하드웨어 구현의 경우에 다양한 네트워킹 장치들(1950) 또는 외부 I/O 장치들(1940)은 네트워킹부 및 I/O 장치부를 통한 구현을 지원하는 컴퓨팅 환경에 연결될 수 있다. 실시예들은 적어도 하나의 하드웨어 장치에서 구동하고, 구성 요소들을 제어하기 위한 네트워크 관리 기능들을 수행하는 적어도 하나의 소프트웨어 프로그램을 통해 구현될 수 있다.In the case of a hardware implementation,various networking devices 1950 or external I /O devices 1940 may be coupled to a computing environment that supports implementation through the networking and I / O device portions. Embodiments may be implemented through at least one software program that runs on at least one hardware device and performs network management functions to control the components.

일 실시예에서 도시된 구성 요소들은 하드웨어 장치들 중 적어도 하나의 하드웨어 장치 및 소프트웨어 모듈의 조합이 될 수 있는 블록들을 포함할 수 있다.
The components shown in one embodiment may include blocks that may be a combination of at least one of the hardware devices and a software module.

이상에서 설명된 장치는 하드웨어 구성 요소, 소프트웨어 구성 요소, 및/또는 하드웨어 구성 요소 및 소프트웨어 구성 요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성 요소는, 예를 들어, 프로세서, 컨트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, controller, arithmetic logic unit (ALU), digital signal processor, microcomputer, field programmable array (FPA) A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG. For example, the processing apparatus may comprise a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성 요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded. The software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device , Or may be permanently or temporarily embodied in a transmitted signal wave. The software may be distributed over a networked computer system and stored or executed in a distributed manner. The software and data may be stored on one or more computer readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced. Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

1800: 노드
1810: 수신부
1820: 처리부
1830: 전송부
1840: 컨텐츠 스토어(CS)
1850: PIT(Propagating Interest Table)
1860: FIB(Forwarding Information Base)
1800: node
1810:
1820:
1830:
1840: Contents Store (CS)
1850: Propagating Interest Table (PIT)
1860: Forwarding Information Base (FIB)

Claims (22)

Translated fromKorean
컨텐츠 중심 네트워크에서 이전 노드(previous node)로부터 컨텐츠를 요청하는 제1 인터레스트(Interest)를 수신하는 단계;
상기 제1 인터레스트에 응답하여, 상기 제1 인터레스트의 수신을 나타내는 제1 ACK 메시지(ACKnowledgement message)를 생성하는 단계; 및
상기 이전 노드에게 상기 제1 ACK 메시지를 전송하는 단계
를 포함하는, 노드의 통신 방법.
Receiving a first interest requesting content from a previous node in a content-oriented network;
In response to the first interlace, generating a first acknowledgment message indicating reception of the first interlace; And
Transmitting the first ACK message to the previous node
/ RTI >
제1항에 있어서,
상기 제1 ACK 메시지를 생성하는 단계는
상기 제1 인터레스트와 관련된 고유의 시퀀스 넘버에 기초하여 상기 제1 ACK 메시지를 생성하는 단계
를 포함하는, 노드의 통신 방법.
The method according to claim 1,
The step of generating the first ACK message comprises:
Generating the first ACK message based on a unique sequence number associated with the first interlace
/ RTI >
제1항에 있어서,
상기 제1 ACK 메시지를 전송한 후, 상기 노드의 PIT(Propagating Interest Table)에 상기 제1 인터레스트와 관련된 PIT 엔트리를 생성하는 단계; 및
상기 PIT 엔트리에 상기 제1 인터레스트와 관련된 시퀀스 넘버를 저장하는 단계
를 더 포함하는, 노드의 통신 방법.
The method according to claim 1,
Generating a PIT entry related to the first interlace in a propagation interest table (PIT) of the node after transmitting the first ACK message; And
Storing a sequence number associated with the first interlace in the PIT entry
Further comprising the steps of:
제1항에 있어서,
상기 제1 ACK 메시지를 전송한 후, 상기 제1 인터레스트와 관련된 컨텐츠가 상기 노드의 컨텐츠 스토어에 존재하지 않는 경우, 제2 인터레스트를 생성하는 단계;
다음 노드(next node)에게 상기 제2 인터레스트를 전송함에 따라, ACK 타이머(acknowledgement timer)를 시작하는 단계; 및
상기 다음 노드로부터 상기 제2 인터레스트에 응답한 제2 ACK 메시지를 수신한 경우, 상기 ACK 타이머를 정지하는 단계
를 더 포함하는, 노드의 통신 방법.
The method according to claim 1,
Generating a second interleave message when a content related to the first interleaved message is not present in the content store of the node after transmitting the first ACK message;
Initiating an ACK timer by sending the second interlace to a next node; And
Stopping the ACK timer when receiving a second ACK message in response to the second interlace from the next node
Further comprising the steps of:
제4항에 있어서,
상기 제2 인터레스트를 생성하는 단계는
넌스(Nonce)를 가지는 상기 제2 인터레스트를 생성하는 단계
를 포함하는, 노드의 통신 방법.
5. The method of claim 4,
The step of generating the second interlace
Generating a second interlace having a nonce;
/ RTI >
제4항에 있어서,
상기 제2 인터레스트는 파라미터들을 포함하고,
상기 파라미터들은
상기 노드에서 상기 제2 인터레스트에 대응하는 컨텐츠의 이용 가능성(availability)에 기초하여 변경되는, 노드의 통신 방법.
5. The method of claim 4,
Wherein the second interlace comprises parameters,
The parameters
And changes at the node based on an availability of the content corresponding to the second interleave.
제4항에 있어서,
상기 제2 ACK 메시지가 상기 ACK 타이머의 만료 시까지 수신되지 않는 경우, 상기 다음 노드에게 상기 제2 인터레스트를 재전송하는 단계
를 더 포함하는, 노드의 통신 방법.
5. The method of claim 4,
And if the second ACK message is not received until expiration of the ACK timer, retransmitting the second interlace to the next node
Further comprising the steps of:
제7항에 있어서,
상기 제2 인터레스트를 재전송함에 따라, 상기 ACK 타이머를 일정한 백 오프 타임 아웃 값(back-off timeout value)으로 다시 시작하는 단계
를 더 포함하는, 노드의 통신 방법.
8. The method of claim 7,
Restarting the ACK timer with a constant back-off timeout value by retransmitting the second inter-
Further comprising the steps of:
제4항에 있어서,
상기 제2 인터레스트는
상기 제2 인터레스트를 식별할 수 있는 고유의 시퀀스 넘버와 관련되고,
상기 고유의 시퀀스 넘버는
IN 시퀀스 넘버(IN Sequence Number; ISN) 및 OUT 시퀀스 넘버(OUT Sequence Number; OSN)를 포함하는, 노드의 통신 방법.
5. The method of claim 4,
The second interlace
Associated with a unique sequence number that can identify the second interlace,
The unique sequence number
An IN Sequence Number (ISN), and an OUT Sequence Number (OSN).
제9항에 있어서,
상기 제1 인터레스트가 수신되면, 상기 노드의 PIT에 상기 IN 시퀀스 넘버를 저장하는 단계
를 더 포함하는, 노드의 통신 방법.
10. The method of claim 9,
Storing the IN sequence number in a PIT of the node when the first interlace is received
Further comprising the steps of:
제9항에 있어서,
상기 제2 인터레스트를 상기 다음 노드에게 전송할 때, 상기 노드의 PIT에 상기 OUT 시퀀스 넘버를 저장하는 단계
를 더 포함하는, 노드의 통신 방법.
10. The method of claim 9,
Storing the OUT sequence number in a PIT of the node when transmitting the second interlace to the next node
Further comprising the steps of:
제1항에 있어서,
상기 제1 ACK 메시지를 전송하는 단계는
상기 제1 인터레스트가 수신된 인커밍 페이스(incoming face)가 원거리(remote)인지 여부를 판단하는 단계; 및
상기 인커밍 페이스가 원거리로 판단되면, 상기 제1 인터레스트에 응답하여 상기 제1 ACK 메시지를 전송하는 단계
를 포함하는, 노드의 통신 방법.
The method according to claim 1,
The step of transmitting the first ACK message
Determining whether the incoming face received by the first interlace is remote; And
Transmitting the first ACK message in response to the first interlace if the incoming frame is determined to be a long distance;
/ RTI >
제12항에 있어서,
상기 인커밍 페이스가 근거리로 판단되면, 상기 제1 인터레스트에 상기 이전 노드에 의해 생성된 복제된 넌스(duplicated Nonce)가 있는지 여부를 판단하는 단계; 및
상기 복제된 넌스가 있다고 판단되는 경우, 상기 제1 인터레스트의 IN 시퀀스 넘버가 상기 노드의 PIT에 포함된 엔트리(entry)의 IN 시퀀스 넘버와 일치하는지 여부에 기초하여, 상기 제1 인터레스트를 상기 이전 노드에 의해 재전송된 인터레스트로 선언하는 단계
를 더 포함하는, 노드의 통신 방법.
13. The method of claim 12,
Determining whether there is a duplicated Nonce generated by the previous node in the first interlace if the incoming phase is determined to be a short distance; And
Based on whether or not the IN sequence number of the first interlace coincides with the IN sequence number of an entry included in the PIT of the node, Declare as an interlaced re-transmitted by the previous node
Further comprising the steps of:
제4항에 있어서,
상기 다음 노드로부터 컨텐츠를 수신함에 따라 상기 노드의 PIT 엔트리를 STALE 플래그에 의해 표시(mark)하는 단계;
상기 PIT 엔트리에 대응하는 PIT 타이머를 시작하는 단계; 및
상기 PIT 타이머가 만료되는 경우, 상기 노드의 PIT에서 상기 PIT 엔트리를 제거하는 단계
를 더 포함하는, 노드의 통신 방법.
5. The method of claim 4,
Marking the PIT entry of the node with the STALE flag upon receiving the content from the next node;
Initiating a PIT timer corresponding to the PIT entry; And
If the PIT timer expires, removing the PIT entry from the PIT of the node
Further comprising the steps of:
제14항에 있어서,
상기 PIT 타이머의 값은
상기 노드의 Round Trip Time(RTT)에 기초하여 계산되는, 노드의 통신 방법.
15. The method of claim 14,
The value of the PIT timer is
And is calculated based on a Round Trip Time (RTT) of the node.
제1항 내지 제15항 중에서 어느 하나의 항의 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록 매체.A computer-readable recording medium having recorded thereon a program for executing the method according to any one of claims 1 to 15.컨텐츠 중심 네트워크에서 이전 노드(previous node)로부터 컨텐츠를 요청하는 제1 인터레스트(Interest)를 수신하는 수신부;
상기 제1 인터레스트에 응답하여, 상기 제1 인터레스트의 수신을 나타내는 제1 ACK 메시지(ACKnowledgement message)를 생성하는 처리부; 및
상기 이전 노드에게 상기 제1 ACK 메시지를 전송하는 전송부
를 포함하는, 노드.
A receiver for receiving a first interest requesting content from a previous node in a content-oriented network;
A processing unit for generating, in response to the first interlace, a first acknowledgment message indicating reception of the first interlace; And
And transmitting the first ACK message to the previous node,
/ RTI >
제17항에 있어서,
PIT 엔트리들을 포함하는 PIT를 더 포함하고,
상기 처리부는
상기 PIT에 상기 제1 인터레스트와 관련된 PIT 엔트리를 생성하고, 상기 PIT 엔트리에 상기 제1 인터레스트와 관련된 시퀀스 넘버를 저장하는, 노드.
18. The method of claim 17,
Further comprising a PIT containing PIT entries,
The processing unit
Generating a PIT entry associated with the first interlace in the PIT and storing a sequence number associated with the first interlace in the PIT entry.
제17항에 있어서,
컨텐츠를 저장하는 컨텐츠 스토어
를 더 포함하고,
상기 처리부는
상기 전송부가 상기 제1 ACK 메시지를 전송한 후, 상기 제1 인터레스트와 관련된 컨텐츠가 상기 컨텐츠 스토어에 존재하지 않는 경우에 제2 인터레스트를 생성하여 다음 노드(next node)에게 전송하는, 노드.
18. The method of claim 17,
A content store that stores content
Further comprising:
The processing unit
And when the transmitting unit transmits the first ACK message, if the content related to the first interlace does not exist in the content store, the transmitting unit generates a second interlace and transmits the second interlace to a next node.
제19항에 있어서,
상기 처리부는
상기 제2 인터레스트를 생성하여 다음 노드(next node)에게 전송함에 따라 ACK 타이머(acknowledgement timer)를 시작하고,
상기 다음 노드로부터 상기 제2 인터레스트에 응답한 제2 ACK 메시지를 수신한 경우에 상기 ACK 타이머를 정지하는, 노드.
20. The method of claim 19,
The processing unit
Generates an ACK timer by generating the second interlace and transmitting the second interlace to a next node,
And stops the ACK timer when receiving a second ACK message from the next node in response to the second interlace.
제20항에 있어서,
상기 처리부는
상기 제2 ACK 메시지가 상기 ACK 타이머의 만료 시까지 수신되지 않는 경우, 상기 다음 노드에게 상기 제2 인터레스트를 재전송하고, 상기 ACK 타이머를 일정한 백 오프 타임 아웃 값(back-off timeout value)으로 다시 시작하는, 노드.
21. The method of claim 20,
The processing unit
If the second ACK message is not received until the expiration of the ACK timer, retransmits the second interlace to the next node and re-transmits the ACK timer to a predetermined back-off timeout value Starting node.
제20항에 있어서,
상기 처리부는
상기 다음 노드로부터 컨텐츠를 수신함에 따라 상기 노드의 PIT 엔트리를 STALE 플래그에 의해 표시(mark)하고, 상기 PIT 엔트리에 대응하는 PIT 타이머를 시작하며, 상기 PIT 타이머가 만료되면 상기 노드의 전파 인터레스트 테이블(PIT)에서 상기 PIT 엔트리를 제거하는, 노드.
21. The method of claim 20,
The processing unit
The PIT entry of the node is marked by the STALE flag upon receipt of the content from the next node, the PIT timer corresponding to the PIT entry is started, and when the PIT timer expires, Removes the PIT entry from the PIT.
KR1020150038852A2014-07-182015-03-20Communication method of node in content centric network(ccn) and nodeActiveKR102337119B1 (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
US14/803,323US10305640B2 (en)2014-07-182015-07-20Communication method of node in content centric network (CCN) and the node

Applications Claiming Priority (2)

Application NumberPriority DateFiling DateTitle
IN3541/CHE/20142014-07-18
IN3541CH20142014-07-18

Publications (2)

Publication NumberPublication Date
KR20160010293Atrue KR20160010293A (en)2016-01-27
KR102337119B1 KR102337119B1 (en)2021-12-09

Family

ID=78865943

Family Applications (1)

Application NumberTitlePriority DateFiling Date
KR1020150038852AActiveKR102337119B1 (en)2014-07-182015-03-20Communication method of node in content centric network(ccn) and node

Country Status (1)

CountryLink
KR (1)KR102337119B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
KR102218325B1 (en)*2019-10-292021-02-22숭실대학교산학협력단Mobility management method for producer mobility in information-centric networking, recording medium and device for performing the method

Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20040100964A1 (en)*2002-11-272004-05-27Robotham Robert E.System and method for detecting lost messages transmitted between modules in a communication device
US20070274267A1 (en)*1992-03-052007-11-29Qualcomm IncorporatedApparatus and method for reducing message collision between mobile stations simultaneously accessing a base station in a cdma cellular communications system
US20130060962A1 (en)*2011-09-012013-03-07Futurewei Technologies, Inc.Generalized Dual-Mode Data Forwarding Plane for Information-Centric Network
US20130282860A1 (en)*2012-04-202013-10-24Futurewei Technologies, Inc.Name-Based Neighbor Discovery and Multi-Hop Service Discovery in Information-Centric Networks

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20070274267A1 (en)*1992-03-052007-11-29Qualcomm IncorporatedApparatus and method for reducing message collision between mobile stations simultaneously accessing a base station in a cdma cellular communications system
US20040100964A1 (en)*2002-11-272004-05-27Robotham Robert E.System and method for detecting lost messages transmitted between modules in a communication device
US20130060962A1 (en)*2011-09-012013-03-07Futurewei Technologies, Inc.Generalized Dual-Mode Data Forwarding Plane for Information-Centric Network
US20130282860A1 (en)*2012-04-202013-10-24Futurewei Technologies, Inc.Name-Based Neighbor Discovery and Multi-Hop Service Discovery in Information-Centric Networks

Cited By (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
KR102218325B1 (en)*2019-10-292021-02-22숭실대학교산학협력단Mobility management method for producer mobility in information-centric networking, recording medium and device for performing the method

Also Published As

Publication numberPublication date
KR102337119B1 (en)2021-12-09

Similar Documents

PublicationPublication DateTitle
US11641387B2 (en)Timely delivery of real-time media problem when TCP must be used
CN109936510B (en) Multipath RDMA transport
US9590923B2 (en)Reliable link layer for control links between network controllers and switches
JP6282293B2 (en) Method, computer system and computer program for performing integrity check and selective deduplication based on network parameters
US9003053B2 (en)Message acceleration
CN107925674B (en) Method and apparatus for pushing data in a content-centric network (CCN)
US10798199B2 (en)Network traffic accelerator
KR100772528B1 (en) Efficient Packet Retransmission Method and Device in Wired / Wireless Networks
JP5585591B2 (en) Packet retransmission control system, method, and program
CN105721536A (en)Interest acknowledgements for information centric networking
CN103546258B (en)Method and device for data transmission
US20070291782A1 (en)Acknowledgement filtering
CN108234089B (en)Method and system for low latency communication
Dong et al.In-packet network coding for effective packet wash and packet enrichment
EP3574600A1 (en)Communication protocol packet retransmission
JP2010213150A (en)Transmitter, file distribution system, file distribution control method and file distribution control program in system
EP2876832B1 (en)Communication method and apparatus
US10305640B2 (en)Communication method of node in content centric network (CCN) and the node
US11444882B2 (en)Methods for dynamically controlling transmission control protocol push functionality and devices thereof
KR102337119B1 (en)Communication method of node in content centric network(ccn) and node
JP6802295B2 (en) Transfer device, transfer method and program
CN109792444B (en) Playout Buffering in Live Content Distribution Systems
KR100396921B1 (en)Error control method in the multicasting transmission system using repeater server
CN109155792B (en)Updating a transport stack in a content-centric network
KR101151615B1 (en) WD-based P2P data transmission method and system

Legal Events

DateCodeTitleDescription
PA0109Patent application

Patent event code:PA01091R01D

Comment text:Patent Application

Patent event date:20150320

PG1501Laying open of application
PA0201Request for examination

Patent event code:PA02012R01D

Patent event date:20200320

Comment text:Request for Examination of Application

Patent event code:PA02011R01I

Patent event date:20150320

Comment text:Patent Application

E902Notification of reason for refusal
PE0902Notice of grounds for rejection

Comment text:Notification of reason for refusal

Patent event date:20210127

Patent event code:PE09021S01D

E90FNotification of reason for final refusal
PE0902Notice of grounds for rejection

Comment text:Final Notice of Reason for Refusal

Patent event date:20210707

Patent event code:PE09021S02D

E701Decision to grant or registration of patent right
PE0701Decision of registration

Patent event code:PE07011S01D

Comment text:Decision to Grant Registration

Patent event date:20210903

PR0701Registration of establishment

Comment text:Registration of Establishment

Patent event date:20211203

Patent event code:PR07011E01D

PR1002Payment of registration fee

Payment date:20211206

End annual number:3

Start annual number:1

PG1601Publication of registration

[8]ページ先頭

©2009-2025 Movatter.jp