On Wed, 29 Aug 2007, Guy Hulbert wrote:

        1. A unique ID per message (on one server).
        2. Ability to distinguish per recipient.
        3. Ability to identify the server.

A sequence solves (1) except for simultaneous processing of
incoming messages via:

        a) async
        b) threads/multiple cpus
        c) local ports (possibly on multiple addresses)

Except with multiple CPUs, time with sufficient resolution is a
satisfactory replacement for a sequence.

"Except with multiple CPUs" is a big problem. OTOH, as has been mentioned multiple times, a four-tuple identifying the TCP connection plus a timestamp will be satisfactory with any number of CPUs, and with very fast networks.

It may be useful to log things like remote_port but it doesn't seem to
help directly to solve problem 1.

A counter solves 2.

Any tag which is unique per server solves 3.  It is probably simpler to
make this configurable by the end-user.

A four-tuple identifying the TCP connection also identifies the server.

---
Charlie

Reply via email to