Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!cs.utexas.edu!uunet!wang!fitz From: fitz@wang.com (Tom Fitzgerald) Newsgroups: news.software.b Subject: Re: Ideas for Message-ID's Message-ID: Date: 27 Mar 91 01:09:10 GMT References: <3427@litchi.bbn.com> <1991Mar22.050749.22115@looking.on.ca> Organization: Wang Labs, Lowell MA, USA Lines: 43 brad@looking.on.ca (Brad Templeton) writes: > I say make it as small as you can, either the sequence number, which > is smallest, or a radix 85 (or however many safe characters there are in > message-ids) encoding of the minute and process-id, with epoch when > you started your site up. The number of safe characters is way below 85 unfortunately. But above 36 it really doesn't do you a lot of good. If you want to crunch 31 bits of timestamp and 15 bits of process ID into a string, it's easy to get a 10-character result (like you'll see in the message ID of this article) and a pain to get any shorter than that. Some points on the curve are: for 31-bit date: 6 characters, alphabet size must be 36 or greater 5 characters, alphabet size must be 74 or greater for 15-bit process ID: 3 characters, alphabet size must be 32 or greater 2 characters, alphabet size must be 182 or greater So using lowercase letters and digits gives you a 10 character identifier (with the separating dot). It's impossible to get the alphabet size to 74 characters since some systems (early C news systems? VMS systems running ANU news? Somebody...) require case-insensitive message IDs. You could easily get rid of the dot separator by ALWAYS using 6+3 characters. By treating the timestamp and process ID as a single 46-bit number, things can get even smaller: for 46-bit combined timestamp and process ID: 9 characters, alphabet size must be 35 or greater 8 characters, alphabet size must be 54 or greater So for a 8-character identifier, the alphabet can be letters, digits and 18 random punctuation marks, which isn't too hard. All this assumes that the world will come to an end in January of 2038, but we all understand that. Do any systems use 16-bit process IDs? --- Tom Fitzgerald Wang Labs fitz@wang.com 1-508-967-5278 Lowell MA, USA ...!uunet!wang!fitz