SIP 300 Multiple Choices vs 504 Server Time-out
SIP 300 (Multiple Choices) is a 3xx Redirection response, while 504 (Server Time-out) is a 5xx Server Failure response. 300 indicates that the address in the request resolved to several choices, each with its own location. The user or UA can select a preferred communication endpoint. In contrast, 504 means that the server did not receive a timely response from an external server it accessed while attempting to process the request. Different from 408 (client timeout).
Description
The address in the request resolved to several choices, each with its own location. The user or UA can select a preferred communication endpoint.
When You See It
When a user has multiple registered devices or contact addresses and the server cannot determine which one to use.
How to Fix
Select one of the provided Contact addresses and resend the request to that specific URI.
Description
The server did not receive a timely response from an external server it accessed while attempting to process the request. Different from 408 (client timeout).
When You See It
When a proxy's request to a downstream server times out. The proxy itself is working, but the next hop is unresponsive.
How to Fix
Check the downstream server's availability. Verify DNS resolution for the next-hop domain. Consider adjusting transaction timeout values.
Key Differences
300 is a 3xx Redirection response, while 504 is a 5xx Server Failure response.
SIP 300: The address in the request resolved to several choices, each with its own location. The user or UA can select a preferred communication endpoint.
SIP 504: The server did not receive a timely response from an external server it accessed while attempting to process the request. Different from 408 (client timeout).
You encounter 300 when when a user has multiple registered devices or contact addresses and the server cannot determine which one to use.
You encounter 504 when when a proxy's request to a downstream server times out. The proxy itself is working, but the next hop is unresponsive.
When to Use Which
For 300 (Multiple Choices): Select one of the provided Contact addresses and resend the request to that specific URI. For 504 (Server Time-out): Check the downstream server's availability. Verify DNS resolution for the next-hop domain. Consider adjusting transaction timeout values.