[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ns] A few issues (fulltcp, parameters...) related to webtraf.**



Xiaowei Yang wrote:
>
> I recently downloaded ns-2.1b8 (released June 06, '01) and modified
> the webtraf.** to support FullTcp. When the code tried to recycle a
> FullTcp agent for multiple connections, I ran into the error that the
> agent was not listening. Then I traced the FullTcpAgent code, it seems
> that in FullTcpAgent, the "closed_" member variable is
> redeclared. But, in the member function FullTcpAgent::reset(), this
> variable is not reset (it calls the parent's reset function, which
> resets its own "closed_" variable and does not reset the child's
> "closed_" variable.). Therefore, if we want to reuse the same Fulltcp
> agent for multiple connections, as the example shown in
> tcl/ex/web-traffic.tcl, the closed_ remains 1 after
> FullTcpAgent::reset() is called . In finish(), we will never reach the
> point where the "done" procedure declared in tcl is called. It seems
> to me there is no reason to redeclare the variable "closed_" again in
> FullTcpAgent.
> 

Hi,

This problem was already discussed and fixed by Felix Hernandez about a
year ago; see his post:

http://www.isi.edu/nsnam/archive/ns-users/webarch/2000/msg03812.html

Alas, the fixes suggested by Felix have -- AFAIK -- never been taken
into account in newer versions of tcp-full...


Besides, if you want to recycle FullTcp agents you'll also need to
insert a call to reset() in FullTcpAgent::listen(). Otherwise, the
"listening" agent may reply with "RST" segments (well, in fact, with the
closest thing to a RST segment that tcp-full can generate) to every
incoming segment.


Greetings,

David.

=================================================================
David ROS                               mailto:[email protected]
IRISA/INRIA, Campus de Beaulieu,        Phone:  +33 2 99 84 72 98
35042 Rennes Cedex, France              Fax:    +33 2 99 84 25 29

"Any sufficiently advanced  
technology is indistinguishable from magic." --- Arthur C. Clarke