Your SlideShare is downloading. ×
ns-3: History and Future
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

ns-3: History and Future

500

Published on

Keynote presentation to WNS3 2012

Keynote presentation to WNS3 2012

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
500
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
49
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. ns-3: History and Future Mathieu Lacage March, 24th 2012 Lacage ns-3: History and Future March 2012 1 / 27
  • 2. OutlineIntroductionPacketObject FrameworkConclusion Lacage ns-3: History and Future March 2012 2 / 27
  • 3. How the project came to beLacage ns-3: History and Future March 2012 3 / 27
  • 4. How the project came to beMultiple partners: Lacage ns-3: History and Future March 2012 3 / 27
  • 5. How the project came to beMultiple partners: NSF-funded: UWA, GT, ISI Lacage ns-3: History and Future March 2012 3 / 27
  • 6. How the project came to beMultiple partners: NSF-funded: UWA, GT, ISI INRIA-funded: planète Lacage ns-3: History and Future March 2012 3 / 27
  • 7. How the project came to beMultiple partners: NSF-funded: UWA, GT, ISI INRIA-funded: planètePulling the project in multiple directions: Real Code Long Term Integration Survival ns-3 Wireless Fast TCP Education Emulation Lacage ns-3: History and Future March 2012 3 / 27
  • 8. RequirementsLacage ns-3: History and Future March 2012 4 / 27
  • 9. RequirementsReal-code integration, Emulation: Lacage ns-3: History and Future March 2012 4 / 27
  • 10. RequirementsReal-code integration, Emulation: Models must not be too abstract (Node, etc.) Lacage ns-3: History and Future March 2012 4 / 27
  • 11. RequirementsReal-code integration, Emulation: Models must not be too abstract (Node, etc.) Must be transparent to models Lacage ns-3: History and Future March 2012 4 / 27
  • 12. RequirementsReal-code integration, Emulation: Models must not be too abstract (Node, etc.) Must be transparent to modelsFast TCP: Lacage ns-3: History and Future March 2012 4 / 27
  • 13. RequirementsReal-code integration, Emulation: Models must not be too abstract (Node, etc.) Must be transparent to modelsFast TCP: Memory efficiency of many packets in flight Lacage ns-3: History and Future March 2012 4 / 27
  • 14. More requirementsLacage ns-3: History and Future March 2012 5 / 27
  • 15. More requirementsEducation: Lacage ns-3: History and Future March 2012 5 / 27
  • 16. More requirementsEducation: Must be easy to use for students Lacage ns-3: History and Future March 2012 5 / 27
  • 17. More requirementsEducation: Must be easy to use for studentsWireless: Lacage ns-3: History and Future March 2012 5 / 27
  • 18. More requirementsEducation: Must be easy to use for studentsWireless: Must have great validated wireless models Lacage ns-3: History and Future March 2012 5 / 27
  • 19. More requirementsEducation: Must be easy to use for studentsWireless: Must have great validated wireless modelsLong term survival: Lacage ns-3: History and Future March 2012 5 / 27
  • 20. More requirementsEducation: Must be easy to use for studentsWireless: Must have great validated wireless modelsLong term survival: Maintenance: production-quality code Lacage ns-3: History and Future March 2012 5 / 27
  • 21. More requirementsEducation: Must be easy to use for studentsWireless: Must have great validated wireless modelsLong term survival: Maintenance: production-quality code Funding: NSF & INRIA funding finite Lacage ns-3: History and Future March 2012 5 / 27
  • 22. Long Term SurvivalLacage ns-3: History and Future March 2012 6 / 27
  • 23. Long Term SurvivalHard to make enough money to maintain the code: Lacage ns-3: History and Future March 2012 6 / 27
  • 24. Long Term SurvivalHard to make enough money to maintain the code: Small market (network researchers) Lacage ns-3: History and Future March 2012 6 / 27
  • 25. Long Term SurvivalHard to make enough money to maintain the code: Small market (network researchers) Large and complex code Lacage ns-3: History and Future March 2012 6 / 27
  • 26. Long Term SurvivalHard to make enough money to maintain the code: Small market (network researchers) Large and complex codeHard to obtain funding from research agencies: Lacage ns-3: History and Future March 2012 6 / 27
  • 27. Long Term SurvivalHard to make enough money to maintain the code: Small market (network researchers) Large and complex codeHard to obtain funding from research agencies: Funds to use the tool Lacage ns-3: History and Future March 2012 6 / 27
  • 28. Long Term SurvivalHard to make enough money to maintain the code: Small market (network researchers) Large and complex codeHard to obtain funding from research agencies: Funds to use the tool Funds to extend the tool Lacage ns-3: History and Future March 2012 6 / 27
  • 29. Long Term SurvivalHard to make enough money to maintain the code: Small market (network researchers) Large and complex codeHard to obtain funding from research agencies: Funds to use the tool Funds to extend the tool No funds to maintain the tool Lacage ns-3: History and Future March 2012 6 / 27
  • 30. Open Source CommunityLacage ns-3: History and Future March 2012 7 / 27
  • 31. Open Source CommunityHard to create: Lacage ns-3: History and Future March 2012 7 / 27
  • 32. Open Source CommunityHard to create: Licensing is tricky Lacage ns-3: History and Future March 2012 7 / 27
  • 33. Open Source CommunityHard to create: Licensing is tricky Meritocracy Lacage ns-3: History and Future March 2012 7 / 27
  • 34. Open Source CommunityHard to create: Licensing is tricky Meritocracy No discussions behind closed doors Lacage ns-3: History and Future March 2012 7 / 27
  • 35. Open Source CommunityHard to create: Licensing is tricky Meritocracy No discussions behind closed doors Must lose control to see the baby grow Lacage ns-3: History and Future March 2012 7 / 27
  • 36. Open Source CommunityHard to create: Licensing is tricky Meritocracy No discussions behind closed doors Must lose control to see the baby growClassic management problem: Lacage ns-3: History and Future March 2012 7 / 27
  • 37. Open Source CommunityHard to create: Licensing is tricky Meritocracy No discussions behind closed doors Must lose control to see the baby growClassic management problem: Spend time to do things yourself Lacage ns-3: History and Future March 2012 7 / 27
  • 38. Open Source CommunityHard to create: Licensing is tricky Meritocracy No discussions behind closed doors Must lose control to see the baby growClassic management problem: Spend time to do things yourself Spend time to help others do the work Lacage ns-3: History and Future March 2012 7 / 27
  • 39. Open Source CommunityHard to create: Licensing is tricky Meritocracy No discussions behind closed doors Must lose control to see the baby growClassic management problem: Spend time to do things yourself Spend time to help others do the workIt is a hard pill to (make upper management) swallow Lacage ns-3: History and Future March 2012 7 / 27
  • 40. But the good news is...Lacage ns-3: History and Future March 2012 8 / 27
  • 41. But the good news is...We (They) all swallowed it. Lacage ns-3: History and Future March 2012 8 / 27
  • 42. And now,The story of how: Lacage ns-3: History and Future March 2012 9 / 27
  • 43. And now,The story of how: The Real World pervades everything Lacage ns-3: History and Future March 2012 9 / 27
  • 44. And now,The story of how: The Real World pervades everything To implement everything 3 or 4 times Aka, Incremental development Lacage ns-3: History and Future March 2012 9 / 27
  • 45. And now,The story of how: The Real World pervades everything To implement everything 3 or 4 times Aka, Incremental development To not plan too far Lacage ns-3: History and Future March 2012 9 / 27
  • 46. OutlineIntroductionPacketObject FrameworkConclusion Lacage ns-3: History and Future March 2012 10 / 27
  • 47. RequirementsLacage ns-3: History and Future March 2012 11 / 27
  • 48. RequirementsTransparent conversion to/from real bytesLacage ns-3: History and Future March 2012 11 / 27
  • 49. RequirementsTransparent conversion to/from real bytesCPU and memory efficiencyLacage ns-3: History and Future March 2012 11 / 27
  • 50. RequirementsTransparent conversion to/from real bytesCPU and memory efficiencyFragmentation/ReassemblyLacage ns-3: History and Future March 2012 11 / 27
  • 51. RequirementsTransparent conversion to/from real bytesCPU and memory efficiencyFragmentation/ReassemblySimulation-only dataLacage ns-3: History and Future March 2012 11 / 27
  • 52. RequirementsTransparent conversion to/from real bytesCPU and memory efficiencyFragmentation/ReassemblySimulation-only dataPretty printingLacage ns-3: History and Future March 2012 11 / 27
  • 53. RequirementsTransparent conversion to/from real bytesCPU and memory efficiencyFragmentation/ReassemblySimulation-only dataPretty printingExtensibilityLacage ns-3: History and Future March 2012 11 / 27
  • 54. RequirementsTransparent conversion to/from real bytesCPU and memory efficiencyFragmentation/ReassemblySimulation-only dataPretty printingExtensibilityRobust Application Programming Interface (API)Lacage ns-3: History and Future March 2012 11 / 27
  • 55. Related WorkTwo approaches Lacage ns-3: History and Future March 2012 12 / 27
  • 56. Related WorkTwo approaches Packet is list of headers: GTNetS, OMNeT++, SSFNet MAC IP TCP Payload Lacage ns-3: History and Future March 2012 12 / 27
  • 57. Related WorkTwo approaches Packet is list of headers: GTNetS, OMNeT++, SSFNet MAC IP TCP Payload Packet is buffer of bytes: Yans, GloMoSim MAC IP TCP Payload Lacage ns-3: History and Future March 2012 12 / 27
  • 58. Pros and Cons List BufferFragmentation, ReassemblyConversion real bytesSimulation-only dataPretty printingCPU, memory efficiency Lacage ns-3: History and Future March 2012 13 / 27
  • 59. Pros and Cons List Buffer ns-3Fragmentation, ReassemblyConversion real bytesSimulation-only dataPretty printingCPU, memory efficiency Lacage ns-3: History and Future March 2012 13 / 27
  • 60. How did we get there ?About 10 successive versions... Lacage ns-3: History and Future March 2012 14 / 27
  • 61. How did we get there ?Started with a simple version in YANS: Headers’ List Tags RefCounting Sep 2005 Lacage ns-3: History and Future March 2012 14 / 27
  • 62. How did we get there ?Started with a simple version in YANS: Headers’ List Tags RefCounting Sep 2005But, hard to integrate the BSD TCP stack Lacage ns-3: History and Future March 2012 14 / 27
  • 63. How did we get there ?Real bytes in YANS: Headers’ List Tags RefCounting Jan 2006 Sep 2005 Real Bytes Lacage ns-3: History and Future March 2012 14 / 27
  • 64. How did we get there ?Real bytes in YANS: Headers’ List Tags RefCounting Jan 2006 Sep 2005 Real BytesBut, hard to manage reference counting by hand Lacage ns-3: History and Future March 2012 14 / 27
  • 65. How did we get there ?Smart Pointers in YANS: Headers’ List Smart Tags Pointers RefCounting Jan 2006 Sep Jun 2005 2006 Real Bytes Lacage ns-3: History and Future March 2012 14 / 27
  • 66. How did we get there ?Smart Pointers in YANS: Headers’ List Smart Tags Pointers RefCounting Jan 2006 Sep Jun 2005 2006 Real BytesBut, memory & CPU performance is not good Lacage ns-3: History and Future March 2012 14 / 27
  • 67. How did we get there ?Copy On Write in ns-3: Headers’ List Smart Tags Pointers RefCounting Jan Jul 2006 2006 Sep Jun 2005 2006 Real COW Bytes Lacage ns-3: History and Future March 2012 14 / 27
  • 68. How did we get there ?Copy On Write in ns-3: Headers’ List Smart Tags Pointers RefCounting Jan Jul 2006 2006 Sep Jun 2005 2006 Real COW BytesStill, Fast TCP pushes the boundary Lacage ns-3: History and Future March 2012 14 / 27
  • 69. How did we get there ?Virtual payload: Headers’ List Smart Virtual Tags Pointers Payload RefCounting Jan Jul 2006 2006 Sep Jun Aug 2005 2006 2006 Real COW Bytes Lacage ns-3: History and Future March 2012 14 / 27
  • 70. How did we get there ?Virtual payload: Headers’ List Smart Virtual Tags Pointers Payload RefCounting Jan Jul 2006 2006 Sep Jun Aug 2005 2006 2006 Real COW BytesReally, debugging is hard Lacage ns-3: History and Future March 2012 14 / 27
  • 71. How did we get there ?Packet UIDs: Headers’ List Smart Virtual Tags Pointers Payload RefCounting Jan Jul Sep 2006 2006 2006 Sep Jun Aug 2005 2006 2006 Real Packet COW Bytes UID Lacage ns-3: History and Future March 2012 14 / 27
  • 72. How did we get there ?Packet UIDs: Headers’ List Smart Virtual Tags Pointers Payload RefCounting Jan Jul Sep 2006 2006 2006 Sep Jun Aug 2005 2006 2006 Real Packet COW Bytes UIDReally, debugging is still hard Lacage ns-3: History and Future March 2012 14 / 27
  • 73. How did we get there ?Packet Pretty Printing: Headers’ List Smart Virtual Pretty Tags Pointers Payload Printing RefCounting Jan Jul Sep 2006 2006 2006 Sep Jun Aug May/Jun 2005 2006 2006 2007 Real Packet COW Bytes UID Lacage ns-3: History and Future March 2012 14 / 27
  • 74. How did we get there ?Packet Pretty Printing: Headers’ List Smart Virtual Pretty Tags Pointers Payload Printing RefCounting Jan Jul Sep 2006 2006 2006 Sep Jun Aug May/Jun 2005 2006 2006 2007 Real Packet COW Bytes UIDBut, we do need pointers Lacage ns-3: History and Future March 2012 14 / 27
  • 75. How did we get there ?Pointers are back: Headers’ List Smart Virtual Pretty Tags Pointers Payload Printing RefCounting Jan Jul Sep Oct 2006 2006 2006 2007 Sep Jun Aug May/Jun 2005 2006 2006 2007 Real Packet COW Ptr<Packet> Bytes UID Lacage ns-3: History and Future March 2012 14 / 27
  • 76. What I learned the hard wayLacage ns-3: History and Future March 2012 15 / 27
  • 77. What I learned the hard wayThe mountain seems impossibly high at firstLacage ns-3: History and Future March 2012 15 / 27
  • 78. What I learned the hard wayThe mountain seems impossibly high at firstForget about the top, aim for base campLacage ns-3: History and Future March 2012 15 / 27
  • 79. What I learned the hard wayThe mountain seems impossibly high at firstForget about the top, aim for base campThe mountain grows with every new userLacage ns-3: History and Future March 2012 15 / 27
  • 80. What I learned the hard wayThe mountain seems impossibly high at firstForget about the top, aim for base campThe mountain grows with every new userListen to usersLacage ns-3: History and Future March 2012 15 / 27
  • 81. OutlineIntroductionPacketObject FrameworkConclusion Lacage ns-3: History and Future March 2012 16 / 27
  • 82. RequirementsLacage ns-3: History and Future March 2012 17 / 27
  • 83. RequirementsUniform memory managementLacage ns-3: History and Future March 2012 17 / 27
  • 84. RequirementsUniform memory managementAllow simulation configurationLacage ns-3: History and Future March 2012 17 / 27
  • 85. RequirementsUniform memory managementAllow simulation configurationSolve the object composition problemLacage ns-3: History and Future March 2012 17 / 27
  • 86. RequirementsUniform memory managementAllow simulation configurationSolve the object composition problemDecouple Trace Sources from Trace SinksLacage ns-3: History and Future March 2012 17 / 27
  • 87. RequirementsUniform memory managementAllow simulation configurationSolve the object composition problemDecouple Trace Sources from Trace SinksAllow simulation trace setupLacage ns-3: History and Future March 2012 17 / 27
  • 88. RequirementsUniform memory managementAllow simulation configurationSolve the object composition problemDecouple Trace Sources from Trace SinksAllow simulation trace setupDo not be intrusive to Model developersLacage ns-3: History and Future March 2012 17 / 27
  • 89. Fast Forward to 2012Lacage ns-3: History and Future March 2012 18 / 27
  • 90. Fast Forward to 2012Memory management: Ptr<Object> + DisposeLacage ns-3: History and Future March 2012 18 / 27
  • 91. Fast Forward to 2012Memory management: Ptr<Object> + DisposeConfiguration: Attributes + ConfigStoreLacage ns-3: History and Future March 2012 18 / 27
  • 92. Fast Forward to 2012Memory management: Ptr<Object> + DisposeConfiguration: Attributes + ConfigStoreTracing: integrated in AttributesLacage ns-3: History and Future March 2012 18 / 27
  • 93. Fast Forward to 2012Memory management: Ptr<Object> + DisposeConfiguration: Attributes + ConfigStoreTracing: integrated in AttributesConfiguration, Tracing: optionalLacage ns-3: History and Future March 2012 18 / 27
  • 94. Fast Forward to 2012 Memory management: Ptr<Object> + Dispose Configuration: Attributes + ConfigStore Tracing: integrated in Attributes Configuration, Tracing: optionalNow on par with Omnetpp & Opnet feature-wise Lacage ns-3: History and Future March 2012 18 / 27
  • 95. A Windy PathIt Started with nothing Lacage ns-3: History and Future March 2012 19 / 27
  • 96. A Windy PathBut tom liked the ns-2 default values Default ValueMar2007 Lacage ns-3: History and Future March 2012 19 / 27
  • 97. A Windy PathBut tom liked the ns-2 default values Default ValueMar2007What about memory management, aggregation ? Lacage ns-3: History and Future March 2012 19 / 27
  • 98. A Windy PathHere comes microsoft’s IUnknown! Default Value Apr 2007Mar2007 IUnknown Lacage ns-3: History and Future March 2012 19 / 27
  • 99. A Windy PathHere comes microsoft’s IUnknown! Default Value Apr 2007Mar2007 IUnknownScratch that, everyone hates it Lacage ns-3: History and Future March 2012 19 / 27
  • 100. A Windy PathResolving trace sources: microsoft’s IMoniker Default IMoniker Value Apr 2007Mar2007 IUnknown Lacage ns-3: History and Future March 2012 19 / 27
  • 101. A Windy PathResolving trace sources: microsoft’s IMoniker Default IMoniker Value Apr 2007Mar2007 IUnknownHrm... So, what about memory management ? Lacage ns-3: History and Future March 2012 19 / 27
  • 102. A Windy PathReference Counting wins Default IMoniker Value Apr 2007Mar May2007 2007 Reference IUnknown Counting Lacage ns-3: History and Future March 2012 19 / 27
  • 103. A Windy PathReference Counting wins Default IMoniker Value Apr 2007Mar May2007 2007 Reference IUnknown CountingAnd Cycles ? Lacage ns-3: History and Future March 2012 19 / 27
  • 104. A Windy PathDispose to Break the Cycles Default IMoniker Dispose Value Apr 2007Mar May2007 2007 Reference IUnknown Counting Lacage ns-3: History and Future March 2012 19 / 27
  • 105. A Windy PathDispose to Break the Cycles Default IMoniker Dispose Value Apr 2007Mar May2007 2007 Reference IUnknown CountingWhere is my IUnknown::QueryInterface ? Lacage ns-3: History and Future March 2012 19 / 27
  • 106. A Windy PathDynamic Aggregation Default IMoniker Dispose Value Apr 2007Mar May2007 2007 Reference IUnknown Aggregation Counting Lacage ns-3: History and Future March 2012 19 / 27
  • 107. A Windy PathDynamic Aggregation Default IMoniker Dispose Value Apr 2007Mar May2007 2007 Reference IUnknown Aggregation CountingRef/Unref by hand still sucks! Lacage ns-3: History and Future March 2012 19 / 27
  • 108. A Windy PathSmart Pointers are back Default IMoniker Dispose Ptr<> Value Apr 2007Mar May2007 2007 Reference IUnknown Aggregation Counting Lacage ns-3: History and Future March 2012 19 / 27
  • 109. A Windy PathSmart Pointers are back Default IMoniker Dispose Ptr<> Value Apr 2007Mar May2007 2007 Reference IUnknown Aggregation CountingIMoniker is still ugly... Lacage ns-3: History and Future March 2012 19 / 27
  • 110. A Windy PathIntroduce Attributes Default IMoniker Dispose Ptr<> Attributes Value Apr 2007Mar May Jan-Mar2007 2007 2008 Reference IUnknown Aggregation Counting Lacage ns-3: History and Future March 2012 19 / 27
  • 111. With hindsight...Lacage ns-3: History and Future March 2012 20 / 27
  • 112. With hindsight...I wish: we had looked at Omnetpp & Opnet before Lacage ns-3: History and Future March 2012 20 / 27
  • 113. With hindsight...I wish: we had looked at Omnetpp & Opnet beforeThe result is still nice thanks to: Willingness to listen to users Lacage ns-3: History and Future March 2012 20 / 27
  • 114. With hindsight...I wish: we had looked at Omnetpp & Opnet beforeThe result is still nice thanks to: Willingness to listen to users Incremental development Lacage ns-3: History and Future March 2012 20 / 27
  • 115. No, it is not overLacage ns-3: History and Future March 2012 21 / 27
  • 116. No, it is not overReal Code Integration: Linux kernel, Quagga, CCNx, etc. Lacage ns-3: History and Future March 2012 21 / 27
  • 117. No, it is not overReal Code Integration: Linux kernel, Quagga, CCNx, etc. Contiki Lacage ns-3: History and Future March 2012 21 / 27
  • 118. No, it is not overReal Code Integration: Linux kernel, Quagga, CCNx, etc. Contiki TinyOS Lacage ns-3: History and Future March 2012 21 / 27
  • 119. No, it is not overReal Code Integration: Linux kernel, Quagga, CCNx, etc. Contiki TinyOSBrings new challenges: Attributes ? Lacage ns-3: History and Future March 2012 21 / 27
  • 120. No, it is not overReal Code Integration: Linux kernel, Quagga, CCNx, etc. Contiki TinyOSBrings new challenges: Attributes ? Tracing ? Lacage ns-3: History and Future March 2012 21 / 27
  • 121. Configuring AttributesLacage ns-3: History and Future March 2012 22 / 27
  • 122. Configuring AttributesLinux Kernel: Lacage ns-3: History and Future March 2012 22 / 27
  • 123. Configuring AttributesLinux Kernel: Bridge /proc/net inside the attribute system Lacage ns-3: History and Future March 2012 22 / 27
  • 124. Configuring AttributesLinux Kernel: Bridge /proc/net inside the attribute system Difficult to really map one to one Lacage ns-3: History and Future March 2012 22 / 27
  • 125. Configuring AttributesLinux Kernel: Bridge /proc/net inside the attribute system Difficult to really map one to one Extend Attributes to handle structures, arrays ? Lacage ns-3: History and Future March 2012 22 / 27
  • 126. Configuring AttributesLinux Kernel: Bridge /proc/net inside the attribute system Difficult to really map one to one Extend Attributes to handle structures, arrays ?Other Applications: Lacage ns-3: History and Future March 2012 22 / 27
  • 127. Configuring AttributesLinux Kernel: Bridge /proc/net inside the attribute system Difficult to really map one to one Extend Attributes to handle structures, arrays ?Other Applications: I have no idea. Lacage ns-3: History and Future March 2012 22 / 27
  • 128. TracingLacage ns-3: History and Future March 2012 23 / 27
  • 129. TracingWe do not want to modify the external code: Lacage ns-3: History and Future March 2012 23 / 27
  • 130. TracingWe do not want to modify the external code: Linux Kernel: Tracepoints, Ftrace, KProbe, etc. Lacage ns-3: History and Future March 2012 23 / 27
  • 131. TracingWe do not want to modify the external code: Linux Kernel: Tracepoints, Ftrace, KProbe, etc. But no builtin tracing in general Lacage ns-3: History and Future March 2012 23 / 27
  • 132. TracingWe do not want to modify the external code: Linux Kernel: Tracepoints, Ftrace, KProbe, etc. But no builtin tracing in generalRe-implement Kprobe, JProbe, etc. in userspace: Lacage ns-3: History and Future March 2012 23 / 27
  • 133. TracingWe do not want to modify the external code: Linux Kernel: Tracepoints, Ftrace, KProbe, etc. But no builtin tracing in generalRe-implement Kprobe, JProbe, etc. in userspace: Introspection using debug information Lacage ns-3: History and Future March 2012 23 / 27
  • 134. TracingWe do not want to modify the external code: Linux Kernel: Tracepoints, Ftrace, KProbe, etc. But no builtin tracing in generalRe-implement Kprobe, JProbe, etc. in userspace: Introspection using debug information Dynamic patching of assembly code Lacage ns-3: History and Future March 2012 23 / 27
  • 135. OutlineIntroductionPacketObject FrameworkConclusion Lacage ns-3: History and Future March 2012 24 / 27
  • 136. SummaryLacage ns-3: History and Future March 2012 25 / 27
  • 137. SummaryWhat really matters (today): Lacage ns-3: History and Future March 2012 25 / 27
  • 138. SummaryWhat really matters (today): Alignment with the Real World Lacage ns-3: History and Future March 2012 25 / 27
  • 139. SummaryWhat really matters (today): Alignment with the Real World An Open Source Community Lacage ns-3: History and Future March 2012 25 / 27
  • 140. SummaryWhat really matters (today): Alignment with the Real World An Open Source Community Incremental development Lacage ns-3: History and Future March 2012 25 / 27
  • 141. SummaryWhat really matters (today): Alignment with the Real World An Open Source Community Incremental development No one (but you) knows where ns-3 is headed Lacage ns-3: History and Future March 2012 25 / 27
  • 142. Thank you ! Questions ?Lacage ns-3: History and Future March 2012 26 / 27
  • 143. Contact mathieu@cutebugs.netLacage ns-3: History and Future March 2012 27 / 27

×