I have a problem understanding how RFC3261 would allow loop detection for a request that was bouncing between two or more proxies.
Section 16.6.8 states: "Loop detection is performed by verifying that, when a request returns to a proxy, those fields having an impact on the processing of the request have not changed." That makes sense but then it goes on to state: "A common way to create this value is to compute a cryptographic hash of the To tag, From tag, Call-ID header field, the Request-URI of the request received (before translation), the topmost Via header, and the sequence number from the CSeq header field, in addition to any Proxy-Require and Proxy-Authorization header fields that may be present." If the topmost Via header is included in the hash which is being used to construct the proxy's own Via header won't it only ever detect a loop if the request is returned to it without another Via header being added? So if Proxy 1 forwards to Proxy 2 which forwards back to Proxy 1 without any of the fields that impact processing of the request changing how would Proxy 1 be able to detect the loop given that the hash it creates the second time the request arrives will be different due to the topmost Via header? Aaron _______________________________________________ Sip-implementors mailing list [email protected] https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
