[OpenSER-Devel] serial forking and nat

Bogdan-Andrei Iancu bogdan at voice-system.ro
Tue Sep 11 18:06:06 CEST 2007


Hi Juha,

indeed, there is the problem with storing the serial forking information.

I will review your idea and comment it in the next days.

Thanks and regards,
Bogdan

Juha Heinanen wrote:
> Juha Heinanen writes:
>
>  > each time when t_relay is called (perhaps with a new "serial fork"
>  > parameter), it would serve the 
>  > next set of branches that have the highest q value and then mark those
>  > as served in dset.c branches array.
>
> if that is too much to ask, then how about adding an int "status" field
> to branch struct and include it also as a new get_branch parameter.  in
> addition, there would be a new dset.h function that can be used to set
> status value of a branch.
>
> initial value of status field for each branch would be zero.  when
> t_relay is called, it always serves those branches whose status field
> value is zero thus retaining backwards compatibility.
>
> next_contacts/next_branches would then be able to do their job by
> manipulating status field values.  for example, when
> load_contacts/serialize_branches is called, it would set "status" of
> each branch to 1 (unused).  each time next_contacts/next_branches is
> called, it would set each zero valued branch to -1 (used) and then
> select the highest unused q value branches and set their status field
> value to zero.  if there is no unused branches left,
> next_contacts/next_branches would return -1.
>
> i don't know the internals of tm module, but i would think that adding a
> status==0 test before a branch is served, would not be a big deal.
>
> comments?
>
> -- juha
>
> _______________________________________________
> Devel mailing list
> Devel at openser.org
> http://openser.org/cgi-bin/mailman/listinfo/devel
>
>   




More information about the Devel mailing list