What is the Diameter protocol?

2hamed picture 2hamed · Jul 16, 2012 · Viewed 7.8k times · Source

I have 3 simple questions.

  1. What is the Diameter protocol in simple explanation?
  2. Why is it used?
  3. How can one use it?

I have searched the net for a practical explanation but couldn't find one. All there is, is some technical blabber.

Answer

user500123 picture user500123 · May 28, 2013

Per the ITU, DIAMETER is the successor to RADIUS (twice as good). No, it's not a joke. RADIUS was, and is still used, in many telecommunications networks as the interface to the authorization, authentication and accounting protocol server (typically just called the AAA). The problem with RADIUS is that:

It's built on UDP -- RADIUS packets can just drop off. It was never designed to handle much more than short, attribute/value pairs. While it is extendible, it's limited to vendor-specific attributes (VSAs)

Theses were all wonderful back with Livingston incorporated made the Portmaster terminal/modem server. (Ah, back in the day... I can hear the telebit trailblazers now...) But that was when 19.2Kb UUCP was cool.

DIAMETER aims to address these issues for the modern world. First, it's based on TCP. This addresses the drop-out problem. We now know that packets don't get there "half way". We can also encrypt streams. It's also, courtesy of TCP, capable of having much larger attribute sets (we call them AVPs). Thus, it's much easier to convey value sets beyond the simple key/value pair.

As an example, in DIAMETER< you can do a login request, sending far more than a username/password. You can send the course location for example, telling the AAA where the user is at login (maybe there are geo-location rules for access). And, because we have a more robust, richer language to say things in, the AAA can convey, not only the yes/no, but the rules for a given yes, or the reasons for the no.

Does this help?