i asked sip list, why the via the hash is needed for loop avoidance. i got only one response that made any sense:
i can think of 3 common reasons you might want to place a hash in the Via as opposed to searching local transactions, which may or may not apply depending on the implementation: (1) speed - if you have a large number of active transactions, then it's almost certainly a lot faster to construct and compare a hash in X number of via headers than search all the transactions received on that particular transport. any multi threaded design would require at minimum a read lock on a list of transactions - doesn't sound to efficient to me! do you think that this is a valid concern for openser, i.e., does it take too long to find out if a pending transaction with a certain call-id/r-uri already exists? -- juha _______________________________________________ Devel mailing list [email protected] http://openser.org/cgi-bin/mailman/listinfo/devel
