Как сгенерировать идентификатор сеанса в базовом протоколе Diameter

Согласно RFC 6733 (https://tools.ietf.org/html/rfc6733#section-8.8) идентификатор сеанса должен быть в следующем формате:

  <DiameterIdentity>;<high 32 bits>;<low 32 bits>[;<optional value>]

DiameterIdentity может быть FQDN/Realm, но нам нужно установить какое-то старшее и младшее 32-битное значение.

Может кто-нибудь предложить, как мы можем реализовать это в Java. В необязательном значении я думаю поставить метку времени события


person Sandeep    schedule 05.04.2020    source источник


Ответы (2)


Поскольку идентификатор сеанса должен быть уникальным, лучше всего использовать текущее время (например, в мс) и использовать результат для высокого/низкого значения.

Например, вы также можете сделать высокое значение постоянным и использовать время для низкого значения.

person Oded Itzhaky    schedule 07.04.2020

импортировать java.util.UUID; импортировать com.datastax.oss.driver.api.core.uuid.Uuids;

UUID subscribeId = Uuids.timeBased();

person Sandeep    schedule 14.05.2021