consumer producer api for named data networking
play

Consumer Producer API for Named Data Networking Ilya Moiseenko 1 - PowerPoint PPT Presentation

Consumer Producer API for Named Data Networking Ilya Moiseenko 1 How do we develop NDN apps? How do we develop NDN apps? 2 Lib Libraries: NDN cxx, NDN cpp i NDN NDN Figure 1. Interest / Data API 3 Can we have more


  1. Consumer ‐ Producer API for Named Data Networking Ilya Moiseenko 1

  2. How do we develop NDN apps? How do we develop NDN apps? 2

  3. Lib Libraries: NDN ‐ cxx, NDN ‐ cpp i NDN NDN Figure 1. Interest / Data API   3

  4. Can we have more effective API ? Can we have more effective API ? 4

  5. IP NDN socket API Application Application Application Transport Network Network network layer API Socket API offers: Point ‐ to ‐ point channel • Reliable transmission • Flow / congestion control / g • Segmentation • Ordering and reassembly • 5

  6. Closer look at NDN Application Application Library Library Library Library Network Challenges Integration of libraries requires near ‐ expert knowledge of NDN I t ti f lib i i t k l d f NDN 6

  7. Is it possible? generic API Application Application Library Library Library Library Network To assist non ‐ expert application developers fully exploiting NDN capabilities without a deep understanding of its network layer machinery. 7

  8. Point ‐ to ‐ point model (IP) point ‐ to ‐ point channel Server IP network IP network 1. listen() 3. accept() Client 2. connect() 5. read() 4 send() 4. send() Data transfer parameters are the property of the communication channel f th i ti h l 8

  9. Socket abstraction Keeps the state of communication channel Keeps the state of communication channel • Protocol machinery in use • state : listen/connect read/write • state : listen/connect, read/write • send and receive buffers • send and receive timers • send and receive timers • TCP maximum segment size • …. 9

  10. Distribution model (NDN) not a channel Producer NDN 1. ??? network network 3. ??? 2. ??? Consumer What are the parameters (state) of information distribution? p ( ) What are the API calls ? 10

  11. Consumer ‐ specific parameters 1. Selectors 2. Security 2. Security Data verification – Securing Interests – 3 3. Fetching F t hi Reliable transmission – Sequencing – 4. Processing Send / receive buffers – Reassembly Reassembly – 11

  12. Producer ‐ specific parameters 1. Security Securing Data Securing Data – Interest verification – 2. Demultiplexing Namespace (prefix) registration – 3. Processing Content segmentation C t t t ti – Send / receive buffers – 4. Caching 4. Caching 12

  13. New programming abstractions 1. Consumer context 2. Producer context Context — keeps the state of data transfer under a specific name prefix under a specific name prefix 13

  14. Consumer context Consumer context • Associates NDN name prefix with consumer ‐ A i t NDN fi ith specific data transfer parameters • Controls how Interests are expressed and how C t l h I t t d d h returning Data packets are processed 14

  15. Producer context Producer context • Associates NDN name prefix with producer ‐ A i fi i h d specific data transfer parameters • Controls how data is produced and secured, and how Interests are demultiplexed. 15

  16. Summary Summary Consumer and producer contexts Consumer and producer contexts • Offer a richer set of functions than sockets • are tailored for NDN distribution model il d f di ib i d l • include communication protocols for faster app development • will include versioning protocols g p 16

  17. Thank you! Thank you! See the poster to get more info! 17

Recommend


More recommend