Asterisk's Call-ID?

In RFC3261,
“The Call-ID header field acts as a unique identifier to group
together a series of messages. It MUST be the same for all requests
and responses sent by either UA in a dialog. It SHOULD be the same
in each registration from a UA."

Asterisk seems not follow RFC because the Call-ID is randomly different in each session.
Is this a problem?

Asterisk’s call-ID doesn’t change during a session. It should change between sessions, and there is nothing in the quote that indicates otherwise. A sequence of registers isn’t a session, and that is only a SHOULD requirement.