Troubleshoot rejected packets by the SIP proxy server
Learn how to use tracing to troubleshoot packets that are rejected by the SIP proxy server.
When using a SIP proxy server in your SIP call flow, it is possible under certain circumstances that the SIP proxy server might reject messages to maintain proper function. While the SIP protocol accommodates these circumstances, it is helpful to know which messages were rejected by the SIP proxy server and why. The SIP proxy server will reject message packets for the following reasons:
- Overloaded - The SIP container is overloaded or the SIP proxy server is rejecting packets because it is approaching an overload condition.
- InvalidPartitionID - The partition ID is not valid.
- AppServerNotAvailable - An application server is not available to process packets.
- NotCompliant - The SIP message is not compliant with the SIP protocol.
- ConnectionLost: (Inbound/Outbound) - A network connection was lost or the network route is not valid.
When these SIP packets are rejected, the SIP PMI counters are increased. For more information on the SIP proxy counters for rejected packets, see the information on SIP PMI counters.
To troubleshoot rejected messages, we can use trace logging to record the SipCallId of specific messages that have been rejected.
Tasks
- Use the administrative console to enable tracing for the SIP proxy server.
- Use the following trace specifications to log rejected packets in a granular manner.
- Log all rejected packets in the trace log:
com.ibm.ws.proxy.log.sip.rejectedlog.*=all- Log only Overloaded rejected packets in the trace log:
com.ibm.ws.proxy.log.sip.rejectedlog.Overloaded=all- Log only InvalidParitionID rejected packets in the trace log:
com.ibm.ws.proxy.log.sip.rejectedlog.InvalidPartitionID=all- Log only AppServerNotAvailable rejected packets in the trace log:
com.ibm.ws.proxy.log.sip.rejectedlog.AppServerNotAvailable=all- Log only NotCompliant rejected packets in the trace log:
com.ibm.ws.proxy.log.sip.rejectedlog.NotCompliant=all- Log only ConnectionLost rejected packets in the trace log:
com.ibm.ws.proxy.log.sip.rejectedlog.ConnectionLost=all
We are ready to view the trace log for rejected packet information.
When viewing the trace.log or using the HPEL logViewer command, we should see messages in the format of:
[DATE] <ThreadID> <ReasonClass> 3 <Direction> Packet Rejected: SipCallId=<CallID>Reason: <Reason>essages contain the following parameters:
- Date - Date.
- ThreadID - ID of the thread running this task.
- ReasonClass - One of the reasons the packet was rejected, such as Overloaded or NotCompliant.
- Direction - Message direction of inbound or outbound. Only the ConnectionLost reason class can be outbound.
- CallID - The SIP CallID of the message that was rejected.
- Reason - More detailed, long form reason class.
Example
The following example illustrates how to troubleshoot a rejected message. If the Overloaded trace specification is configured and the SIP container reaches an overloaded state, a message similar to the following is logged in the trace file:
[11/28/12 9:14:57:747 MST] 00000081 Overloaded 3 Inbound Packet Rejected: SipCallId=2-4314@10.0.1.201 Reason: Overloaded SIP Container
Tracing a SIP proxy server SIP PMI counters