What about when this wraps?  4B sessions doesn't seem that many in a real deployment.

You could store this as a single 64-bit int and do bitshifting when converting to a string to resolve this.