List of Result Codes

List of Result-Codes. 

Kindly take printout of it, it shall help you during development or testing exercise.


Result-Code
Result-Code Value
Description
Informational
DIAMETER_MULTI_ROUND_AUTH
1001
Subsequent messages triggered by client shall also used in Authentication and to get access of required resources. Generally used in Diameter NAS
Success
DIAMETER_SUCCESS
2001
Request processed   Successfully
DIAMETER_LIMITED_SUCCESS
2002
Request is processed but some more processing is required by Server to provide access to user
Protocol Errors
[E-bit set]
DIAMETER_COMMAND_UNSUPPORTED
3001
Server returns it if Diameter Command-Code is un-recognized by server
3002
Message can’t be delivered because there is no Host with Diameter URI present in Destination-Host AVP in associated Realm.
DIAMETER_REALM_NOT_SERVED
3003
Intended Realm is not recognized.
DIAMETER_TOO_BUSY
3004
Shall return by server only when server unable to provide requested service, where all the pre-requisites are also met. Client should also send the request to alternate peer.
3005
3006
In Response from Redirect Agent.
DIAMETER_APPLICATION_UNSUPPORTED
3007

DIAMETER_INVALID_HDR_BITS
3008
It is sent when a request is received with invalid bits combination for considered command-code in DIAMETER Header structure. E.g. Marking Proxy-Bit in CER message.
DIAMETER_INVALID_AVP_BITS
3009
It is sent when a request is received with invalid flag bits in an AVP.
DIAMETER_UNKNOWN_PEER
3010
A DIAMETER server can be configured whether it shall accept DIAMETER connection from all nodes or only   from specific nodes. If it is configured to accept connection from specific nodes and receives CER from message from any node other than specified.
Here Server shall send considered error
Transient Failures
[Could not satisfy request at this moment]
DIAMETER_AUTHENTICATION_REJECTED
4001
Returned by Server, most likely because of invalid password.
DIAMETER_OUT_OF_SPACE
4002
Returned by node, when it receives accounting information but unable to store it because of lack of memory
4003
Peer determines that it has lost election by comparing Origin-Host value received in CER with its own DIAMETER IDENTITY and found that received DIAMETER IDENTITY is higher.
Permanent Failures
[To inform peer, request is failed, shouldn’t be attempted again]
DIAMETER_AVP_UNSUPPORTED
5001
AVP marked with Mandatory Bit, but peer does not support it.
DIAMETER_UNKNOWN_SESSION_ID
5002
DIAMETER_AUTHORIZATION_REJECTED
5003
User can not be authorized. E.g. Comes in AIA on s6a interface.
DIAMETER_INVALID_AVP_VALUE
5004
DIAMETER_MISSING_AVP
5005
Mandatory AVP in request message is missing
DIAMETER_RESOURCES_EXCEEDED
5006
A request was received that cannot be authorized because the user      has already expended allowed resources.  An example of this error condition is a user that is restricted to one dial-up PPP port,      attempts to establish a second PPP connection.
DIAMETER_CONTRADICTING_AVPS
5007
Server has identified that AVPs are present that are contradictory to each other.
DIAMETER_AVP_NOT_ALLOWED
5008
Message is received by node (Server) that contain AVP must not be present.
DIAMETER_AVP_OCCURS_TOO_MANY_TIMES
5009
If message contains the a AVP number of times that exceeds permitted occurrence of AVP in message definition
5010
In response of CER if no common application supported between the peers.
DIAMETER_UNSUPPORTED_VERSION
5011
Self explanatory.
DIAMETER_UNABLE_TO_COMPLY
5012
Message rejected because of unspecified reasons.
DIAMETER_INVALID_BIT_IN_HEADER
5013
When an unrecognized bit in the Diameter header is set to one.
DIAMETER_INVALID_AVP_LENGTH
5014
Self explanatory. 
DIAMETER_INVALID_MESSAGE_LENGTH
5015
Self explanatory.
DIAMETER_INVALID_AVP_BIT_COMBO
5016
E.g. Marking AVP to Mandatory while message definition doesn’t say so.
5017
In response of CER if no common security mechanism supported between the peers.



Your Comments /Suggestions and Questions are always welcome, shall clarify with best of knowledge. So feel free to put Questions

44 comments:

  1. in 3GPP TS 29.229 Release 8 22 V8.10.0 (2010-06)
    you can find different result value definitions:
    "
    6.2.1.1 DIAMETER_FIRST_REGISTRATION (2001)
    The HSS informs the I-CSCF that:
    - The user is authorized to register this public identity;
    - A S-CSCF shall be assigned to the user.
    6.2.1.2 DIAMETER_SUBSEQUENT_REGISTRATION (2002)
    The HSS informs the I-CSCF that:
    - The user is authorized to register this public identity;
    - A S-CSCF is already assigned and there is no need to select a new one.
    "
    These definitions are related to a vendor identifier value of 3GPP (10415).
    You do not mention the vendor identifier value belonging to the definitions you have provided. I think it is different.
    Very suprising for me newcomer.

    ReplyDelete
    Replies
    1. Yes

      You are right...
      Here Codes are given pertaining to Base-diameter Protocol.

      DIAMETER_FIRST_REGISTRATION (2001)
      DIAMETER_SUBSEQUENT_REGISTRATION (2002)

      are experimental-result codes, not the Result-codes. Vendor Id is part of Experimental-Result code AVP (Grouped AVP.

      Delete
    2. I guess from the RFC3588, 3007 to 3010 is mixed up in your sheet.

      3007 is not DIAMETER_INVALID_HDR_BITS.
      3007 is DIAMETER_APPLICATION_UNSUPPORTED
      Rather 3008 is DIAMETER_INVALID_HDR_BITS
      3009 is DIAMETER_INVALID_AVP_BITS
      and 3010 is DIAMETER_UNKNOWN_PEER

      Delete
    3. Hi Pinaki Ghosh

      Thanks for your suggestions to improve the quality of information on this forum.

      Happy to help you again
      Team-Diameter

      Delete
  2. Hi,
    I have lot many queries with Diameter and DCCA.
    Please clarify them

    for a start I would like to know about the Diamater_session_timeout error.
    When does this occur and under wat conditions.

    Thanks & Regards
    Vinay

    ReplyDelete
    Replies
    1. Hi Vinay,

      how r u yaar....Diameter & DCCA its easy man call

      Delete
    2. qaqa sen duz elemirssen bizde bele olanda elnen kominitye mudahile edirik

      Delete
  3. Nice summary of diameter result codes... :)
    thanks!! keep going!!

    ReplyDelete
  4. I want to ask about Rule-Failure-Code in Charging-Rule-Report. Suppose, PCEF sends CCR-U to PCRF with Rule-Failure-Code AVP as "RESOURCE_ALLOCATION_FAILURE" & PCC-Rule-Status set to 'Inactive" within Charging-Rule-Report AVP. Now, PGW sees that it has recovered from congestion. Will it again send a CCR-U with Rule-Status "Active"? If not, how will PCRF know that there might not be any congestion now?

    ReplyDelete
  5. hey folks, all this codes are described in RFC and 3Gpp. with reasons and additional information.

    ReplyDelete
  6. Pls help analyze Result-Code: DIAMETER_SUCCESS_AUTH_SENT_SERVER_NOT_STORED (2008)

    ReplyDelete
    Replies
    1. Hi Nguyễn Trọng Nhàn,

      Thanks for your query. Kindly share that shall help us to understand your query and help you better,
      (1) In which message you people are expecting this response.
      (2) Which RFC/3GPP document you people are following.

      Happy to help you again.
      Team-Diameter

      Delete
  7. Hi Team ,
    what Client should do if Answer Message comes with protocol error like 3002 but without E bit set ?

    ReplyDelete
    Replies
    1. Hi Vivek,

      RFC-6733 says
      "Note that these errors MUST only be used in answer messages whose 'E' bit is set."

      Because by this E-Bit indication Intermediate Relay/Proxy if exist or Client shall route the message from other way. Or take some fail-over actions.

      If E-Bit is not set then it can be implied that Answer message should be treated as permanent failure. No retransmission from other route is expected

      Hope it shall suffice you.

      Thanks for your query.
      Happy to help you again.
      Team-Diameter

      Delete
  8. This comment has been removed by the author.

    ReplyDelete
  9. Hello,
    Thank you very much for the summary, I have question though ,
    can you give examples of when these diameter errors are triggered Error_User_Unknown(5001) and Unknown_Session_ID (5002) in the LTE world ?

    ReplyDelete
  10. If we are doing usage monitoring on Gx, then can we send Result-Code = 4012 (DIAMETER_CREDIT_LIMIT_REACHED) in CCA-I or CCA-U to deny service if user has exhausted his volume.

    Is it as per standard ?

    ReplyDelete
  11. Hi Team and Friends
    Does any one know how to resolve diameter error code 5010 i.e. DIAMETER_NO_COMMON_APPLICATION or There are no common applications between Stack and incoming client

    ReplyDelete
    Replies
    1. Hi Vamshi Krishna,

      Kindly check Application ID at Application ID and Client. Following Link shall help you.
      http://diameter-protocol.blogspot.in/2011/03/capability-negotiation.html

      Thanks for your query.
      Happy to help you again.
      Team-Diameter

      Delete
  12. Error_User_Unknown(5001) and Unknown_Session_ID (5002).. Can anyone elaborate on the scenarios when these errors are triggered? Thanks

    ReplyDelete
    Replies
    1. if you are using the Sh interface this 5001 response is from the HSS indicating the user is not known. It means you have the subscriber built in the TAS but no the HSS. this happens when people delete users from the HSS directly instead of removing them from the TAS first.

      Delete
  13. getting 4999 which is not available here, fixed by changing nodes configuration

    ReplyDelete
    Replies
    1. Hi Jamil,

      Will please elaborate on it.
      On which interface you are getting 4999.
      In which message?
      What all nodes involved in message communication.


      Thanks for your query.
      Happy to help you.
      Team-Diameter

      Delete
  14. getting error -- result-code:diameter-unable-to-deliver (3002)

    ReplyDelete
    Replies
    1. Hi Rahul

      Will you please elaborate on your setup.
      Generally it is received when HOST/Realm is given in request either not identify or not exist.

      Following link might help you.
      http://diameter-protocol.blogspot.in/2011/05/diameter-errors.html

      Thanks for your query.
      Happy to help you again.
      Team-Diameter

      Delete
  15. http://wikiihowz.blogspot.in/2016/07/diameter-protocol-telecom-complete.html

    ReplyDelete
  16. Diameter Error-Code: 3007
    Diameter Error Message: "DIAMETER_APPLICATION_UNSUPPORTED"

    This error is observed in S6a/S6d-ULA messages where authentication vectors are required to complete the authentication process but your node i.e HSS-FE is not connected to HSM box or SoftAuC. (These are the entities which provide the Authentication vectors for the subscribers to latch)

    ReplyDelete
    Replies
    1. Hi

      Please share your question.


      Happy to help you.
      Team-Diameter

      Delete
  17. I have a query
    I am writing a code for NASREQ application server.
    So when client sends AAR containing username and password and it does not match with the database of the server with which error code should the server respond??

    ReplyDelete
    Replies
    1. Hi AMAN,

      Hopefully NASREQ RFC would have solution of it. as result code shall be specific to an application.

      if need to use diameter base protocol result-code then (DIAMETER_AUTHORIZATION_REJECTED 5003 User can not be authorized) can be best suited.


      Thanks for your query.
      Happy to help you again.
      Team-Diameter

      Delete
  18. This comment has been removed by the author.

    ReplyDelete
  19. Hi Folks,
    I have a query if you can provide me the reply soon , would be grateful.

    Suppose I had changed the The Auth algo for an UE from Milenage to Comp_128 and then tried to do EPS attachment, then what will the Diameter Error code should i get from Server (HSS) side ? Can it be 5003 ? or any other code?

    ReplyDelete
    Replies
    1. Hi Rakesh,

      Changes made at UE are transparent to HSS. During Authentication HSS sends Auth-Vectors with DIA_SUCCESS to MME. Its MME who will send authentication failure error to UE after processing the Auth Vectors.

      For more details read : http://diameter-protocol.blogspot.in/2013/06/eps-4g-e-utran-authentication-procedure.html

      Delete
    2. Hello Ajay,
      Thank you so much for your reply and for clarification.I thought HSS should send Diameter Error code.Now it's clear to me.Thanks again.

      Delete
  20. where is command code 272 ? and describe about it

    ReplyDelete
  21. I need UDA sample format from HSS. Please provide a sample UDR/UDA from HSS. [may be in PCAP format]

    ReplyDelete
  22. Hi,

    what is the standard for mapping diameter result code to MAP result code

    ReplyDelete
  23. In diameter Gy interface is it optional to have sub AVP inside trigger AVP? Trigger AVP is part of MSCC AVP. If child AVP of trigger AVP (1264) are optional how we can make it as generic in our code to skip length check after decoding it's header for trigger type AVP only.

    ReplyDelete
  24. GSET Result 2018 is going to announce as expected very soon on official website, Check Gujarat SET Result Answer Key Merit List & Cut Off Marks Subject Wise.

    ReplyDelete
  25. Hi Folks,

    I have a query if you can provide the reply soon. I would be grateful.
    We're trying to integrate one of system over diameter with charging system. and getting error "diameter unable to comply". Description is message rejected because unspecified reason. Can anyone help how to trace it out?

    Regards,
    Bilal

    ReplyDelete
  26. Thank you very much for explaining some of these YateDRA DIAMETER routing agent codes.

    ReplyDelete
  27. Can diameter response code 5005 impact data service ?

    ReplyDelete
    Replies
    1. Hi,

      It totally depend in which message MISSING AVP is found; and it also depend on operator what policy they have applied in their network


      Thanks for your query.
      Happy to help you again.
      Team-Diameter

      Delete
  28. diameter.Result-Code == 5012

    diameter.Error-Message == "The request was ambiguous and matched multiple devices, which are hosted on different sites. ipv6=2001:4871:e00b:7f8d:0:0:0:0/64, matched device Ids=[5550624065||2200003a7470801, 16096357575||240000010141001]"

    ReplyDelete