[prev in list] [next in list] [prev in thread] [next in thread]
List: sip-implementors
Subject: Re: [Sip-implementors] ICMP error haandling
From: Tarun2 Gupta <tarun2.gupta () aricent ! com>
Date: 2011-09-16 4:28:20
Message-ID: 80A9B9A571A97C4993A1772F1773524214DA23B05E () GUREXMB01 ! ASIAN ! AD ! ARICENT ! COM
[Download RAW message or body]
Hi Sunil
ICMP is used to show when a particular end point is not responding, when an IP \
network is not reachable, when a node is overloaded, when an error occurs in the IP \
header information, etc.
Refer RFC 3261
8.1.3.1 Transaction Layer Errors
In some cases, the response returned by the transaction layer will not be a SIP \
message, but rather a transaction layer error. When a timeout error is received from \
the transaction layer, it MUST be treated as if a 408 Request timeout) status code \
has been received. If a fatal transport error is reported by the transport layer \
(generally, due to fatal ICMP errors in UDP or connection failures in TCP), the \
condition MUST be treated as a 503 (Service Unavailable) status code.
The above section clearly states the client behavior. Following sections of 3261 and \
3263 state the server behavior.
18.4 Error Handling
Error handling is independent of whether the message was a request or response. If \
the transport user asks for a message to be sent over an unreliable transport, and \
the result is an ICMP error, the behavior depends on the type of ICMP error. Host, \
network, port or protocol unreachable errors, or parameter problem errors SHOULD \
cause the transport layer to inform the transport user of a failure in sending. \
Source quench and TTL exceeded ICMP errors SHOULD be ignored.
Refer RFC 3263
5 Server Usage
A server, according to RFC 3261, will send a response on the connection it arrived on \
(in the case of reliable transport protocols), and for unreliable transport \
protocols, to the source address of the request, and the port in the Via header \
field. The procedures here are invoked when a server attempts to send to that \
location and that response fails (the specific conditions are detailed in RFC 3261). \
"Fails" is defined as any closure of the transport connection the request came in on \
before the response can be sent, or communication of a fatal error from the transport \
layer.
So IMO, the server can retry sending the response till either it succeeds (after \
trying as described above) or till timer H fires. However the call might not get \
connected still. In all probability, the client is down and might not be able to \
honour the response anyways, unless it has some high availability implemented.
Regards,
Tarun Gupta
Aricent
-----Original Message-----
From: sip-implementors-bounces@lists.cs.columbia.edu \
[mailto:sip-implementors-bounces@lists.cs.columbia.edu] On Behalf Of \
Sunil
Sent: Thursday, September 15, 2011 11:57 AM
To: sip-implementors@lists.cs.columbia.edu
Subject: [Sip-implementors] ICMP error haandling
Hi All,
RFC 3261 mentions that if an ICMP error is received for a Request it
should be treated as 503 error response.
But what if ICMP error is received for a response.Should we ignore the
ICMP error and retransmit the response or should the session be
terminated?.
Please let me know what action to take if we receive ICMP error for a
response.
Regards,
Sunil
_______________________________________________
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
===============================================================================
Please refer to http://www.aricent.com/legal/email_disclaimer.html
for important disclosures regarding this electronic communication.
===============================================================================
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic