Skip to content

NekoWilliams/nlsr-fc-test

Repository files navigation

nlsr-sample-k8s

Overview

This repository provides a sample Kubernetes (K8s) deployment script for Named Data Networking (NDN) using NDN Link State Routing Protocol (NLSR).

nlsr-sample-k8s.png

Deployment

  1. Clone the repository and navigate to the project directory:
git clone https://github.com/hydrokhoos/nlsr-sample-k8s.git
cd nlsr-sample-k8s
  1. Execute the deployment script:
./create.sh
  1. Check NLSR status on a specific node:
kubectl exec deployment/ndn-node1 -- /bin/bash -c "nlsrc routing"
Routing Table:
  Destination: /ndn/jp/%C1.Router/node4
    NextHop(Uri: tcp4://10.103.50.35:6363, Cost: 25)
    NextHop(Uri: tcp4://10.98.159.39:6363, Cost: 75)
  Destination: /ndn/jp/%C1.Router/node3
    NextHop(Uri: tcp4://10.103.50.35:6363, Cost: 50)
    NextHop(Uri: tcp4://10.98.159.39:6363, Cost: 50)
  Destination: /ndn/jp/%C1.Router/node2
    NextHop(Uri: tcp4://10.98.159.39:6363, Cost: 25)
    NextHop(Uri: tcp4://10.103.50.35:6363, Cost: 75)

Provide Content

  1. Create content (e.g. /sample.txt)
kubectl exec deployment/ndn-node1 -- /bin/bash -c "echo 'Hello, world!' > /sample.txt"
  1. Advertise content using NLSR
kubectl exec deployment/ndn-node1 -- /bin/bash -c "nlsrc advertise /sample.txt"
  1. Provide content
kubectl exec deployment/ndn-node1 -- /bin/bash -c "ndnputchunks /sample.txt < /sample.txt"
  1. Request content from another node
kubectl exec deployment/ndn-node3 -- /bin/bash -c "ndncatchunks /sample.txt"
All segments have been received.
Time elapsed: 0.000433459 seconds
Segments received: 1
Transferred size: 0.014 kB
Goodput: 258.386606 kbit/s
Congestion marks: 0 (caused 0 window decreases)
Timeouts: 0 (caused 0 window decreases)
Retransmitted segments: 0 (0%), skipped: 0
RTT min/avg/max = 0.394/0.394/0.394 ms
Hello, world!

Undeploy

To delete the deployments and associated resources:

kubectl delete -f ndn-node1.yaml
kubectl delete -f ndn-node2.yaml
kubectl delete -f ndn-node3.yaml
kubectl delete -f ndn-node4.yaml

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages