SlideShare una empresa de Scribd logo
1 de 143
Descargar para leer sin conexión
ns-3: History and Future
          Mathieu Lacage


          March, 24th 2012




 Lacage      ns-3: History and Future   March 2012   1 / 27
Outline

Introduction

Packet

Object Framework

Conclusion



     Lacage        ns-3: History and Future     March 2012   2 / 27
How the project came to be




Lacage   ns-3: History and Future   March 2012   3 / 27
How the project came to be
Multiple partners:




     Lacage          ns-3: History and Future   March 2012   3 / 27
How the project came to be
Multiple partners:
    NSF-funded: UWA, GT, ISI




    Lacage        ns-3: History and Future   March 2012   3 / 27
How the project came to be
Multiple partners:
    NSF-funded: UWA, GT, ISI
    INRIA-funded: planète




    Lacage        ns-3: History and Future   March 2012   3 / 27
How the project came to be
Multiple partners:
     NSF-funded: UWA, GT, ISI
     INRIA-funded: planète
Pulling 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
Requirements




Lacage   ns-3: History and Future   March 2012   4 / 27
Requirements


Real-code integration, Emulation:




     Lacage         ns-3: History and Future   March 2012   4 / 27
Requirements


Real-code integration, Emulation:
    Models must not be too abstract (Node, etc.)




     Lacage         ns-3: History and Future   March 2012   4 / 27
Requirements


Real-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
Requirements


Real-code integration, Emulation:
    Models must not be too abstract (Node, etc.)
    Must be transparent to models
Fast TCP:




     Lacage         ns-3: History and Future   March 2012   4 / 27
Requirements


Real-code integration, Emulation:
    Models must not be too abstract (Node, etc.)
    Must be transparent to models
Fast TCP:
    Memory efficiency of many packets in flight




     Lacage         ns-3: History and Future   March 2012   4 / 27
More requirements




Lacage   ns-3: History and Future   March 2012   5 / 27
More requirements

Education:




    Lacage   ns-3: History and Future   March 2012   5 / 27
More requirements

Education:
   Must be easy to use for students




    Lacage         ns-3: History and Future   March 2012   5 / 27
More requirements

Education:
    Must be easy to use for students
Wireless:




     Lacage         ns-3: History and Future   March 2012   5 / 27
More requirements

Education:
    Must be easy to use for students
Wireless:
    Must have great validated wireless models




     Lacage         ns-3: History and Future   March 2012   5 / 27
More requirements

Education:
    Must be easy to use for students
Wireless:
    Must have great validated wireless models
Long term survival:




     Lacage         ns-3: History and Future   March 2012   5 / 27
More requirements

Education:
    Must be easy to use for students
Wireless:
    Must have great validated wireless models
Long term survival:
    Maintenance: production-quality code




     Lacage         ns-3: History and Future   March 2012   5 / 27
More requirements

Education:
    Must be easy to use for students
Wireless:
    Must have great validated wireless models
Long term survival:
    Maintenance: production-quality code
    Funding: NSF & INRIA funding finite



     Lacage         ns-3: History and Future   March 2012   5 / 27
Long Term Survival




Lacage   ns-3: History and Future   March 2012   6 / 27
Long Term Survival

Hard to make enough money to maintain the code:




    Lacage         ns-3: History and Future   March 2012   6 / 27
Long Term Survival

Hard to make enough money to maintain the code:
    Small market (network researchers)




    Lacage         ns-3: History and Future   March 2012   6 / 27
Long Term Survival

Hard 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
Long Term Survival

Hard to make enough money to maintain the code:
    Small market (network researchers)
    Large and complex code
Hard to obtain funding from research agencies:




    Lacage         ns-3: History and Future   March 2012   6 / 27
Long Term Survival

Hard to make enough money to maintain the code:
    Small market (network researchers)
    Large and complex code
Hard to obtain funding from research agencies:
    Funds to use the tool




    Lacage         ns-3: History and Future   March 2012   6 / 27
Long Term Survival

Hard to make enough money to maintain the code:
    Small market (network researchers)
    Large and complex code
Hard 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
Long Term Survival

Hard to make enough money to maintain the code:
    Small market (network researchers)
    Large and complex code
Hard 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
Open Source Community




Lacage        ns-3: History and Future   March 2012   7 / 27
Open Source Community
Hard to create:




     Lacage        ns-3: History and Future   March 2012   7 / 27
Open Source Community
Hard to create:
    Licensing is tricky




     Lacage          ns-3: History and Future   March 2012   7 / 27
Open Source Community
Hard to create:
    Licensing is tricky
    Meritocracy




     Lacage          ns-3: History and Future   March 2012   7 / 27
Open Source Community
Hard to create:
    Licensing is tricky
    Meritocracy
    No discussions behind closed doors




    Lacage         ns-3: History and Future   March 2012   7 / 27
Open Source Community
Hard 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
Open Source Community
Hard to create:
    Licensing is tricky
    Meritocracy
    No discussions behind closed doors
    Must lose control to see the baby grow
Classic management problem:




     Lacage         ns-3: History and Future   March 2012   7 / 27
Open Source Community
Hard to create:
    Licensing is tricky
    Meritocracy
    No discussions behind closed doors
    Must lose control to see the baby grow
Classic management problem:
    Spend time to do things yourself




     Lacage         ns-3: History and Future   March 2012   7 / 27
Open Source Community
Hard to create:
    Licensing is tricky
    Meritocracy
    No discussions behind closed doors
    Must lose control to see the baby grow
Classic 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
Open Source Community
Hard to create:
      Licensing is tricky
      Meritocracy
      No discussions behind closed doors
      Must lose control to see the baby grow
Classic management problem:
      Spend time to do things yourself
      Spend time to help others do the work
It is a hard pill to (make upper management) swallow

     Lacage         ns-3: History and Future   March 2012   7 / 27
But the good news is...




Lacage       ns-3: History and Future   March 2012   8 / 27
But the good news is...



We (They) all swallowed it.




     Lacage          ns-3: History and Future   March 2012   8 / 27
And now,


The story of how:




     Lacage         ns-3: History and Future      March 2012   9 / 27
And now,


The story of how:
    The Real World pervades everything




    Lacage         ns-3: History and Future      March 2012   9 / 27
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
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
Outline

Introduction

Packet

Object Framework

Conclusion



     Lacage        ns-3: History and Future    March 2012   10 / 27
Requirements




Lacage   ns-3: History and Future   March 2012   11 / 27
Requirements

Transparent conversion to/from real bytes




Lacage          ns-3: History and Future   March 2012   11 / 27
Requirements

Transparent conversion to/from real bytes
CPU and memory efficiency




Lacage          ns-3: History and Future   March 2012   11 / 27
Requirements

Transparent conversion to/from real bytes
CPU and memory efficiency
Fragmentation/Reassembly




Lacage          ns-3: History and Future   March 2012   11 / 27
Requirements

Transparent conversion to/from real bytes
CPU and memory efficiency
Fragmentation/Reassembly
Simulation-only data




Lacage          ns-3: History and Future   March 2012   11 / 27
Requirements

Transparent conversion to/from real bytes
CPU and memory efficiency
Fragmentation/Reassembly
Simulation-only data
Pretty printing




Lacage          ns-3: History and Future   March 2012   11 / 27
Requirements

Transparent conversion to/from real bytes
CPU and memory efficiency
Fragmentation/Reassembly
Simulation-only data
Pretty printing
Extensibility




Lacage          ns-3: History and Future   March 2012   11 / 27
Requirements

Transparent conversion to/from real bytes
CPU and memory efficiency
Fragmentation/Reassembly
Simulation-only data
Pretty printing
Extensibility
Robust Application Programming Interface (API)



Lacage         ns-3: History and Future   March 2012   11 / 27
Related Work

Two approaches




    Lacage       ns-3: History and Future   March 2012   12 / 27
Related Work

Two approaches
    Packet is list of headers: GTNetS, OMNeT++,
      SSFNet
             MAC   IP                TCP           Payload




    Lacage              ns-3: History and Future             March 2012   12 / 27
Related Work

Two 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
Pros and Cons

                                            List   Buffer
Fragmentation, Reassembly
Conversion real bytes
Simulation-only data
Pretty printing
CPU, memory efficiency




   Lacage        ns-3: History and Future             March 2012   13 / 27
Pros and Cons

                                            List   Buffer          ns-3
Fragmentation, Reassembly
Conversion real bytes
Simulation-only data
Pretty printing
CPU, memory efficiency




   Lacage        ns-3: History and Future             March 2012   13 / 27
How did we get there ?

About 10 successive versions...




     Lacage         ns-3: History and Future   March 2012   14 / 27
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
How did we get there ?

Started with a simple version in YANS:

  Headers’ List
     Tags
  RefCounting



  Sep
  2005


But, hard to integrate the BSD TCP stack



         Lacage       ns-3: History and Future   March 2012   14 / 27
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
How did we get there ?

Real bytes in YANS:

  Headers’ List
     Tags
  RefCounting

                   Jan
                  2006
  Sep
  2005

           Real
           Bytes


But, hard to manage reference counting by hand

         Lacage              ns-3: History and Future   March 2012   14 / 27
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
How did we get there ?

Smart Pointers in YANS:

  Headers’ List              Smart
     Tags                   Pointers
  RefCounting

                   Jan
                  2006
  Sep                     Jun
  2005                   2006

           Real
           Bytes


But, memory & CPU performance is not good

         Lacage                        ns-3: History and Future   March 2012   14 / 27
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
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


Still, Fast TCP pushes the boundary

         Lacage                         ns-3: History and Future   March 2012   14 / 27
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
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


Really, debugging is hard

         Lacage                         ns-3: History and Future   March 2012   14 / 27
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
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


Really, debugging is still hard

         Lacage                         ns-3: History and Future   March 2012   14 / 27
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
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


But, we do need pointers

         Lacage                         ns-3: History and Future                        March 2012   14 / 27
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
What I learned the hard way




Lacage   ns-3: History and Future   March 2012   15 / 27
What I learned the hard way


The mountain seems impossibly high at first




Lacage         ns-3: History and Future   March 2012   15 / 27
What I learned the hard way


The mountain seems impossibly high at first
Forget about the top, aim for base camp




Lacage         ns-3: History and Future   March 2012   15 / 27
What I learned the hard way


The mountain seems impossibly high at first
Forget about the top, aim for base camp
The mountain grows with every new user




Lacage         ns-3: History and Future   March 2012   15 / 27
What I learned the hard way


The mountain seems impossibly high at first
Forget about the top, aim for base camp
The mountain grows with every new user
Listen to users




Lacage         ns-3: History and Future   March 2012   15 / 27
Outline

Introduction

Packet

Object Framework

Conclusion



     Lacage        ns-3: History and Future    March 2012   16 / 27
Requirements




Lacage   ns-3: History and Future   March 2012   17 / 27
Requirements

Uniform memory management




Lacage       ns-3: History and Future   March 2012   17 / 27
Requirements

Uniform memory management
Allow simulation configuration




Lacage         ns-3: History and Future   March 2012   17 / 27
Requirements

Uniform memory management
Allow simulation configuration
Solve the object composition problem




Lacage         ns-3: History and Future   March 2012   17 / 27
Requirements

Uniform memory management
Allow simulation configuration
Solve the object composition problem
Decouple Trace Sources from Trace Sinks




Lacage         ns-3: History and Future   March 2012   17 / 27
Requirements

Uniform memory management
Allow simulation configuration
Solve the object composition problem
Decouple Trace Sources from Trace Sinks
Allow simulation trace setup




Lacage         ns-3: History and Future   March 2012   17 / 27
Requirements

Uniform memory management
Allow simulation configuration
Solve the object composition problem
Decouple Trace Sources from Trace Sinks
Allow simulation trace setup
Do not be intrusive to Model developers




Lacage         ns-3: History and Future   March 2012   17 / 27
Fast Forward to 2012




Lacage     ns-3: History and Future   March 2012   18 / 27
Fast Forward to 2012


Memory management: Ptr<Object> + Dispose




Lacage        ns-3: History and Future   March 2012   18 / 27
Fast Forward to 2012


Memory management: Ptr<Object> + Dispose
Configuration: Attributes + ConfigStore




Lacage        ns-3: History and Future   March 2012   18 / 27
Fast Forward to 2012


Memory management: Ptr<Object> + Dispose
Configuration: Attributes + ConfigStore
Tracing: integrated in Attributes




Lacage        ns-3: History and Future   March 2012   18 / 27
Fast Forward to 2012


Memory management: Ptr<Object> + Dispose
Configuration: Attributes + ConfigStore
Tracing: integrated in Attributes
Configuration, Tracing: optional




Lacage        ns-3: History and Future   March 2012   18 / 27
Fast Forward to 2012


    Memory management: Ptr<Object> + Dispose
    Configuration: Attributes + ConfigStore
    Tracing: integrated in Attributes
    Configuration, Tracing: optional
Now on par with Omnetpp & Opnet feature-wise




    Lacage         ns-3: History and Future   March 2012   18 / 27
A Windy Path

It Started with nothing




     Lacage           ns-3: History and Future   March 2012   19 / 27
A Windy Path

But tom liked the ns-2 default values

       Default
       Value




Mar
2007




           Lacage    ns-3: History and Future   March 2012   19 / 27
A Windy Path

But tom liked the ns-2 default values

       Default
       Value




Mar
2007


What about memory management, aggregation ?




           Lacage    ns-3: History and Future   March 2012   19 / 27
A Windy Path

Here comes microsoft’s IUnknown!

       Default
       Value

                     Apr
                    2007
Mar
2007

             IUnknown




           Lacage          ns-3: History and Future   March 2012   19 / 27
A Windy Path

Here comes microsoft’s IUnknown!

       Default
       Value

                     Apr
                    2007
Mar
2007

             IUnknown



Scratch that, everyone hates it


           Lacage          ns-3: History and Future   March 2012   19 / 27
A Windy Path

Resolving trace sources: microsoft’s IMoniker

       Default
                           IMoniker
       Value

                     Apr
                    2007
Mar
2007

             IUnknown




           Lacage                     ns-3: History and Future   March 2012   19 / 27
A Windy Path

Resolving trace sources: microsoft’s IMoniker

       Default
                           IMoniker
       Value

                     Apr
                    2007
Mar
2007

             IUnknown



Hrm... So, what about memory management ?

           Lacage                     ns-3: History and Future   March 2012   19 / 27
A Windy Path

Reference Counting wins

       Default
                           IMoniker
       Value

                     Apr
                    2007
Mar                                         May
2007                                        2007

                               Reference
             IUnknown
                               Counting




           Lacage                      ns-3: History and Future   March 2012   19 / 27
A Windy Path

Reference Counting wins

       Default
                           IMoniker
       Value

                     Apr
                    2007
Mar                                         May
2007                                        2007

                               Reference
             IUnknown
                               Counting


And Cycles ?

           Lacage                      ns-3: History and Future   March 2012   19 / 27
A Windy Path

Dispose to Break the Cycles

       Default
                           IMoniker          Dispose
       Value

                     Apr
                    2007
Mar                                         May
2007                                        2007

                               Reference
             IUnknown
                               Counting




           Lacage                      ns-3: History and Future   March 2012   19 / 27
A Windy Path

Dispose to Break the Cycles

       Default
                           IMoniker          Dispose
       Value

                     Apr
                    2007
Mar                                         May
2007                                        2007

                               Reference
             IUnknown
                               Counting


Where is my IUnknown::QueryInterface ?

           Lacage                      ns-3: History and Future   March 2012   19 / 27
A Windy Path

Dynamic Aggregation

       Default
                           IMoniker          Dispose
       Value

                     Apr
                    2007
Mar                                         May
2007                                        2007

                               Reference
             IUnknown                                     Aggregation
                               Counting




           Lacage                      ns-3: History and Future         March 2012   19 / 27
A Windy Path

Dynamic Aggregation

       Default
                           IMoniker          Dispose
       Value

                     Apr
                    2007
Mar                                         May
2007                                        2007

                               Reference
             IUnknown                                     Aggregation
                               Counting


Ref/Unref by hand still sucks!

           Lacage                      ns-3: History and Future         March 2012   19 / 27
A Windy Path

Smart Pointers are back

       Default
                           IMoniker          Dispose              Ptr<>
       Value

                     Apr
                    2007
Mar                                         May
2007                                        2007

                               Reference
             IUnknown                                     Aggregation
                               Counting




           Lacage                      ns-3: History and Future           March 2012   19 / 27
A Windy Path

Smart Pointers are back

       Default
                           IMoniker          Dispose              Ptr<>
       Value

                     Apr
                    2007
Mar                                         May
2007                                        2007

                               Reference
             IUnknown                                     Aggregation
                               Counting


IMoniker is still ugly...


           Lacage                      ns-3: History and Future           March 2012   19 / 27
A Windy Path

Introduce Attributes

       Default
                           IMoniker          Dispose              Ptr<>      Attributes
       Value

                     Apr
                    2007
Mar                                         May                           Jan-Mar
2007                                        2007                           2008

                               Reference
             IUnknown                                     Aggregation
                               Counting




           Lacage                      ns-3: History and Future            March 2012     19 / 27
With hindsight...




Lacage   ns-3: History and Future   March 2012   20 / 27
With hindsight...


I wish:
     we had looked at Omnetpp & Opnet before




    Lacage         ns-3: History and Future   March 2012   20 / 27
With hindsight...


I wish:
     we had looked at Omnetpp & Opnet before
The result is still nice thanks to:
     Willingness to listen to users




    Lacage         ns-3: History and Future   March 2012   20 / 27
With hindsight...


I wish:
     we had looked at Omnetpp & Opnet before
The result is still nice thanks to:
     Willingness to listen to users
     Incremental development




    Lacage         ns-3: History and Future   March 2012   20 / 27
No, it is not over




Lacage   ns-3: History and Future   March 2012   21 / 27
No, it is not over

Real Code Integration:
    Linux kernel, Quagga, CCNx, etc.




    Lacage         ns-3: History and Future   March 2012   21 / 27
No, it is not over

Real Code Integration:
    Linux kernel, Quagga, CCNx, etc.
    Contiki




    Lacage         ns-3: History and Future   March 2012   21 / 27
No, it is not over

Real Code Integration:
    Linux kernel, Quagga, CCNx, etc.
    Contiki
    TinyOS




    Lacage         ns-3: History and Future   March 2012   21 / 27
No, it is not over

Real Code Integration:
    Linux kernel, Quagga, CCNx, etc.
    Contiki
    TinyOS
Brings new challenges:
    Attributes ?




    Lacage         ns-3: History and Future   March 2012   21 / 27
No, it is not over

Real Code Integration:
    Linux kernel, Quagga, CCNx, etc.
    Contiki
    TinyOS
Brings new challenges:
    Attributes ?
    Tracing ?



    Lacage         ns-3: History and Future   March 2012   21 / 27
Configuring Attributes




Lacage     ns-3: History and Future   March 2012   22 / 27
Configuring Attributes

Linux Kernel:




     Lacage       ns-3: History and Future   March 2012   22 / 27
Configuring Attributes

Linux Kernel:
    Bridge /proc/net inside the attribute system




     Lacage          ns-3: History and Future   March 2012   22 / 27
Configuring Attributes

Linux 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
Configuring Attributes

Linux 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
Configuring Attributes

Linux 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
Configuring Attributes

Linux 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
Tracing




Lacage   ns-3: History and Future    March 2012   23 / 27
Tracing

We do not want to modify the external code:




     Lacage         ns-3: History and Future    March 2012   23 / 27
Tracing

We do not want to modify the external code:
   Linux Kernel: Tracepoints, Ftrace, KProbe, etc.




     Lacage         ns-3: History and Future    March 2012   23 / 27
Tracing

We 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
Tracing

We do not want to modify the external code:
    Linux Kernel: Tracepoints, Ftrace, KProbe, etc.
    But no builtin tracing in general
Re-implement Kprobe, JProbe, etc. in userspace:




     Lacage         ns-3: History and Future    March 2012   23 / 27
Tracing

We do not want to modify the external code:
    Linux Kernel: Tracepoints, Ftrace, KProbe, etc.
    But no builtin tracing in general
Re-implement Kprobe, JProbe, etc. in userspace:
    Introspection using debug information




     Lacage         ns-3: History and Future    March 2012   23 / 27
Tracing

We do not want to modify the external code:
    Linux Kernel: Tracepoints, Ftrace, KProbe, etc.
    But no builtin tracing in general
Re-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
Outline

Introduction

Packet

Object Framework

Conclusion



     Lacage        ns-3: History and Future    March 2012   24 / 27
Summary




Lacage   ns-3: History and Future      March 2012   25 / 27
Summary


What really matters (today):




     Lacage          ns-3: History and Future      March 2012   25 / 27
Summary


What really matters (today):
   Alignment with the Real World




    Lacage         ns-3: History and Future      March 2012   25 / 27
Summary


What really matters (today):
   Alignment with the Real World
   An Open Source Community




    Lacage         ns-3: History and Future      March 2012   25 / 27
Summary


What really matters (today):
   Alignment with the Real World
   An Open Source Community
   Incremental development




    Lacage         ns-3: History and Future      March 2012   25 / 27
Summary


What 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
Thank you !



         Questions ?



Lacage      ns-3: History and Future        March 2012   26 / 27
Contact



         mathieu@cutebugs.net




Lacage        ns-3: History and Future     March 2012   27 / 27

Más contenido relacionado

Destacado

Script login form php
Script login form phpScript login form php
Script login form phpHanief Rpl
 
Memphis php html form processing with php
Memphis php   html form processing with phpMemphis php   html form processing with php
Memphis php html form processing with phpJoe Ferguson
 
Php Form
Php FormPhp Form
Php Formlotlot
 
Chapter 07 php forms handling
Chapter 07   php forms handlingChapter 07   php forms handling
Chapter 07 php forms handlingDhani Ahmad
 
Fundamental of Shell Programming
Fundamental of Shell ProgrammingFundamental of Shell Programming
Fundamental of Shell ProgrammingRahul Hada
 
Building Complex Topology using NS3
Building Complex Topology using NS3Building Complex Topology using NS3
Building Complex Topology using NS3Rahul Hada
 
Form Processing In Php
Form Processing In PhpForm Processing In Php
Form Processing In PhpHarit Kothari
 
Creating a Simple PHP and MySQL-Based Login System
Creating a Simple PHP and MySQL-Based Login SystemCreating a Simple PHP and MySQL-Based Login System
Creating a Simple PHP and MySQL-Based Login SystemAzharul Haque Shohan
 
Ns3 implementation wifi
Ns3 implementation wifiNs3 implementation wifi
Ns3 implementation wifiSalah Amean
 
Cognitive radio networks
Cognitive radio networksCognitive radio networks
Cognitive radio networksVatsala Sharma
 
Cognitive Radio, Introduction and Main Issues
Cognitive Radio, Introduction and Main IssuesCognitive Radio, Introduction and Main Issues
Cognitive Radio, Introduction and Main IssuesKuncoro Wastuwibowo
 

Destacado (20)

Script login form php
Script login form phpScript login form php
Script login form php
 
Ns3
Ns3Ns3
Ns3
 
Memphis php html form processing with php
Memphis php   html form processing with phpMemphis php   html form processing with php
Memphis php html form processing with php
 
Making web forms using php
Making web forms using phpMaking web forms using php
Making web forms using php
 
Php Form
Php FormPhp Form
Php Form
 
Chapter 07 php forms handling
Chapter 07   php forms handlingChapter 07   php forms handling
Chapter 07 php forms handling
 
Inheritance
InheritanceInheritance
Inheritance
 
Fundamental of Shell Programming
Fundamental of Shell ProgrammingFundamental of Shell Programming
Fundamental of Shell Programming
 
3 php forms
3 php forms3 php forms
3 php forms
 
Building Complex Topology using NS3
Building Complex Topology using NS3Building Complex Topology using NS3
Building Complex Topology using NS3
 
Form Processing In Php
Form Processing In PhpForm Processing In Php
Form Processing In Php
 
NS3 Overview
NS3 OverviewNS3 Overview
NS3 Overview
 
Creating a Simple PHP and MySQL-Based Login System
Creating a Simple PHP and MySQL-Based Login SystemCreating a Simple PHP and MySQL-Based Login System
Creating a Simple PHP and MySQL-Based Login System
 
Php forms
Php formsPhp forms
Php forms
 
Leach & Pegasis
Leach & PegasisLeach & Pegasis
Leach & Pegasis
 
Ns3 implementation wifi
Ns3 implementation wifiNs3 implementation wifi
Ns3 implementation wifi
 
COGNITIVE RADIO
COGNITIVE RADIOCOGNITIVE RADIO
COGNITIVE RADIO
 
Php and MySQL
Php and MySQLPhp and MySQL
Php and MySQL
 
Cognitive radio networks
Cognitive radio networksCognitive radio networks
Cognitive radio networks
 
Cognitive Radio, Introduction and Main Issues
Cognitive Radio, Introduction and Main IssuesCognitive Radio, Introduction and Main Issues
Cognitive Radio, Introduction and Main Issues
 

Similar a ns-3: History and Future

What network simulator questions do users ask? a large-scale study of stack o...
What network simulator questions do users ask? a large-scale study of stack o...What network simulator questions do users ask? a large-scale study of stack o...
What network simulator questions do users ask? a large-scale study of stack o...nooriasukmaningtyas
 
Stream Reasoning: a summary of ten years of research and a vision for the nex...
Stream Reasoning: a summary of ten years of research and a vision for the nex...Stream Reasoning: a summary of ten years of research and a vision for the nex...
Stream Reasoning: a summary of ten years of research and a vision for the nex...Emanuele Della Valle
 
Opportunistic Persistent Data Storage- Interim Presentation
Opportunistic Persistent Data Storage- Interim PresentationOpportunistic Persistent Data Storage- Interim Presentation
Opportunistic Persistent Data Storage- Interim PresentationLuke Weerasooriya
 
Week 3 Reflective JournalPrior to beginning work on this assig.docx
Week 3 Reflective JournalPrior to beginning work on this assig.docxWeek 3 Reflective JournalPrior to beginning work on this assig.docx
Week 3 Reflective JournalPrior to beginning work on this assig.docxjessiehampson
 
Linked Open Data (LOD) part 3
Linked Open Data (LOD)  part 3Linked Open Data (LOD)  part 3
Linked Open Data (LOD) part 3IPLODProject
 
Learning Resource Metadata Initiative: Vocabulary Development Best Practices
Learning Resource Metadata Initiative: Vocabulary Development Best PracticesLearning Resource Metadata Initiative: Vocabulary Development Best Practices
Learning Resource Metadata Initiative: Vocabulary Development Best PracticesMike Linksvayer
 
2013 10-03-semantics-meetup-s buxton-mark_logic_pub
2013 10-03-semantics-meetup-s buxton-mark_logic_pub2013 10-03-semantics-meetup-s buxton-mark_logic_pub
2013 10-03-semantics-meetup-s buxton-mark_logic_pubStephen Buxton
 
Topic map for Topic Maps case examples
Topic map for Topic Maps case examplesTopic map for Topic Maps case examples
Topic map for Topic Maps case examplestmra
 
Discovery event david baker
Discovery event david bakerDiscovery event david baker
Discovery event david bakerRDTF-Discovery
 
RDF: Resource Description Failures?
RDF: Resource Description Failures?RDF: Resource Description Failures?
RDF: Resource Description Failures?Robert Sanderson
 
Diary of a Wimpy Model Manager
Diary of a Wimpy Model ManagerDiary of a Wimpy Model Manager
Diary of a Wimpy Model ManagerEric Stephan
 
Requirements1) Due 6 Oct2) APA 6th Ed format3) 6 Pages.docx
Requirements1) Due 6 Oct2) APA 6th Ed format3) 6 Pages.docxRequirements1) Due 6 Oct2) APA 6th Ed format3) 6 Pages.docx
Requirements1) Due 6 Oct2) APA 6th Ed format3) 6 Pages.docxheunice
 
Modern association rule mining methods
Modern association rule mining methodsModern association rule mining methods
Modern association rule mining methodsijcsity
 
SoundSoftware: Software Sustainability for audio and Music Researchers
SoundSoftware: Software Sustainability for audio and Music Researchers SoundSoftware: Software Sustainability for audio and Music Researchers
SoundSoftware: Software Sustainability for audio and Music Researchers SoundSoftware ac.uk
 
Teaching Students Collaborative Requirements Engineering. Case Study Red:Wire
Teaching Students Collaborative Requirements Engineering. Case Study Red:WireTeaching Students Collaborative Requirements Engineering. Case Study Red:Wire
Teaching Students Collaborative Requirements Engineering. Case Study Red:WireDagmar Monett
 
The future of cloud computing - Jisc Digifest 2016
The future of cloud computing - Jisc Digifest 2016The future of cloud computing - Jisc Digifest 2016
The future of cloud computing - Jisc Digifest 2016Jisc
 
Aggregating Social Media for Enhancing Conference Experiences
Aggregating Social Media for Enhancing Conference ExperiencesAggregating Social Media for Enhancing Conference Experiences
Aggregating Social Media for Enhancing Conference ExperiencesHouda khrouf
 
LOR Characteristics and Considerations
LOR Characteristics and ConsiderationsLOR Characteristics and Considerations
LOR Characteristics and ConsiderationsScott Leslie
 

Similar a ns-3: History and Future (20)

What network simulator questions do users ask? a large-scale study of stack o...
What network simulator questions do users ask? a large-scale study of stack o...What network simulator questions do users ask? a large-scale study of stack o...
What network simulator questions do users ask? a large-scale study of stack o...
 
Stream Reasoning: a summary of ten years of research and a vision for the nex...
Stream Reasoning: a summary of ten years of research and a vision for the nex...Stream Reasoning: a summary of ten years of research and a vision for the nex...
Stream Reasoning: a summary of ten years of research and a vision for the nex...
 
NoTube: Models & Semantics
NoTube: Models & SemanticsNoTube: Models & Semantics
NoTube: Models & Semantics
 
Opportunistic Persistent Data Storage- Interim Presentation
Opportunistic Persistent Data Storage- Interim PresentationOpportunistic Persistent Data Storage- Interim Presentation
Opportunistic Persistent Data Storage- Interim Presentation
 
Week 3 Reflective JournalPrior to beginning work on this assig.docx
Week 3 Reflective JournalPrior to beginning work on this assig.docxWeek 3 Reflective JournalPrior to beginning work on this assig.docx
Week 3 Reflective JournalPrior to beginning work on this assig.docx
 
Linked Open Data (LOD) part 3
Linked Open Data (LOD)  part 3Linked Open Data (LOD)  part 3
Linked Open Data (LOD) part 3
 
Learning Resource Metadata Initiative: Vocabulary Development Best Practices
Learning Resource Metadata Initiative: Vocabulary Development Best PracticesLearning Resource Metadata Initiative: Vocabulary Development Best Practices
Learning Resource Metadata Initiative: Vocabulary Development Best Practices
 
LOD2 Plenary Vienna 2012: WP9 publicdata.eu – Publishing Governmental Informa...
LOD2 Plenary Vienna 2012: WP9 publicdata.eu – Publishing Governmental Informa...LOD2 Plenary Vienna 2012: WP9 publicdata.eu – Publishing Governmental Informa...
LOD2 Plenary Vienna 2012: WP9 publicdata.eu – Publishing Governmental Informa...
 
2013 10-03-semantics-meetup-s buxton-mark_logic_pub
2013 10-03-semantics-meetup-s buxton-mark_logic_pub2013 10-03-semantics-meetup-s buxton-mark_logic_pub
2013 10-03-semantics-meetup-s buxton-mark_logic_pub
 
Topic map for Topic Maps case examples
Topic map for Topic Maps case examplesTopic map for Topic Maps case examples
Topic map for Topic Maps case examples
 
Discovery event david baker
Discovery event david bakerDiscovery event david baker
Discovery event david baker
 
RDF: Resource Description Failures?
RDF: Resource Description Failures?RDF: Resource Description Failures?
RDF: Resource Description Failures?
 
Diary of a Wimpy Model Manager
Diary of a Wimpy Model ManagerDiary of a Wimpy Model Manager
Diary of a Wimpy Model Manager
 
Requirements1) Due 6 Oct2) APA 6th Ed format3) 6 Pages.docx
Requirements1) Due 6 Oct2) APA 6th Ed format3) 6 Pages.docxRequirements1) Due 6 Oct2) APA 6th Ed format3) 6 Pages.docx
Requirements1) Due 6 Oct2) APA 6th Ed format3) 6 Pages.docx
 
Modern association rule mining methods
Modern association rule mining methodsModern association rule mining methods
Modern association rule mining methods
 
SoundSoftware: Software Sustainability for audio and Music Researchers
SoundSoftware: Software Sustainability for audio and Music Researchers SoundSoftware: Software Sustainability for audio and Music Researchers
SoundSoftware: Software Sustainability for audio and Music Researchers
 
Teaching Students Collaborative Requirements Engineering. Case Study Red:Wire
Teaching Students Collaborative Requirements Engineering. Case Study Red:WireTeaching Students Collaborative Requirements Engineering. Case Study Red:Wire
Teaching Students Collaborative Requirements Engineering. Case Study Red:Wire
 
The future of cloud computing - Jisc Digifest 2016
The future of cloud computing - Jisc Digifest 2016The future of cloud computing - Jisc Digifest 2016
The future of cloud computing - Jisc Digifest 2016
 
Aggregating Social Media for Enhancing Conference Experiences
Aggregating Social Media for Enhancing Conference ExperiencesAggregating Social Media for Enhancing Conference Experiences
Aggregating Social Media for Enhancing Conference Experiences
 
LOR Characteristics and Considerations
LOR Characteristics and ConsiderationsLOR Characteristics and Considerations
LOR Characteristics and Considerations
 

Último

Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 

Último (20)

Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 

ns-3: History and Future

  • 1. ns-3: History and Future Mathieu Lacage March, 24th 2012 Lacage ns-3: History and Future March 2012 1 / 27
  • 2. Outline Introduction Packet Object Framework Conclusion Lacage ns-3: History and Future March 2012 2 / 27
  • 3. How the project came to be Lacage ns-3: History and Future March 2012 3 / 27
  • 4. How the project came to be Multiple partners: Lacage ns-3: History and Future March 2012 3 / 27
  • 5. How the project came to be Multiple partners: NSF-funded: UWA, GT, ISI Lacage ns-3: History and Future March 2012 3 / 27
  • 6. How the project came to be Multiple 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 be Multiple partners: NSF-funded: UWA, GT, ISI INRIA-funded: planète Pulling 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. Requirements Lacage ns-3: History and Future March 2012 4 / 27
  • 9. Requirements Real-code integration, Emulation: Lacage ns-3: History and Future March 2012 4 / 27
  • 10. Requirements Real-code integration, Emulation: Models must not be too abstract (Node, etc.) Lacage ns-3: History and Future March 2012 4 / 27
  • 11. Requirements Real-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. Requirements Real-code integration, Emulation: Models must not be too abstract (Node, etc.) Must be transparent to models Fast TCP: Lacage ns-3: History and Future March 2012 4 / 27
  • 13. Requirements Real-code integration, Emulation: Models must not be too abstract (Node, etc.) Must be transparent to models Fast TCP: Memory efficiency of many packets in flight Lacage ns-3: History and Future March 2012 4 / 27
  • 14. More requirements Lacage ns-3: History and Future March 2012 5 / 27
  • 15. More requirements Education: Lacage ns-3: History and Future March 2012 5 / 27
  • 16. More requirements Education: Must be easy to use for students Lacage ns-3: History and Future March 2012 5 / 27
  • 17. More requirements Education: Must be easy to use for students Wireless: Lacage ns-3: History and Future March 2012 5 / 27
  • 18. More requirements Education: Must be easy to use for students Wireless: Must have great validated wireless models Lacage ns-3: History and Future March 2012 5 / 27
  • 19. More requirements Education: Must be easy to use for students Wireless: Must have great validated wireless models Long term survival: Lacage ns-3: History and Future March 2012 5 / 27
  • 20. More requirements Education: Must be easy to use for students Wireless: Must have great validated wireless models Long term survival: Maintenance: production-quality code Lacage ns-3: History and Future March 2012 5 / 27
  • 21. More requirements Education: Must be easy to use for students Wireless: Must have great validated wireless models Long term survival: Maintenance: production-quality code Funding: NSF & INRIA funding finite Lacage ns-3: History and Future March 2012 5 / 27
  • 22. Long Term Survival Lacage ns-3: History and Future March 2012 6 / 27
  • 23. Long Term Survival Hard to make enough money to maintain the code: Lacage ns-3: History and Future March 2012 6 / 27
  • 24. Long Term Survival Hard 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 Survival Hard 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 Survival Hard to make enough money to maintain the code: Small market (network researchers) Large and complex code Hard to obtain funding from research agencies: Lacage ns-3: History and Future March 2012 6 / 27
  • 27. Long Term Survival Hard to make enough money to maintain the code: Small market (network researchers) Large and complex code Hard to obtain funding from research agencies: Funds to use the tool Lacage ns-3: History and Future March 2012 6 / 27
  • 28. Long Term Survival Hard to make enough money to maintain the code: Small market (network researchers) Large and complex code Hard 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 Survival Hard to make enough money to maintain the code: Small market (network researchers) Large and complex code Hard 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 Community Lacage ns-3: History and Future March 2012 7 / 27
  • 31. Open Source Community Hard to create: Lacage ns-3: History and Future March 2012 7 / 27
  • 32. Open Source Community Hard to create: Licensing is tricky Lacage ns-3: History and Future March 2012 7 / 27
  • 33. Open Source Community Hard to create: Licensing is tricky Meritocracy Lacage ns-3: History and Future March 2012 7 / 27
  • 34. Open Source Community Hard to create: Licensing is tricky Meritocracy No discussions behind closed doors Lacage ns-3: History and Future March 2012 7 / 27
  • 35. Open Source Community Hard 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 Community Hard to create: Licensing is tricky Meritocracy No discussions behind closed doors Must lose control to see the baby grow Classic management problem: Lacage ns-3: History and Future March 2012 7 / 27
  • 37. Open Source Community Hard to create: Licensing is tricky Meritocracy No discussions behind closed doors Must lose control to see the baby grow Classic management problem: Spend time to do things yourself Lacage ns-3: History and Future March 2012 7 / 27
  • 38. Open Source Community Hard to create: Licensing is tricky Meritocracy No discussions behind closed doors Must lose control to see the baby grow Classic 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 Community Hard to create: Licensing is tricky Meritocracy No discussions behind closed doors Must lose control to see the baby grow Classic management problem: Spend time to do things yourself Spend time to help others do the work It 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. Outline Introduction Packet Object Framework Conclusion Lacage ns-3: History and Future March 2012 10 / 27
  • 47. Requirements Lacage ns-3: History and Future March 2012 11 / 27
  • 48. Requirements Transparent conversion to/from real bytes Lacage ns-3: History and Future March 2012 11 / 27
  • 49. Requirements Transparent conversion to/from real bytes CPU and memory efficiency Lacage ns-3: History and Future March 2012 11 / 27
  • 50. Requirements Transparent conversion to/from real bytes CPU and memory efficiency Fragmentation/Reassembly Lacage ns-3: History and Future March 2012 11 / 27
  • 51. Requirements Transparent conversion to/from real bytes CPU and memory efficiency Fragmentation/Reassembly Simulation-only data Lacage ns-3: History and Future March 2012 11 / 27
  • 52. Requirements Transparent conversion to/from real bytes CPU and memory efficiency Fragmentation/Reassembly Simulation-only data Pretty printing Lacage ns-3: History and Future March 2012 11 / 27
  • 53. Requirements Transparent conversion to/from real bytes CPU and memory efficiency Fragmentation/Reassembly Simulation-only data Pretty printing Extensibility Lacage ns-3: History and Future March 2012 11 / 27
  • 54. Requirements Transparent conversion to/from real bytes CPU and memory efficiency Fragmentation/Reassembly Simulation-only data Pretty printing Extensibility Robust Application Programming Interface (API) Lacage ns-3: History and Future March 2012 11 / 27
  • 55. Related Work Two approaches Lacage ns-3: History and Future March 2012 12 / 27
  • 56. Related Work Two 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 Work Two 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 Buffer Fragmentation, Reassembly Conversion real bytes Simulation-only data Pretty printing CPU, memory efficiency Lacage ns-3: History and Future March 2012 13 / 27
  • 59. Pros and Cons List Buffer ns-3 Fragmentation, Reassembly Conversion real bytes Simulation-only data Pretty printing CPU, 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 2005 But, 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 Bytes But, 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 Bytes But, 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 Bytes Still, 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 Bytes Really, 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 UID Really, 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 UID But, 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 way Lacage ns-3: History and Future March 2012 15 / 27
  • 77. What I learned the hard way The mountain seems impossibly high at first Lacage ns-3: History and Future March 2012 15 / 27
  • 78. What I learned the hard way The mountain seems impossibly high at first Forget about the top, aim for base camp Lacage ns-3: History and Future March 2012 15 / 27
  • 79. What I learned the hard way The mountain seems impossibly high at first Forget about the top, aim for base camp The mountain grows with every new user Lacage ns-3: History and Future March 2012 15 / 27
  • 80. What I learned the hard way The mountain seems impossibly high at first Forget about the top, aim for base camp The mountain grows with every new user Listen to users Lacage ns-3: History and Future March 2012 15 / 27
  • 81. Outline Introduction Packet Object Framework Conclusion Lacage ns-3: History and Future March 2012 16 / 27
  • 82. Requirements Lacage ns-3: History and Future March 2012 17 / 27
  • 83. Requirements Uniform memory management Lacage ns-3: History and Future March 2012 17 / 27
  • 84. Requirements Uniform memory management Allow simulation configuration Lacage ns-3: History and Future March 2012 17 / 27
  • 85. Requirements Uniform memory management Allow simulation configuration Solve the object composition problem Lacage ns-3: History and Future March 2012 17 / 27
  • 86. Requirements Uniform memory management Allow simulation configuration Solve the object composition problem Decouple Trace Sources from Trace Sinks Lacage ns-3: History and Future March 2012 17 / 27
  • 87. Requirements Uniform memory management Allow simulation configuration Solve the object composition problem Decouple Trace Sources from Trace Sinks Allow simulation trace setup Lacage ns-3: History and Future March 2012 17 / 27
  • 88. Requirements Uniform memory management Allow simulation configuration Solve the object composition problem Decouple Trace Sources from Trace Sinks Allow simulation trace setup Do not be intrusive to Model developers Lacage ns-3: History and Future March 2012 17 / 27
  • 89. Fast Forward to 2012 Lacage ns-3: History and Future March 2012 18 / 27
  • 90. Fast Forward to 2012 Memory management: Ptr<Object> + Dispose Lacage ns-3: History and Future March 2012 18 / 27
  • 91. Fast Forward to 2012 Memory management: Ptr<Object> + Dispose Configuration: Attributes + ConfigStore Lacage ns-3: History and Future March 2012 18 / 27
  • 92. Fast Forward to 2012 Memory management: Ptr<Object> + Dispose Configuration: Attributes + ConfigStore Tracing: integrated in Attributes Lacage ns-3: History and Future March 2012 18 / 27
  • 93. Fast Forward to 2012 Memory management: Ptr<Object> + Dispose Configuration: Attributes + ConfigStore Tracing: integrated in Attributes Configuration, Tracing: optional Lacage 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: optional Now on par with Omnetpp & Opnet feature-wise Lacage ns-3: History and Future March 2012 18 / 27
  • 95. A Windy Path It Started with nothing Lacage ns-3: History and Future March 2012 19 / 27
  • 96. A Windy Path But tom liked the ns-2 default values Default Value Mar 2007 Lacage ns-3: History and Future March 2012 19 / 27
  • 97. A Windy Path But tom liked the ns-2 default values Default Value Mar 2007 What about memory management, aggregation ? Lacage ns-3: History and Future March 2012 19 / 27
  • 98. A Windy Path Here comes microsoft’s IUnknown! Default Value Apr 2007 Mar 2007 IUnknown Lacage ns-3: History and Future March 2012 19 / 27
  • 99. A Windy Path Here comes microsoft’s IUnknown! Default Value Apr 2007 Mar 2007 IUnknown Scratch that, everyone hates it Lacage ns-3: History and Future March 2012 19 / 27
  • 100. A Windy Path Resolving trace sources: microsoft’s IMoniker Default IMoniker Value Apr 2007 Mar 2007 IUnknown Lacage ns-3: History and Future March 2012 19 / 27
  • 101. A Windy Path Resolving trace sources: microsoft’s IMoniker Default IMoniker Value Apr 2007 Mar 2007 IUnknown Hrm... So, what about memory management ? Lacage ns-3: History and Future March 2012 19 / 27
  • 102. A Windy Path Reference Counting wins Default IMoniker Value Apr 2007 Mar May 2007 2007 Reference IUnknown Counting Lacage ns-3: History and Future March 2012 19 / 27
  • 103. A Windy Path Reference Counting wins Default IMoniker Value Apr 2007 Mar May 2007 2007 Reference IUnknown Counting And Cycles ? Lacage ns-3: History and Future March 2012 19 / 27
  • 104. A Windy Path Dispose to Break the Cycles Default IMoniker Dispose Value Apr 2007 Mar May 2007 2007 Reference IUnknown Counting Lacage ns-3: History and Future March 2012 19 / 27
  • 105. A Windy Path Dispose to Break the Cycles Default IMoniker Dispose Value Apr 2007 Mar May 2007 2007 Reference IUnknown Counting Where is my IUnknown::QueryInterface ? Lacage ns-3: History and Future March 2012 19 / 27
  • 106. A Windy Path Dynamic Aggregation Default IMoniker Dispose Value Apr 2007 Mar May 2007 2007 Reference IUnknown Aggregation Counting Lacage ns-3: History and Future March 2012 19 / 27
  • 107. A Windy Path Dynamic Aggregation Default IMoniker Dispose Value Apr 2007 Mar May 2007 2007 Reference IUnknown Aggregation Counting Ref/Unref by hand still sucks! Lacage ns-3: History and Future March 2012 19 / 27
  • 108. A Windy Path Smart Pointers are back Default IMoniker Dispose Ptr<> Value Apr 2007 Mar May 2007 2007 Reference IUnknown Aggregation Counting Lacage ns-3: History and Future March 2012 19 / 27
  • 109. A Windy Path Smart Pointers are back Default IMoniker Dispose Ptr<> Value Apr 2007 Mar May 2007 2007 Reference IUnknown Aggregation Counting IMoniker is still ugly... Lacage ns-3: History and Future March 2012 19 / 27
  • 110. A Windy Path Introduce Attributes Default IMoniker Dispose Ptr<> Attributes Value Apr 2007 Mar May Jan-Mar 2007 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 before The 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 before The 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 over Lacage ns-3: History and Future March 2012 21 / 27
  • 116. No, it is not over Real Code Integration: Linux kernel, Quagga, CCNx, etc. Lacage ns-3: History and Future March 2012 21 / 27
  • 117. No, it is not over Real Code Integration: Linux kernel, Quagga, CCNx, etc. Contiki Lacage ns-3: History and Future March 2012 21 / 27
  • 118. No, it is not over Real Code Integration: Linux kernel, Quagga, CCNx, etc. Contiki TinyOS Lacage ns-3: History and Future March 2012 21 / 27
  • 119. No, it is not over Real Code Integration: Linux kernel, Quagga, CCNx, etc. Contiki TinyOS Brings new challenges: Attributes ? Lacage ns-3: History and Future March 2012 21 / 27
  • 120. No, it is not over Real Code Integration: Linux kernel, Quagga, CCNx, etc. Contiki TinyOS Brings new challenges: Attributes ? Tracing ? Lacage ns-3: History and Future March 2012 21 / 27
  • 121. Configuring Attributes Lacage ns-3: History and Future March 2012 22 / 27
  • 122. Configuring Attributes Linux Kernel: Lacage ns-3: History and Future March 2012 22 / 27
  • 123. Configuring Attributes Linux Kernel: Bridge /proc/net inside the attribute system Lacage ns-3: History and Future March 2012 22 / 27
  • 124. Configuring Attributes Linux 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 Attributes Linux 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 Attributes Linux 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 Attributes Linux 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. Tracing Lacage ns-3: History and Future March 2012 23 / 27
  • 129. Tracing We do not want to modify the external code: Lacage ns-3: History and Future March 2012 23 / 27
  • 130. Tracing We 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. Tracing We 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. Tracing We do not want to modify the external code: Linux Kernel: Tracepoints, Ftrace, KProbe, etc. But no builtin tracing in general Re-implement Kprobe, JProbe, etc. in userspace: Lacage ns-3: History and Future March 2012 23 / 27
  • 133. Tracing We do not want to modify the external code: Linux Kernel: Tracepoints, Ftrace, KProbe, etc. But no builtin tracing in general Re-implement Kprobe, JProbe, etc. in userspace: Introspection using debug information Lacage ns-3: History and Future March 2012 23 / 27
  • 134. Tracing We do not want to modify the external code: Linux Kernel: Tracepoints, Ftrace, KProbe, etc. But no builtin tracing in general Re-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. Outline Introduction Packet Object Framework Conclusion Lacage ns-3: History and Future March 2012 24 / 27
  • 136. Summary Lacage ns-3: History and Future March 2012 25 / 27
  • 137. Summary What really matters (today): Lacage ns-3: History and Future March 2012 25 / 27
  • 138. Summary What really matters (today): Alignment with the Real World Lacage ns-3: History and Future March 2012 25 / 27
  • 139. Summary What really matters (today): Alignment with the Real World An Open Source Community Lacage ns-3: History and Future March 2012 25 / 27
  • 140. Summary What 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. Summary What 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.net Lacage ns-3: History and Future March 2012 27 / 27