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

RLM error



Hi,
I think there is an error in the RLM code. If a receiver drop layer
1 it can never go back to the session (I mean add a layer because you
can add a layer only if your highest layer receives packets). 
I modify trigger_TJ in tcl/rlm/rlm.tcl to correct this behavior:

MMG instproc trigger_TJ {} {
	$self debug "arl : trigger-TJ"
	$self instvar state_ ctrl_ subscription_
#my fix
        if {$subscription_==0} {
	    set temp 1
	} else {
	    set temp [$self current_layer_getting_packets]
	}
#end of my fix
	if { ($state_ == "/S" && ![$self pending_inferior_jexps] && \
		  $temp)  } {
		$self add-layer
		$self check-equilibrium
		set msg "add $subscription_"
		$ctrl_ send $msg
		#XXX loop back message
		$self local-join
	}
	$self set_TJ_timer
}

Do you think it's the rigth way to correct this problem.

Thanks,

Arnaud
-- 
----------------------------------------------------------------------
Arnaud Legout

Institut Eurecom               	Phone : 00.33.4.93.00.26.61
2229, route des Cretes         	Fax   : 00.33.4.93.00.26.27
BP 193                         	E-mail: [email protected]
06904 Sophia Antipolis cedex    Web   : http://www.eurecom.fr/~legout    
FRANCE                    
----------------------------------------------------------------------