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

Re: vlan.tcl delay - bug?




> X-Authentication-Warning: mash.CS.Berkeley.EDU: majrdomo set sender to 
[email protected] using -f
> Date: Thu, 6 Jan 2000 10:39:15 -0500 (EST)
> From: Tarik Alj <[email protected]>
> Subject: Re: vlan.tcl delay - bug?
> To: [email protected]
> Cc: [email protected]
> MIME-Version: 1.0
> Content-MD5: kw4zIt4OWoGiIcsNDhgfyg==
> 
> If you are using mac-802.3 you should be aware that collision detection is 
> tightly linked to the maximum delay packets are experiencing (and therefore to 
> the length of cable used and the bandwidth). 
> 
> LL is a child of linkdelay, not delaylink. linkdelay is really a class of 
> connector that induces a delay, not some sort of link.
> 
> vlan.tcl is "configured" for plain MAC, not mac-802.3. If you want to set the 
> Channel delay, you can do so in LanIface::init.

Actually it's in LanNode::addNode
 
> 
> Now the Notes (now NS-Manual) say:
> 
> Channel : delay_ is propagation delay on the Channel
> 
> LL : delay_ is link-level overhead.
> 
> So I would agree with your understanding.
> 
> > Date: Wed, 5 Jan 2000 14:51:00 -0500 (EST)
> > From: Wing-Chung Hung <[email protected]>
> > X-Sender: hungw@uranus
> > To: Tarik Alj <[email protected]>
> > cc: ns users mail list <[email protected]>
> > Subject: Re: vlan.tcl delay - bug?
> > MIME-Version: 1.0
> > 
> > 
> > Here are my understand:
> > 
> > 1.
> > 
> > LL is a child of DelayLink which is a child of link.
> > In a point to point connection (not lan), the delay_ of link, I think, is
> > the propagation delay (the time it take for a bit of information from
> > transmitter to receiver) and there is no channel in such topology.
> > 
> > 2.
> > 
> > when I create a lan using make-lan
> > 
> >   set lan [$ns make-lan $nodelist $bw $delay LL Queue/DropTail Mac]
> > 
> > I am thinking that the $delay is the delay is the propagation
> > (channel) delay between a transmitting and a receiving node.  I.e. it
> > should be the delay_ of a channel.
> > 
> > In channel.cc, delay_  actually means propagation dealy and is used for
> > collison calculation.
> > 
> > double 
> > Channel::get_pdelay(Node* /*tnode*/, Node* /*rnode*/)
> > {
> > 	// Dummy function
> > 	return delay_;
> > }
> > 
> > By assigning the $delay to the delay_ of LL, this delay means the amount
> > of time the packet stay in a node before being send to it's downtarget_
> > which is the queue.  This is reflected in ll.cc
> > 
> > from ll.cc
> > 
> > void LL::sendDown(Packet* p)
> > {	
> > 	...
> > 	if (tx == 0) {
> > 		Scheduler& s = Scheduler::instance();
> > 		s.schedule(downtarget_, p, delay_);
> > 	}
> > }
> > 
> > 
> > My conclusion is that the $delay argument in make-lan
> >   
> >   set lan [$ns make-lan $nodelist $bw $delay LL Queue/DropTail Mac]
> > 
> > means the inbound processing delay (the amount of time to stay in the node
> > before being queue for transmission), and is not related to propagation
> > dealy.
> > 
> > Please comment.
> > 
> > Thanks.
> > 
> > -- Wing-Chung
> > 
> 
> Tarik

Tarik