Post on 18-Apr-2018
ENSC 427: COMMUNICATION
NETWORKS SPRING 2013
Delay Tolerant
Network Protocol
Team 1: George Chang gkchang@sfu.ca Clark Hsieh cha55@sfu.ca Nelson Meira njm5@sfu.ca
1
Overview
1. Introduction a. Related work
2. Technical details
3. NS2 a. Simulation Results
b. Discussion
4. Conclusion a. References
Delay Tolerant Network Protocol Team 1: George Chang gkchang@sfu.ca Clark Hsieh cha55@sfu.ca Nelson Meira njm5@sfu.ca
2
1. INTRODUCTION
• Low delay, low disruption network on earth!
• TCP is the backbone of most of our internet traffic
• What if we want to send data reliably, efficiently over long and unreliable links?
3
Introduction: Motivation Communication in space
Research probs on earth
IP devices in a wider range of application
4
Scenario Imagine: 1. You are on Mars enjoying Breakfast 2. You want to go to CNN.com on your device 3. Types in URL 4. Resolving DNS 5. awaiting reply 6. waiting for the handshake end to end connection 7. wait... 8. wait... 9. And your Martians friends are here for lunch 10. WHAT ??? 5
o Designed with interplanetary communication in mind
o Allows long or variable delays and
travel distances wirelessly o Tolerates high error rates
o Permits Intermittent connectivity o Builds on top of current networking
protocols for compatibility
Delay and Disruption Tolerant Network
6
Related Works- Research Groups • National Aeronautics and Space Administration • DTN Research Group (DTNRG) • Internet Engineering Task Force • Space Internetworking Center • Defense Advanced Research Projects Agency
7
Related Work - Experiments ZebraNet
- Movement data
- GPS collars
Tactical Military Network
- Estimated 30% loss
- No constant stable connection
- Nodes are mobile,
9
Related Work - Simulation Done in OMNET++
Stephen Franell/ Vinny Cahill
Modeled sensors in a spacecraft, antennas, and power supply
The ONE
Simulation tool
Various DTN routing algorithms
Visualization tools
10
DTN- Ground Stations
Canberra Australia
Madrid Spain
Gladstone California
• Supports Deep Space DTN 24/7, up to 70 m diameter dish
• 120+120+120 = 360
11
NASA & European Space Agency (ESA) Nov. 8, 2012
• First Demonstration of DTN Protocol developed by NASA to control a LEGO Robot
• Darmstadt, Germany to International Space Station
12
3. Technical Detail Issues with massive delay and connectivity
Additional protocol to fix certain problems
Eliminates end to end retransmission
14
DTN - Bundling/ Fragmentation • Store and forward • Using a custody transfer model • Each node take over in delivering downstream
15
DTN • Hop-to-Hop much like our postage system • Immediate knowledge of message properties • Opportunistic Contacts • Scheduled Contacts • Node to Node Retransmission • Priority of Delivery
18
Additional Technical Details Security
• Bundle Authentication Block (BAB):
• Payload Integrity Block (PIB):
• Payload Confidentiality Block (PCB):
• Extension Security Block (ESB):
19
3. IMPLEMENTATION DETAILS • Compare DTN with TCP • Determine efficient bundle size
• We made simple assumptions o MAC/802_11 o WirelessPhy o TwoRayGround o Antenna/OmniAntenna
20
NS2 - Topology Configuring the hierarchical addresing: $ns_ node-config -addressType hierarchical 3 8 8 8 set domain_num 2 lappend cluster_num 3 1
lappend eilastlevel 1 1 1 4
AddrParams set domain_num_ $domain_num AddrParams set cluster_num_ $cluster_num AddrParams set nodes_num_ $eilastlevel
Wired Domain
Wireless Domain
3 Clusters, each with 1 Node
1 Clusters, with 3 Nodes
Assignment: D.C.N eg. set l(2) [ $ns_ node 0.2.0 ]
Node l(2) is in wired domain, in the third cluster, and in the first (and only) node of that cluster 21
NS2- Code set up - BaseStation $ns_ node-config -adhocRouting $opt
(adhocRouting) \ -llType $opt(ll) \ -macType $opt(mac) \ -ifqType $opt(ifq) \ -ifqLen $opt(ifqlen) \ -antType $opt(ant) \ -propInstance [new $opt
(prop)] \ -phyType $opt(netif) \
-channel [new $opt(chan)] \ -topoInstance $topo \ -wiredRouting ON \ -agentTrace OFF \ -routerTrace ON \ -macTrace OFF \ -phyTrace OFF \ -movementTrace OFF \ -eotTrace OFF \ -toraDebug OFF
Settings will determine output in .tr files
22
ns-2 - dtn-agent usage set dtn0 [new Agent/DTN]
#$ns_ attach-agent $l(0) $tcp0 $ns_ attach-dtnagent $l(0) $dtn0
#$ns_ connect $tcp0 $tcpSink0 $ns_ connect-dtn $dtn0 $dtnSink
# dtn Base Station $dtnBS set nIsBSNode_ 1
explicitly set to tell the DTN agent to employ RV mechanism
23
wired node base-station wireless node
w1
$w(0) base-station [AddrParams addr2id [$BS(0) node-addr]] $w(0) base-station [AddrParams addr2id [$BS(1) node-addr]] $w(1) base-station [AddrParams addr2id [$BS(0) node-addr]] $w(1) base-station [AddrParams addr2id [$BS(1) node-addr]] $ns_ attach-dtnagent $w(0) $dtn1 $ns_ attach-dtnagent $w(1) $dtn2 $ns_ connect-dtn $dtnBS0 $dtn1
w0
BS0 BS1
25
NS2 Trace - $ns_ use newtrace r -t 14.370211482 -Hs 6 -Hd -2 -Ni 6 -Nx 300.00 -Ny 400.00
-Nz 0.00 -Ne -1.000000 -Nl RTR -Nw --- -Ma 0 -Md 0 -Ms 0 -Mt 0 -Is 4194306.2 -Id 4194305.2 -It ack -Il 40 -If 1 -Ii 534 -Iv 32 -Pn tcp -Ps 10 -Pa 0 -Pf 0 -Po 0
f -t 14.370211482 -Hs 6 -Hd 4194305 -Ni 6 -Nx 300.00 -Ny 400.00 -Nz 0.00 -Ne -1.000000 -Nl RTR -Nw --- -Ma 0 -Md 0 -Ms 0 -Mt 0 -Is 4194306.2 -Id 4194305.2 -It ack -Il 60 -If 1 -Ii 534 -Iv 32 -Pn tcp -Ps 10 -Pa 0 -Pf 0 -Po 0
26
NS2 Trace - Awk Script #!/bin/bash
#run the tcl, list application receive time #strip the N ns clark-dtn.tcl > dtn-clark-running-log.txt read -p "Press [enter] to continue to grep application"; grep "Application" dtn-clark-running-log.txt; read -p "Press [enter] to continue to awk data"; awk '$1 !="N" {print} ' dtn-clark.tr > dtn-clark-output.txt; awk '$1 =="N" {print} ' dtn-clark.tr > dtn-clark-wireless-energy.txt; #separating the energy from the .tr file. then graphs it nodeID1=4194305; nodeID2=4194306; echo $nodeID1 "node 1"; echo $nodeID2 "node 2"; echo "creating graphing files node1Graph.tr and node2Graph.tr" awk '$5 == 4194305 {print $3, $7} ' dtn-clark-wireless-energy.txt > node1Graph.tr; awk '$5 == 4194306 {print $3, $7} ' dtn-clark-wireless-energy.txt > node2Graph.tr; #echo "graphing results now"; #code here for Xgraph using node1Graph.txt and node2Graph.txt #xgraph node1Graph.tr -geometry 800x400 & #xgraph node2Graph.tr & #echo "results plotted"; echo "Script is Finish Running" ; echo "";
27
NS2 Trace - Data Output
-‐ 5.123908 0 1 DTN 1540 -‐-‐-‐-‐-‐-‐-‐ 1 0.0.0.0 0.1.0.1 -‐1 1629 0 3
510000... + 5.123916 3 1 ack 40 -‐-‐-‐-‐-‐-‐-‐ 1 1.0.0.2 0.1.0.2 135 1630
-‐ 5.123908 DTN 1540 0.0.0.0 0.1.0.1 + 5.123916 ack 40 1.0.0.2 0.1.0.2
extract columns
From node... To node... Pkt Size Selected Data
Raw Data
Pkt Type Time Event
28
NS2 Trace - $ns_ use newtrace Event Type s, r, d, f - send, receive, drop, and forward
General Tag
-t global time -t * global setting
Node Property -Ni node id -Nx, -Ny, -Nz
-Ne -Nl
-Nw
29
NS2 Trace - $ns_ use newtrace Event Type s, r, d, f - send, receive, drop, and forward
General Tag
-t global time -t * global setting
Node Property -Ni -Nx, -Ny, -Nz
-Ne -Nl
-Nw
"END" - end simulation "COL" - collision "DUP" - duplicate "ERR" - packet error "RET" - retry count exceeded "STA" - invalid state "BSY" - busy "NRTE" - no route available "LOOP" - routing loop "TTL" - TTL reach zero "TOUT" - packer expired "CBK" - mac callback "IFQ" - no buffer space in IFQ "ARP" - dropped by ARP "OUT" - not in routing domain
30
NS2 Trace - $ns_ use newtrace Event Type s, r, d, f - send, receive, drop, and forward
General Tag
IP level (packet) -Is source:port -Id destination:port
-It packet type -Il packet size
-If flow id -Ii unique ID
-Iv ttl value
31
NS2 Trace - $ns_ use newtrace Event Type s, r, d, f - send, receive, drop, and forward
General Tag
Next Hop Info -Hs id for this node -Hd id for next hop
Packet info (MAC) -Ma duration -Md dst ethaddr
-Ms src eth addr -Mt eth type
Application (info) ... ...
32
NS2 Trace - $ns_ use newtrace More info on the traces can be found on page 161 of NS2 -
documentation.
http://www.isi.edu/nsnam/ns/ns-documentation.html
33
Power Consumption
0
20
40
60
80
100
120
0 20 40 60 80 100 120 140
Node1 (default) Energy
0
20
40
60
80
100
120
0 20 40 60 80 100 120 140
Node1 (Double Bundle Size) Energy
35
Transfer Duration
0
20
40
60
80
100
120
0 5000 10000 15000 20000 25000 30000 35000
Tran
smit
Tim
e
Packet Size
Packet Size vs Transmit Time
36
DISCUSSION: Tasks & Difficulties
• Installing the SPICE DTN Agent into ns2
• Forming the wireless DTN topology
• Creating a model to compare against DTN
• Analyzing and extracting the trace files
• Interpreting the data and further investigation
37
DISCUSSION: Improvements
• Investigation into destroyed Wireless Satellite nodes
when packets are in Custody
• Removal of bundles in the network after receiver obtain
it
• Implement more orbiting wireless satellites.
38
Conclusion
• The bundle side did not affect the overall energy use
• Slow transmission correlates to packet size • We want to further investigate other effects of
longer distances and satellite orbit • Implementation of a successful TCP version
39
5. REFERENCE [1] L. Wood, "Delay Tolerant Networking Research Group," 09 04 2010. [Online]. Available: http://www.dtnrg.org/wiki/About . [Accessed 17 02
2013].
[2] K. Gifford, "NASA - Disruption Tolerant Networking for Space Operations," NASA, 12 05 2012. [Online]. Available: http://www.nasa.gov/mission_pages/station/research/experiments/DTN.html . [Accessed 16 02 2013].
[3] M. Demmer, DTN Reference Implementation, San Diego: DTNRG Conference Meeting, 2004.
[4] K. Fall and S. Farrell, "DTN: an architectural retrospective," IEEE Journal, vol. 26, no. 5, pp. 828-836, 2008.
[5] J. Jackson, "IEEE Spectrum - The Interplanetary Internet," August 2005. [Online]. Available: http://spectrum.ieee.org/telecom/internet/the-interplanetary-internet/3 . [Accessed 16 02 2013].
[6] T. Issaraiyakul and E. Hossain. (2009). Introduction to Network Simulator NS2: Post processing NS2 Result using NS2 Trace [Online]. Available: http://www.ns2ultimate.com/post/3702976577/post-processing-ns2-result-using-ns2-trace-ex2
[7] Z. WU. (2010, Oct 08). Network Simulator 2 for Wireless: Analyze ns-2 trace file [Online]. Available: http://zbinwu.blogspot.ca/2010/10/analyze-ns-2-trace-file.html
[8] Space Internetworking Center, “DTN-Agent”. [Online]. Available: http://www.spice-center.org/dtn-agent. [Accessed Feb. 25, 2013] [9] S. Farrell et al., "When TCP Breaks: Delay- and Disruption- Tolerant Networking," Internet Computing, IEEE , vol.10, no.4, pp.72,78, July-
Aug. 2006 doi: 10.1109/MIC.2006.91 URL:http://ieeexplore.ieee.org.proxy.lib.sfu.ca/stamp/stamp.jsp?tp=&arnumber=1704758&isnumber=35969
[10] S. Farrell and V. Cahill, Delay and Disruption-Tolerant Networking. Macatucits: Artech House Inc, 2006, pp. 171-181.
41
Reference Continued [11] Giorgos Papastergiou, Ioannis Psaras, Vassilis Tsaoussidis, Deep-Space Transport Protocol: A novel transport scheme for
Space DTNs, Computer Communications, Volume 32, Issue 16, 15 October 2009, Pages 1757-1767, ISSN 0140-3664, 10.1016/j.comcom.2009.02.012.
URL:http://www.sciencedirect.com/science/article/pii/S0140366409000565 [Access Mar. 20, 2013] [12] F. Warthman. (2003, Mar). delay-Tolerant Networks (DTNs): A Tutorial v1.1 [Online]. Available: http://www.dtnrg.org/docs/
tutorials/warthman-1.1.pdf [13] Dr. K. Scott. (2009, May,11). Delay /Disruption Tolerant Networking [Online]. Available: http://usenix.org/events/lisa09/tech/
slides/scott.pdf
[14] Space Academy, “Communication Delay”. [Online]. Available:http://www.spaceacademy.net.au/spacelink/commdly.htm. [Accessed Mar. 20, 2013
[15] B.Saha . (2011, Jul, 04). Delay Tolerant Networks A novice's blog on Delay Tolerant Networks: The ONE Tutorial[Online]. Available: http://delay-tolerant-networks.blogspot.ca/p/one-tutorial.html
42
Image Links http://www.generalcomics.com/funny-directory/30/3025/01.php https://twimg0-a.akamaihd.net/profile_images/188302352/nasalogo_twitter.jpg http://www.noaa.gov/features/tsunami/images/tsunami-dart-two-buoy2.jpg https://twimg0-a.akamaihd.net/profile_images/1163256540/New_Image.JPG http://www.iab.org/wp-content/IAB-uploads/2011/05/ietf-small.gif http://ntrg.cs.tcd.ie/undergrad/4ba2.02/space/Mars%20Network.jpg http://www.spice-center.org/images/logo.png http://www.spice-center.org/files/images/europe-map.jpg http://www.nasa.gov/703124main_693983main_map_DSN_667.png https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQUFuJBVu_IsOJ5-
NWjBp8YEtwR9WCrardsvEcVryti7ij4asLp http://www.blogcdn.com/www.engadget.com/media/2012/11/nasa-iss-remote-control-lego-robot.jpg https://encrypted-tbn1.gstatic.com/images?
q=tbn:ANd9GcSBjA6Vh9fW1xDzIsKPIkJvIBiqX17UItoVn0dIlqeIk0ljc2YF https://encrypted-tbn2.gstatic.com/images?
q=tbn:ANd9GcR5mkxloD9VKzVwiLY242YtPB3IUMpICQHMbBETHqn_KViLUE-Hbg
43
Evaluation Criteria notes CLASS PRESENTATION (total 100 points): 1. Introduction to the project: motivation and overview (5
points): 2. Overview of related work (20 points): 3. Problem description: technical details (20 points): 4. Implementation: simulation, prototype, results and
analysis (even if not completed) (50 points): 5. Organization and time management (5 points):
45