[Ns-bugs] [Bug 271] PacketSocketFactory should be added in the Node base class, not in InternetStackHelper
bugzilla-daemon@nsnam-www.ece.gatech.edu
bugzilla-daemon at nsnam-www.ece.gatech.edu
Tue Aug 5 09:46:26 PDT 2008
http://www.nsnam.org/bugzilla/show_bug.cgi?id=271
mathieu.lacage at sophia.inria.fr changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
------- Comment #3 from mathieu.lacage at sophia.inria.fr 2008-08-05 12:46 -------
(In reply to comment #2)
> (In reply to comment #1)
> > PacketSocketFactory is added in PacketSocketHelper if you want to only packet
> > sockets on your node.
>
> OK, this is even worse than I thought!
>
> PacketSocketHelper should be added to the class Node. Every node supports L2
> networking, therefore every node should support L2 sockets. It was a nasty
The rationale for the current behavior is that we have tried to move as much
object aggregation as possible to the helper API because we have tried to make
helpers modelize object aggregation.
> surprise to me to find out PacketSocketFactory was not added by default to Node
> (especially since it used to be added back in ns-3.11).
We don't care about any kind of compatibility with pre-1.0 releases. It is sad
that you were surprised but, clearly, we are not going to change this _again_
to surprise more people who now rely on an official release.
> > The reason it is also added to a node from
> > InternetStackHelper is that we wanted to make InternetStackHelper add all the
> > things it could by default.
> >
> > If you want to add a flag to InternetStackHelper to disable this feature, I
> > would be fine with that. Removing it altogether would be much less desirable
> > because if a user relies on InternetStackHelper to add it, he will figure out
> > that it is not there anymore only at runtime with a less-than-helpful message.
> >
> > Updating the InternetStackHelper::Install method documentation to describe that
> > the PacketSocket is also aggregated would also be nice.
> >
>
> I hate helpers, and I always this was going to happen. Ever since the
> "helpers" layer was added to ns-3, the "internal" layers started to become
> increasingly more complex because their complexity is hidden by the helpers.
> So, no one really cares about internal complexity anymore :-(
I fail to see the kind of internal complexity you are talking about. If you
don't want to use the helpers, you have to perform object aggregation yourself.
> Please lets try to keep the internal classes simple to use, and not rely on
> helpers so much.
Object aggregation has been moved to helpers and it won't move back to internal
classes.
Marking this bug as invalid and opening a new one to keep track of the fact
that the API documentation is not clear on this subject.
--
Configure bugmail: http://www.nsnam.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
More information about the Ns-bugs
mailing list