implementation of epidemic routing with ip convergence
play

Implementation of Epidemic Routing with IP Convergence Layer in ns-3 - PowerPoint PPT Presentation

Implementation of Epidemic Routing with IP Convergence Layer in ns-3 Dr. Justin P. Rohrer and Lt. Andrew N. Mauldin jprohrer@nps.edu Naval Postgraduate School TaNCAD Lab ( https://tancad.net ) WNS3, June 13, 2018 Abstract Implementation of


  1. Implementation of Epidemic Routing with IP Convergence Layer in ns-3 Dr. Justin P. Rohrer and Lt. Andrew N. Mauldin jprohrer@nps.edu Naval Postgraduate School TaNCAD Lab ( https://tancad.net ) WNS3, June 13, 2018

  2. Abstract Implementation of Epidemic Routing with IP Convergence Layer in ns-3 Paper Abstract [Rohrer and Mauldin, 2018] We present the Epidemic routing protocol implementation in ns-3. It is a full-featured DTN protocol in that it supports the message abstraction and store-and-haul behavior. We compare the performance of our Epidemic routing ns-3 implementation with the existing implementation of Epidemic in the ONE simulator, and discuss the differences. www.nps.edu 2 / 44

  3. Outline Introduction Background Prior Work Implementation Evaluation Validation Conclusion www.nps.edu 3 / 44

  4. Introduction A Word About Us... Justin P. Rohrer: ◮ Assistant Professor, Network Group, Computer Science Department ◮ Teaches: CS3502 (Networks I), CS4538 (Wireless Security), CS4554 (Network Modeling), CS4558 (Traffic Analysis) ◮ Leads: Center for Tactical Networked Communications @NPS ◮ Pi/Co-PI on Disruption Tolerant Networking and Network Measurement Projects ◮ Past contributor to various ns-3 routing and transport models Lt Andrew Mauldin: ◮ USN, Master’s Student, Computer Science ◮ Thesis: Comparative analysis of disruption tolerant network routing simulations in the ONE and ns-3 [Mauldin, 2017]; Graduated Fall 2017 www.nps.edu 4 / 44

  5. TaNCAD Lab @ NPS Naval Postgraduate School (NPS) ◮ Navy’s Research University ◮ Located in Monterey, CA ◮ ≃ 1500 graduate students: Military officers & DoD civilians Center for Tactical Networked Communication Architecture ◮ 3 NPS professors, 2 NPS staff ◮ Sponsors: USN, USMC, NSF, NSA, ONR, DARPA, . . . Focus: ◮ Network Survivability and Resilience ◮ Disruption Tolerant Networks for Tactical Environments www.nps.edu 5 / 44

  6. Introduction Goals for this work ◮ Experiment with new DTN routing primitives ◮ Have been working with the ONE simulator www.nps.edu 6 / 44

  7. Introduction Goals for this work ◮ Experiment with new DTN routing primitives ◮ Have been working with the ONE simulator ◮ Not satisfied with fidelity of results ◮ So we want to work with higher-fidelity simulator like ns-3 ◮ But ns-3 doesn’t currently have any DTN routing protocols ◮ How to start the transition? www.nps.edu 6 / 44

  8. Introduction Goals for this work ◮ Experiment with new DTN routing primitives ◮ Have been working with the ONE simulator ◮ Not satisfied with fidelity of results ◮ So we want to work with higher-fidelity simulator like ns-3 ◮ Epidemic is the simplest DTN protocol ◮ New protocols are benchmarked against Epidemic ◮ Sounds like a good place to start www.nps.edu 6 / 44

  9. Outline Introduction Background Prior Work Implementation Evaluation Validation Conclusion www.nps.edu 7 / 44

  10. Background Epidemic Routing Epidemic [Vahdat and Becker, 2000] ◮ Simplest possible DTN routing protocol ◮ Flooding based ◮ Every message is forwarded to every node in the network ◮ Very high message-replication overhead due to forwarding n copies of each message www.nps.edu 8 / 44

  11. Background Mobile AdHoc Routing (Supported in ns-3) Mobile AdHoc Networks (MANETs) allow nodes to multihop messages through the wireless network to their destinations. Each node acts as both a host and a router, forwarding messages from peers as well as their own messages. ◮ Use a routing protocol to distribute topology information ◮ Distance vector ◮ Link state ◮ Source routing ◮ May be proactive or reactive ◮ Requires end-to-end connectivity ◮ Frequent updates allow the network to tolerate mobility www.nps.edu 9 / 44

  12. Background Mobile AdHoc Routing (Supported in ns-3) Mobile AdHoc Networks (MANETs) allow nodes to multihop messages through the wireless network to their destinations. Each node acts as both a host and a router, forwarding messages from peers as well as their own messages. ◮ Use a routing protocol to distribute topology information ◮ Distance vector ◮ Link state ◮ Source routing ◮ May be proactive or reactive ◮ Requires end-to-end connectivity ◮ Frequent updates allow the network to tolerate mobility ◮ Significant fraction of available bandwidth used for routing messages ◮ Highly dynamic topologies may prevent convergence www.nps.edu 9 / 44

  13. Background Disruption Tolerant Routing (Not currently offered in ns-3) Disruption Tolerant Networks allow nodes to multihop messages while tolerating disruptions in connectivity among its components. Disruption tolerance includes tolerance of environmental challenges, weak and episodic channel connectivity, mobility, long & unpredictable delay, energy and power constraints. ◮ Make local forwarding decisions without globally consistent information ◮ More information = better decisions ◮ Nodes buffer messages until next-hop is available ◮ Requires only hop-by-hop connectivity www.nps.edu 10 / 44

  14. Background DTN Network Stack Bundle Protocol Application Bundle Protocol Application Bundle Protocol Bundle Protocol Bundle Protocol Bundle Protocol Transport Layer 1 Transport 1 Transport 2 Transport 2 Transport 3 Transport Layer 3 Network 1 Network 1 Network 2 Network 2 Network 3 Network 3 Internet 1 Internet 2 Internet 3 Figure: Bundle Protocol Network Stack. Adapted from [Scott and Burleigh, 2007] ◮ DTN’s use large buffers; less concerned with fastpath ◮ More concerned with flexibility/late binding ◮ Use mechanisms such as Store-and-Haul (physically move messages closer to destination) ◮ Often implemented as application-overlay www.nps.edu 11 / 44

  15. Background DTN Simulators ◮ Abstract away network stack (e.g. the ONE) ◮ No propagation/loss model ◮ No MAC contention ◮ No message segmentation ◮ No network headers ◮ No control message overhead ◮ No transport layer ◮ Message is basic communication unit ◮ May be 10s of MB www.nps.edu 12 / 44

  16. Background Network Simulators ◮ In this work we specifically consider two simulators, as we migrate from one to the other ns-3 is a discrete-event simulator with detailed channel, MAC, network, and routing-layer (MANET) models. It is open-source and written in C++. The ONE is a discrete-time simulator designed specifically for DTN protocol simulations. It abstracts away details of propagation, medium access, and network layers and is written in Java. www.nps.edu 13 / 44

  17. Outline Introduction Background Prior Work Implementation Evaluation Validation Conclusion www.nps.edu 14 / 44

  18. Prior Work Epidemic Simulation Models and Limitations in the ONE ◮ Epidemic is part of ONE distribution ◮ Message-based ◮ No control messages in ns-3 ◮ Implemented [Alenazi et al., 2015]; not distributed with ns-3 ◮ No message support ◮ Summary vector limited to 1 packet ◮ Size of message buffer limited to number of packet IDs that fit in summary vector packet www.nps.edu 15 / 44

  19. Outline Introduction Background Prior Work Implementation Evaluation Validation Conclusion www.nps.edu 16 / 44

  20. Implementation Code Structure IPv4 Routing Protocol Packet Classes Packet Queue Class Queue Entry - m_BufferSize - m_packets + Serialize - m_queue - m_header + Deserialize - m_expire + Enqueue + Print - m_messageID + Dequeue Routing Class - Purge + AddPacket - m_BufferSize + Find + GetPackets - m_queueEntryExpireTime - Drop + SetIpv4Header - m_beaconInterval - DropExpiredMessages + GetIpv4Header + + GetExpireTime + Recv<Protocol> FindDisjointMessages + SetExpireTime + RouteInput + GetSize + SetMessageID + RouteOutput + GetMessageID + SendDisjointMessages + GetMessageByteSize + SendBeacons + GetMessagePacketTotal + SendMessageFromQueue + GetCurrentPktCnt + SendACK + GetPacketSize Figure: DTN routing UML Diagram ◮ Derived from IPv4 Routing Protocol ◮ Based on Alenazi et al. code structure www.nps.edu 17 / 44

  21. Implementation Code Structure Cont. Packet Queue ◮ Max size set in Bytes ◮ Manages list of Queue Entries ◮ A Queue Entry contains all packets belonging to one message ◮ Supports advanced buffer management (not used in Epidemic) Routing Protocol ◮ Exchanges message vectors with neighboring routers ◮ Uses Message Queue to generate disjoint message set ◮ Sends disjoint messages to neighbor www.nps.edu 18 / 44

  22. Implementation Message Generation 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 64-bit Message Identification Number 16-bit Last Hop 32-bit Total Number of Packets 32-bit Packet Index Figure: DTN Data Packet Header ◮ New application type ( DTNApplication ) generates messages ◮ Messages are segmented into packets ◮ Each packet contains a DTNHeader identifying the message to which it belongs ◮ Messages are forwarded atomically, i.e. partially received messages are discarded if connection is broken www.nps.edu 19 / 44

  23. Implementation Node Discovery BEACON A B REPLY REPLY_BACK Messages Figure: Epidemic Control Packet Exchange Sequence ◮ Nodes send beacon messages every BeaconInterval [5 s] ◮ Nodes hearing the beacon reply ◮ Originating node chooses one of the replies to reply to and exchanges summary vectors ◮ Both nodes calculate their disjoint message set and exchange www.nps.edu 20 / 44

  24. Outline Introduction Background Prior Work Implementation Evaluation Validation Conclusion www.nps.edu 21 / 44

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend