Binu, I am not sure what you mean by the second paragraph. When you do a DNS query, you get a list of IP addresses corresponding to that domain. As you have mentioned, there may be a weighting factor. Are you saying that the stateless proxy should have an algorithm based on nonvariables within the dialog, such as CallID, to choose which IP from the list the message should be sent to? i.e. if algorithm(CallID) = 5, choose the 5th one on the list? This is probably a good method, however, it will not work when the DNS records are changed. (I dont know how often that will happen, but it probably will). Thanks Vikram
-----Original Message----- From: [EMAIL PROTECTED] To: Ansar Kassim Pillai Cc: [EMAIL PROTECTED] Sent: 12/3/2001 8:42 PM Subject: Re: [Sip-implementors] retransmissions in a stateless proxy Ansar, A domain that has a stateful proxy server farm is not likely to implement a round robin DNS mechanism where a lookup returns a different IP for each query. The right way to implement DNS based load balancing is to use the load balancing mechanism in DNS SRV records. In such setups, when the stateless proxy performs a query for the next hop server, it might get multiple IP addresses for the server with equal priority. The records will contain a weight field that indicates the preference to be given to the record when a random selection is made. In this case, the proxy must make a random selection from the alternatives such that the probability of an address getting selected depends on its weight. Here, the stateless proxy should not use a truly random number to decide on the selection. Instead, it should choose a number generated from message elements like the call-ID and sequence number, which are invariant in retransmissions or transactions. This will ensure that for messages in the same transaction the same proxy is selected from the SRV results. For more information on SRV records and the mechanism used for selecting SRV entries, refer RFC 2782. -Binu "Ansar Kassim Pillai" <[EMAIL PROTECTED]> on 12/03/2001 03:55:58 PM To: [EMAIL PROTECTED] cc: (bcc: K Binu/HSSBLR) Subject: [Sip-implementors] retransmissions in a stateless proxy Hi, Page number:65 of the RFC2543bis-05 says that... 2464 A stateless proxy MUST choose one and only one destination from the destination set. This choice 2465 MUST only rely on fields in the message and time-invariant properties of the server. In particular, a 2466 retransmitted request MUST be forwarded to the same destination each time it is processed. Further- 2467 more, CANCEL and non-Routed ACK requests MUST generate the same choice as their associated 2467 INVITE. Relying on the message along with the time-invariant properties of the server, we can make sure that all the retransmissions are forwarded to the same URI. But how do we make sure that the re-transmissions are always forwarded to the same physical location (IP Address), especially when a DNS query returns different IP each time with his round robbin algorithm? We need to assure that all retransmissions follow the same physical path as there could be some one in the path maintaining the state of the call. Can anyone please explain how do we implement this in a stateless proxy where we cannot remember the IP address for retransmissions. Regards, Ansar _______________________________________________ Sip-implementors mailing list [EMAIL PROTECTED] http://lists.cs.columbia.edu/mailman/listinfo/sip-implementors _______________________________________________ Sip-implementors mailing list [EMAIL PROTECTED] http://lists.cs.columbia.edu/mailman/listinfo/sip-implementors
