Project

General

Profile

Repo Protocol Specification v02 » History » Revision 4

Revision 3 (weijia yuan, 02/01/2018 03:53 PM) → Revision 4/16 (weijia yuan, 02/01/2018 04:18 PM)

Repo Protocol Specification 
 =========================== 

 A Repo supports the network by preserving content and responding to Interests requesting content that it holds. A Repo can exist in any node, and is recommended if applications in that node need to preserve data. The NDN repo protocol is a specification of repo operations including reading, insertion and deletion of data objects in repo. 

 Repo semantics is based on Signed Interests with signed components at the end of the name and basic common semantics of NDN. 

 When some operation of repo including insertion and deletion of data objects is requested, a command interest is sent. The command interest is the interest as command of insertion and deletion and signed as form of command interest for access control. The repo will response the command with the data object. 

 The repo protocol can be categorized in two sections of Data packet retrieval and Data packet management. Repo-ng implements a set of repo management protocols to insert and delete data in different ways. 

 ## Repo Management Protocols 

 - **[[Repo Command]]** defines the request and response formats of commands that can insert or remove data from repo, and how these commands should be signed and authenticated. 
 - **[[Basic Repo Insertion Protocol]]** defines format of insertion of a single or collection of Data packets.    In addition to the basic protocol, repo-ng implements several other insertion protocols: 

     + [[Insertion Protocol]] (to be added) **[[Watched Prefix Insertion Protocol]]** defines a protocol to insert continuously generated data 
     + [[Tcp **[[Tcp Bulk Insert Repo Insertion Protocol]] Protocol]]** defines a simple TCP-based protocol to insert Data packets in bulk (e.g., from a producer on the same host) 

 - [[Repo **[[Repo Deletion Protocol]] Protocol]]** defines format of deletion of a single or collection of Data packets under certain prefix  


 ## Data packet retrieval from repo