Named Data Networking
-
Upload
igor-jacobson -
Category
Documents
-
view
38 -
download
0
description
Transcript of Named Data Networking
Named Data NetworkingIntroduction and hands on tutorial
by Alex Afanasyev UCLA
Steve DiBenedetto CSU
GEC21
Goals for today
bull Introduce Named Data Networking (NDN)
bull Describe the project and its goals
bull Illustrate NDN concepts
bull Show how to write simple applications and now to experiment with NFD forwarder
2
Share This Presentation
What is the best way for me to share these slides with you right now
What about video What would happen if it became popular
3
Sending This Message
From C D (Dan) Mote Jr ltdmoteemailedugtDate Mon May 13 2013 at 739 PMSubject CongratulationsTo Alex Afanasyev ltalexemailedugt
Dear Dr Afanasyev
I write to inform you that you have been elected a Fellow to the National Academy of Engineering As you may understand this designation follows a process of nomination and subsequent vote by existing Fellows Congratulations
SincerelyCD Mote JrPresident-Elect National Academy of Engineering
4
Use Connected EnvironmentIoT
5
Challenges Caused By a Single Problem
Sharing Must know addressTrust Place all trust in addressIoT Know amp trust all addresses
TelephonyInternet Process1 Find the numberaddress for
the one you want to talk to2 Use that number to establish
a point-to-point connection3 Communicate
6
A Simpler Way
this_roomalextalksGEC21pptx
youtubecomvideondnvan2006
uclaboelter_hall4th_florroom412thermostat1status
Suppose your device could ask for what it wanted
7
The Web Has Named Worldrsquos Data
httpwwwyoutubecomwatchv=oCZMoY3q2uM
httpwwwyoutubecomwatchfeature=player_detailpageampv=oCZMoY3q2uMt=1736s
8
Core Idea
Use names directly at the networking level
Focus on data not host-to-host connections
Closed-loop communication
9
Forward Interest
Data
Interest Timeout
congestionflow balancesource multicastcaching
Named Data Networking
bull Leverages the strengths of the Internet addresses weaknesseso Layers efficiently atop Ethernet UDP TCP hellip
bull Naturally accommodateso Mobile deviceso Wireless and other broadcast-based link typeso Data authentication and security privacy anonymityo Policy-based forwarding routing with loops
bull With NDN we aim to show thato Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simpler
10
NDN Project
bull Project launch 92010 part of NSF FIA Program52014 part of NSF FIA-NP Program
bull Research Areas Architecture Routing Security Applications Scalable Forwarding
UCLA Van Jacobson Jeff Burke Deborah Estrin Lixia Zhang
University of Arizona Beichuan Zhang
University of California San Diego Kim Claffy Dmitri Krioukov
Colorado State University Christos Papadopoulos
University of Illinois Urbana-Champaign Tarek Abdelzaher
University of Memphis Lan Wang
University of Michigan Alex Halderman
Washington University Patrick Crowley
Northeastern University Edmund Yeh
University of Maryland Katie Shilton11
Two Packet Types
bull No addressesbull Publishers bind names to data receivers verify
12
NDN Interest Forwarding
1 Do I have this data
2 Is a request already pending
3 Which next hop might lead to the source
13
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
2
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Interest arrives at switch
2
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
3
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Goals for today
bull Introduce Named Data Networking (NDN)
bull Describe the project and its goals
bull Illustrate NDN concepts
bull Show how to write simple applications and now to experiment with NFD forwarder
2
Share This Presentation
What is the best way for me to share these slides with you right now
What about video What would happen if it became popular
3
Sending This Message
From C D (Dan) Mote Jr ltdmoteemailedugtDate Mon May 13 2013 at 739 PMSubject CongratulationsTo Alex Afanasyev ltalexemailedugt
Dear Dr Afanasyev
I write to inform you that you have been elected a Fellow to the National Academy of Engineering As you may understand this designation follows a process of nomination and subsequent vote by existing Fellows Congratulations
SincerelyCD Mote JrPresident-Elect National Academy of Engineering
4
Use Connected EnvironmentIoT
5
Challenges Caused By a Single Problem
Sharing Must know addressTrust Place all trust in addressIoT Know amp trust all addresses
TelephonyInternet Process1 Find the numberaddress for
the one you want to talk to2 Use that number to establish
a point-to-point connection3 Communicate
6
A Simpler Way
this_roomalextalksGEC21pptx
youtubecomvideondnvan2006
uclaboelter_hall4th_florroom412thermostat1status
Suppose your device could ask for what it wanted
7
The Web Has Named Worldrsquos Data
httpwwwyoutubecomwatchv=oCZMoY3q2uM
httpwwwyoutubecomwatchfeature=player_detailpageampv=oCZMoY3q2uMt=1736s
8
Core Idea
Use names directly at the networking level
Focus on data not host-to-host connections
Closed-loop communication
9
Forward Interest
Data
Interest Timeout
congestionflow balancesource multicastcaching
Named Data Networking
bull Leverages the strengths of the Internet addresses weaknesseso Layers efficiently atop Ethernet UDP TCP hellip
bull Naturally accommodateso Mobile deviceso Wireless and other broadcast-based link typeso Data authentication and security privacy anonymityo Policy-based forwarding routing with loops
bull With NDN we aim to show thato Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simpler
10
NDN Project
bull Project launch 92010 part of NSF FIA Program52014 part of NSF FIA-NP Program
bull Research Areas Architecture Routing Security Applications Scalable Forwarding
UCLA Van Jacobson Jeff Burke Deborah Estrin Lixia Zhang
University of Arizona Beichuan Zhang
University of California San Diego Kim Claffy Dmitri Krioukov
Colorado State University Christos Papadopoulos
University of Illinois Urbana-Champaign Tarek Abdelzaher
University of Memphis Lan Wang
University of Michigan Alex Halderman
Washington University Patrick Crowley
Northeastern University Edmund Yeh
University of Maryland Katie Shilton11
Two Packet Types
bull No addressesbull Publishers bind names to data receivers verify
12
NDN Interest Forwarding
1 Do I have this data
2 Is a request already pending
3 Which next hop might lead to the source
13
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
2
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Interest arrives at switch
2
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
3
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Share This Presentation
What is the best way for me to share these slides with you right now
What about video What would happen if it became popular
3
Sending This Message
From C D (Dan) Mote Jr ltdmoteemailedugtDate Mon May 13 2013 at 739 PMSubject CongratulationsTo Alex Afanasyev ltalexemailedugt
Dear Dr Afanasyev
I write to inform you that you have been elected a Fellow to the National Academy of Engineering As you may understand this designation follows a process of nomination and subsequent vote by existing Fellows Congratulations
SincerelyCD Mote JrPresident-Elect National Academy of Engineering
4
Use Connected EnvironmentIoT
5
Challenges Caused By a Single Problem
Sharing Must know addressTrust Place all trust in addressIoT Know amp trust all addresses
TelephonyInternet Process1 Find the numberaddress for
the one you want to talk to2 Use that number to establish
a point-to-point connection3 Communicate
6
A Simpler Way
this_roomalextalksGEC21pptx
youtubecomvideondnvan2006
uclaboelter_hall4th_florroom412thermostat1status
Suppose your device could ask for what it wanted
7
The Web Has Named Worldrsquos Data
httpwwwyoutubecomwatchv=oCZMoY3q2uM
httpwwwyoutubecomwatchfeature=player_detailpageampv=oCZMoY3q2uMt=1736s
8
Core Idea
Use names directly at the networking level
Focus on data not host-to-host connections
Closed-loop communication
9
Forward Interest
Data
Interest Timeout
congestionflow balancesource multicastcaching
Named Data Networking
bull Leverages the strengths of the Internet addresses weaknesseso Layers efficiently atop Ethernet UDP TCP hellip
bull Naturally accommodateso Mobile deviceso Wireless and other broadcast-based link typeso Data authentication and security privacy anonymityo Policy-based forwarding routing with loops
bull With NDN we aim to show thato Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simpler
10
NDN Project
bull Project launch 92010 part of NSF FIA Program52014 part of NSF FIA-NP Program
bull Research Areas Architecture Routing Security Applications Scalable Forwarding
UCLA Van Jacobson Jeff Burke Deborah Estrin Lixia Zhang
University of Arizona Beichuan Zhang
University of California San Diego Kim Claffy Dmitri Krioukov
Colorado State University Christos Papadopoulos
University of Illinois Urbana-Champaign Tarek Abdelzaher
University of Memphis Lan Wang
University of Michigan Alex Halderman
Washington University Patrick Crowley
Northeastern University Edmund Yeh
University of Maryland Katie Shilton11
Two Packet Types
bull No addressesbull Publishers bind names to data receivers verify
12
NDN Interest Forwarding
1 Do I have this data
2 Is a request already pending
3 Which next hop might lead to the source
13
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
2
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Interest arrives at switch
2
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
3
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Sending This Message
From C D (Dan) Mote Jr ltdmoteemailedugtDate Mon May 13 2013 at 739 PMSubject CongratulationsTo Alex Afanasyev ltalexemailedugt
Dear Dr Afanasyev
I write to inform you that you have been elected a Fellow to the National Academy of Engineering As you may understand this designation follows a process of nomination and subsequent vote by existing Fellows Congratulations
SincerelyCD Mote JrPresident-Elect National Academy of Engineering
4
Use Connected EnvironmentIoT
5
Challenges Caused By a Single Problem
Sharing Must know addressTrust Place all trust in addressIoT Know amp trust all addresses
TelephonyInternet Process1 Find the numberaddress for
the one you want to talk to2 Use that number to establish
a point-to-point connection3 Communicate
6
A Simpler Way
this_roomalextalksGEC21pptx
youtubecomvideondnvan2006
uclaboelter_hall4th_florroom412thermostat1status
Suppose your device could ask for what it wanted
7
The Web Has Named Worldrsquos Data
httpwwwyoutubecomwatchv=oCZMoY3q2uM
httpwwwyoutubecomwatchfeature=player_detailpageampv=oCZMoY3q2uMt=1736s
8
Core Idea
Use names directly at the networking level
Focus on data not host-to-host connections
Closed-loop communication
9
Forward Interest
Data
Interest Timeout
congestionflow balancesource multicastcaching
Named Data Networking
bull Leverages the strengths of the Internet addresses weaknesseso Layers efficiently atop Ethernet UDP TCP hellip
bull Naturally accommodateso Mobile deviceso Wireless and other broadcast-based link typeso Data authentication and security privacy anonymityo Policy-based forwarding routing with loops
bull With NDN we aim to show thato Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simpler
10
NDN Project
bull Project launch 92010 part of NSF FIA Program52014 part of NSF FIA-NP Program
bull Research Areas Architecture Routing Security Applications Scalable Forwarding
UCLA Van Jacobson Jeff Burke Deborah Estrin Lixia Zhang
University of Arizona Beichuan Zhang
University of California San Diego Kim Claffy Dmitri Krioukov
Colorado State University Christos Papadopoulos
University of Illinois Urbana-Champaign Tarek Abdelzaher
University of Memphis Lan Wang
University of Michigan Alex Halderman
Washington University Patrick Crowley
Northeastern University Edmund Yeh
University of Maryland Katie Shilton11
Two Packet Types
bull No addressesbull Publishers bind names to data receivers verify
12
NDN Interest Forwarding
1 Do I have this data
2 Is a request already pending
3 Which next hop might lead to the source
13
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
2
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Interest arrives at switch
2
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
3
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Use Connected EnvironmentIoT
5
Challenges Caused By a Single Problem
Sharing Must know addressTrust Place all trust in addressIoT Know amp trust all addresses
TelephonyInternet Process1 Find the numberaddress for
the one you want to talk to2 Use that number to establish
a point-to-point connection3 Communicate
6
A Simpler Way
this_roomalextalksGEC21pptx
youtubecomvideondnvan2006
uclaboelter_hall4th_florroom412thermostat1status
Suppose your device could ask for what it wanted
7
The Web Has Named Worldrsquos Data
httpwwwyoutubecomwatchv=oCZMoY3q2uM
httpwwwyoutubecomwatchfeature=player_detailpageampv=oCZMoY3q2uMt=1736s
8
Core Idea
Use names directly at the networking level
Focus on data not host-to-host connections
Closed-loop communication
9
Forward Interest
Data
Interest Timeout
congestionflow balancesource multicastcaching
Named Data Networking
bull Leverages the strengths of the Internet addresses weaknesseso Layers efficiently atop Ethernet UDP TCP hellip
bull Naturally accommodateso Mobile deviceso Wireless and other broadcast-based link typeso Data authentication and security privacy anonymityo Policy-based forwarding routing with loops
bull With NDN we aim to show thato Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simpler
10
NDN Project
bull Project launch 92010 part of NSF FIA Program52014 part of NSF FIA-NP Program
bull Research Areas Architecture Routing Security Applications Scalable Forwarding
UCLA Van Jacobson Jeff Burke Deborah Estrin Lixia Zhang
University of Arizona Beichuan Zhang
University of California San Diego Kim Claffy Dmitri Krioukov
Colorado State University Christos Papadopoulos
University of Illinois Urbana-Champaign Tarek Abdelzaher
University of Memphis Lan Wang
University of Michigan Alex Halderman
Washington University Patrick Crowley
Northeastern University Edmund Yeh
University of Maryland Katie Shilton11
Two Packet Types
bull No addressesbull Publishers bind names to data receivers verify
12
NDN Interest Forwarding
1 Do I have this data
2 Is a request already pending
3 Which next hop might lead to the source
13
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
2
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Interest arrives at switch
2
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
3
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Challenges Caused By a Single Problem
Sharing Must know addressTrust Place all trust in addressIoT Know amp trust all addresses
TelephonyInternet Process1 Find the numberaddress for
the one you want to talk to2 Use that number to establish
a point-to-point connection3 Communicate
6
A Simpler Way
this_roomalextalksGEC21pptx
youtubecomvideondnvan2006
uclaboelter_hall4th_florroom412thermostat1status
Suppose your device could ask for what it wanted
7
The Web Has Named Worldrsquos Data
httpwwwyoutubecomwatchv=oCZMoY3q2uM
httpwwwyoutubecomwatchfeature=player_detailpageampv=oCZMoY3q2uMt=1736s
8
Core Idea
Use names directly at the networking level
Focus on data not host-to-host connections
Closed-loop communication
9
Forward Interest
Data
Interest Timeout
congestionflow balancesource multicastcaching
Named Data Networking
bull Leverages the strengths of the Internet addresses weaknesseso Layers efficiently atop Ethernet UDP TCP hellip
bull Naturally accommodateso Mobile deviceso Wireless and other broadcast-based link typeso Data authentication and security privacy anonymityo Policy-based forwarding routing with loops
bull With NDN we aim to show thato Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simpler
10
NDN Project
bull Project launch 92010 part of NSF FIA Program52014 part of NSF FIA-NP Program
bull Research Areas Architecture Routing Security Applications Scalable Forwarding
UCLA Van Jacobson Jeff Burke Deborah Estrin Lixia Zhang
University of Arizona Beichuan Zhang
University of California San Diego Kim Claffy Dmitri Krioukov
Colorado State University Christos Papadopoulos
University of Illinois Urbana-Champaign Tarek Abdelzaher
University of Memphis Lan Wang
University of Michigan Alex Halderman
Washington University Patrick Crowley
Northeastern University Edmund Yeh
University of Maryland Katie Shilton11
Two Packet Types
bull No addressesbull Publishers bind names to data receivers verify
12
NDN Interest Forwarding
1 Do I have this data
2 Is a request already pending
3 Which next hop might lead to the source
13
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
2
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Interest arrives at switch
2
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
3
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
A Simpler Way
this_roomalextalksGEC21pptx
youtubecomvideondnvan2006
uclaboelter_hall4th_florroom412thermostat1status
Suppose your device could ask for what it wanted
7
The Web Has Named Worldrsquos Data
httpwwwyoutubecomwatchv=oCZMoY3q2uM
httpwwwyoutubecomwatchfeature=player_detailpageampv=oCZMoY3q2uMt=1736s
8
Core Idea
Use names directly at the networking level
Focus on data not host-to-host connections
Closed-loop communication
9
Forward Interest
Data
Interest Timeout
congestionflow balancesource multicastcaching
Named Data Networking
bull Leverages the strengths of the Internet addresses weaknesseso Layers efficiently atop Ethernet UDP TCP hellip
bull Naturally accommodateso Mobile deviceso Wireless and other broadcast-based link typeso Data authentication and security privacy anonymityo Policy-based forwarding routing with loops
bull With NDN we aim to show thato Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simpler
10
NDN Project
bull Project launch 92010 part of NSF FIA Program52014 part of NSF FIA-NP Program
bull Research Areas Architecture Routing Security Applications Scalable Forwarding
UCLA Van Jacobson Jeff Burke Deborah Estrin Lixia Zhang
University of Arizona Beichuan Zhang
University of California San Diego Kim Claffy Dmitri Krioukov
Colorado State University Christos Papadopoulos
University of Illinois Urbana-Champaign Tarek Abdelzaher
University of Memphis Lan Wang
University of Michigan Alex Halderman
Washington University Patrick Crowley
Northeastern University Edmund Yeh
University of Maryland Katie Shilton11
Two Packet Types
bull No addressesbull Publishers bind names to data receivers verify
12
NDN Interest Forwarding
1 Do I have this data
2 Is a request already pending
3 Which next hop might lead to the source
13
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
2
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Interest arrives at switch
2
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
3
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
The Web Has Named Worldrsquos Data
httpwwwyoutubecomwatchv=oCZMoY3q2uM
httpwwwyoutubecomwatchfeature=player_detailpageampv=oCZMoY3q2uMt=1736s
8
Core Idea
Use names directly at the networking level
Focus on data not host-to-host connections
Closed-loop communication
9
Forward Interest
Data
Interest Timeout
congestionflow balancesource multicastcaching
Named Data Networking
bull Leverages the strengths of the Internet addresses weaknesseso Layers efficiently atop Ethernet UDP TCP hellip
bull Naturally accommodateso Mobile deviceso Wireless and other broadcast-based link typeso Data authentication and security privacy anonymityo Policy-based forwarding routing with loops
bull With NDN we aim to show thato Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simpler
10
NDN Project
bull Project launch 92010 part of NSF FIA Program52014 part of NSF FIA-NP Program
bull Research Areas Architecture Routing Security Applications Scalable Forwarding
UCLA Van Jacobson Jeff Burke Deborah Estrin Lixia Zhang
University of Arizona Beichuan Zhang
University of California San Diego Kim Claffy Dmitri Krioukov
Colorado State University Christos Papadopoulos
University of Illinois Urbana-Champaign Tarek Abdelzaher
University of Memphis Lan Wang
University of Michigan Alex Halderman
Washington University Patrick Crowley
Northeastern University Edmund Yeh
University of Maryland Katie Shilton11
Two Packet Types
bull No addressesbull Publishers bind names to data receivers verify
12
NDN Interest Forwarding
1 Do I have this data
2 Is a request already pending
3 Which next hop might lead to the source
13
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
2
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Interest arrives at switch
2
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
3
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Core Idea
Use names directly at the networking level
Focus on data not host-to-host connections
Closed-loop communication
9
Forward Interest
Data
Interest Timeout
congestionflow balancesource multicastcaching
Named Data Networking
bull Leverages the strengths of the Internet addresses weaknesseso Layers efficiently atop Ethernet UDP TCP hellip
bull Naturally accommodateso Mobile deviceso Wireless and other broadcast-based link typeso Data authentication and security privacy anonymityo Policy-based forwarding routing with loops
bull With NDN we aim to show thato Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simpler
10
NDN Project
bull Project launch 92010 part of NSF FIA Program52014 part of NSF FIA-NP Program
bull Research Areas Architecture Routing Security Applications Scalable Forwarding
UCLA Van Jacobson Jeff Burke Deborah Estrin Lixia Zhang
University of Arizona Beichuan Zhang
University of California San Diego Kim Claffy Dmitri Krioukov
Colorado State University Christos Papadopoulos
University of Illinois Urbana-Champaign Tarek Abdelzaher
University of Memphis Lan Wang
University of Michigan Alex Halderman
Washington University Patrick Crowley
Northeastern University Edmund Yeh
University of Maryland Katie Shilton11
Two Packet Types
bull No addressesbull Publishers bind names to data receivers verify
12
NDN Interest Forwarding
1 Do I have this data
2 Is a request already pending
3 Which next hop might lead to the source
13
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
2
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Interest arrives at switch
2
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
3
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Named Data Networking
bull Leverages the strengths of the Internet addresses weaknesseso Layers efficiently atop Ethernet UDP TCP hellip
bull Naturally accommodateso Mobile deviceso Wireless and other broadcast-based link typeso Data authentication and security privacy anonymityo Policy-based forwarding routing with loops
bull With NDN we aim to show thato Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simpler
10
NDN Project
bull Project launch 92010 part of NSF FIA Program52014 part of NSF FIA-NP Program
bull Research Areas Architecture Routing Security Applications Scalable Forwarding
UCLA Van Jacobson Jeff Burke Deborah Estrin Lixia Zhang
University of Arizona Beichuan Zhang
University of California San Diego Kim Claffy Dmitri Krioukov
Colorado State University Christos Papadopoulos
University of Illinois Urbana-Champaign Tarek Abdelzaher
University of Memphis Lan Wang
University of Michigan Alex Halderman
Washington University Patrick Crowley
Northeastern University Edmund Yeh
University of Maryland Katie Shilton11
Two Packet Types
bull No addressesbull Publishers bind names to data receivers verify
12
NDN Interest Forwarding
1 Do I have this data
2 Is a request already pending
3 Which next hop might lead to the source
13
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
2
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Interest arrives at switch
2
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
3
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
NDN Project
bull Project launch 92010 part of NSF FIA Program52014 part of NSF FIA-NP Program
bull Research Areas Architecture Routing Security Applications Scalable Forwarding
UCLA Van Jacobson Jeff Burke Deborah Estrin Lixia Zhang
University of Arizona Beichuan Zhang
University of California San Diego Kim Claffy Dmitri Krioukov
Colorado State University Christos Papadopoulos
University of Illinois Urbana-Champaign Tarek Abdelzaher
University of Memphis Lan Wang
University of Michigan Alex Halderman
Washington University Patrick Crowley
Northeastern University Edmund Yeh
University of Maryland Katie Shilton11
Two Packet Types
bull No addressesbull Publishers bind names to data receivers verify
12
NDN Interest Forwarding
1 Do I have this data
2 Is a request already pending
3 Which next hop might lead to the source
13
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
2
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Interest arrives at switch
2
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
3
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Two Packet Types
bull No addressesbull Publishers bind names to data receivers verify
12
NDN Interest Forwarding
1 Do I have this data
2 Is a request already pending
3 Which next hop might lead to the source
13
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
2
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Interest arrives at switch
2
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
3
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
NDN Interest Forwarding
1 Do I have this data
2 Is a request already pending
3 Which next hop might lead to the source
13
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
2
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Interest arrives at switch
2
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
3
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
2
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Interest arrives at switch
2
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
3
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
1
2
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Interest arrives at switch
2
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
3
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
3
Interest packet arrives1 Do my buffers contain
xkcdcom9491 2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
I xkcdcom9491
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
3
4
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
3
4
5
Data packet arrives1 Store data packet in buffer2 Send packet out any matching
interfaces on the pending interest list
3 Remove pending entries
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Enterprise Network
Internet
NDN ForwardingIllustrated
Emit Interest xkcdcom94911
2
3
Interest arrives at switch
12
Interest arrives at gateway
4 Laptop moves to WiFi
5 Data arrives
Interest resent6
3
4
5
I xkcdcom9491
Interest packet arrives1 Do my buffers contain
xkcdcom9491 Yes send it2 Is a pending request for it in
flight3 Where should I forward the
interest Add arriving interface to the pending interest list
Finished
6
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
Forwarding logic in IP1 Extract destination
address2 Find longest matching
prefix in route table3 Forward packet out
matching interface
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Internet
IP Nodes and Routes
wustledu1282520016
googlecom741250016
xkcdcom7226192019hosted by voxelnet
1 2
34
Matching Prefix
Link
12825216 1
722619219
2
7412516 3
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Internet
NDN Nodes and Routes
wustledu
googlecom
xkcdcomhosted by voxelnet
1 2
34
Matching Prefix
Link
wustledu 1
xkcdcom 2 3
googlecom1 3 4
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Questions
bull Can NDN efficiently support host-to-host patterns
bull Can NDN efficiently support user-specific data and services
bull Can you count clicks and ad impressions in NDN
bull Can you efficiently route all those names
bull Can you scale the forwarding plane
bull Can you prove security and privacy properties
Yes Yes mostly23
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Conclusion (12)
bull Growing evidence that with NDNo Communication is more secureo Infrastructure is more efficiently utilizedo Applications are simplero New things are possible
24
httpnamed-datanet
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Conclusion (22)
bull In coming yearso Growing commercial interest and experimentationo Deployments in greenfields IP trouble spots
ndash IoT building automation healthcare vehicular
bull Research community is growingo We share an open-source code base with related projects and
groups moving forwarding in Europe and Asiao NDN Consortium launched this month already includes
14 universities 5 for-profit corporations and 1 non-profit
25
httpnamed-datanet
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
NDN Components
26
Apps Routing Repo
NFD
Links and Tunnels
Libraries
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
27
NDN Libraries
bull All libraries now reflect fundamental architectural abstractions directly in objects and wire format manipulation is abstractedo Name Componento Interest Selectorso Data MetaInfo SignatureInfo SignatureValue KeyLocatoro Faceo KeyChain Validator
bull Multiple library effortso NDN-CXX ldquoC++ for eXtended eXperimentationrdquo
bull C++ (soon to be C++11) Boost (Asio Filesystem )o NDN-CCL ldquoCommon Client Librariesrdquo
bull C++bull Python (2 and 3)bull JavaScript (browser and nodejs)bull Java
o Enables diversity of coding choiceo Drives us towards specification (and not just implementation)
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
28
Security Support
Signing KeyChain
Manage security
credentials
Sign Data and Interests
Decrypt payload
Validation Validator classes
Compile-time trust policy
Run-time trust policy
httpnamed-datanetdocndn-cxx020tutorialssecurity-libraryhtmlsigning
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
29
Supported Security Features
bull Asymmetric cryptographyo RSAo ECDSA
bull Symmetric cryptographyo AESo HMAC
bull Trivial cryptographyo SHA256 digest
bull Signingverification granularityo Data packeto Set of Data packets
work in progress
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
30
NDN Platform
bull Provide a coherent usable and well-documented ldquoplatformrdquo for exploring NDN in practical applications ndash for the NDN project team and external users
bull Use a release ldquoheartbeatrdquo to stimulate interoperability testing and discussion of how the various moving parts work together
bull Along the way improve access to and consistency of various NDN code projects
bull Open and lightweight process with no unrealistic centralization or over-management but clear ownership of each component project
bull Managed nodes on the testbed run the Platform
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
31
NDN Platform 03 (August 2014)
bull NFD NDN Forwarding Daemon version 020 (1)bull ndn-cxx library version 020
o The NDN C++ library with eXperimental eXtensions (CXX)o The ndnsec security tools to manage security identities and certificates
bull NDN-CCL - NDN Common Client libraries suite version 03o NDN-CPP C++ C libraryo PyNDN2 Python libraryo NDN-JS JavaScript library (with Nodejs support)o jNDN Java library (preliminary)
bull NLSR - Named Data Link State Routing Protocol version 010bull repo-ng - next generation of NDN repository version 010bull ndn-tlv-ping - ping application for NDN version 020bull ndn-traffic-generator - traffic generator for NDN version 020bull ndndump - packet capture and analysis tool for NDN version 05
bull Partial binary package support on Ubuntu MacOS X othershellip
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
32
Community Outreach
bull One public Github repo for all codeo httpgithubcomnamed-data
bull Public Redmine with Wiki documentation for componentso httpredminenamed-datanet
bull Components websiteo NFD httpnamed-datanetdocNFDo ndn-cxx httpnamed-datanetdocndn-cxxo NLSR httpnamed-datanetdocNLSR
bull NDN-CCL httpnamed-datanetdocNDN-CCL
bull Code reviewo httpgerritnamed-datanet
bull Technical reports and NDN technical memoso httpnamed-datanetpublicationstechreports
bull Mailing listso httpnamed-datanetcodebaseplatformsupportmailing-lists
Open to contributors and collaborators
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-
Ready for the Action
- Named Data Networking
- Goals for today
- Share This Presentation
- Sending This Message
- Use Connected EnvironmentIoT
- Challenges Caused By a Single Problem
- A Simpler Way
- The Web Has Named Worldrsquos Data
- Core Idea
- Named Data Networking (2)
- NDN Project
- Two Packet Types
- NDN Interest Forwarding
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- IP Nodes and Routes
- IP Nodes and Routes (2)
- NDN Nodes and Routes
- Questions
- Conclusion (12)
- Conclusion (22)
- NDN Components
- NDN Libraries
- Security Support
- Supported Security Features
- NDN Platform
- NDN Platform 03 (August 2014)
- Community Outreach
- Ready for the Action
-