# CRC

"Robert J. Brown" (rj@eli.wariat.org)
Tue, 13 Feb 1996 12:52:09 PST

- Messages sorted by:[ date ][ thread ][ subject ][ author ]

    >>>>> "Roger" == Roger Crew <rfc@microsoft.com> writes:

        Roger> [...bleah, let's try this again, and see if our silly
        Roger> gateway can do it right this time...]

        >> I wasn't planning on using this to make sure the text got to
        >> the other MOO correctly, I know it will since the network
        >> already uses some sort of CRC checking.  What I wanted was for
        >> BOTH MOOs to generate a CRC of the object's code.  If the CRCs
        >> match, the MOO will not update anything.  If it doesn't, then
        >> the host MOO will update the client MOO's code... That way,
        >> this group of objects will remain exactly the same on both
        >> MOOs, incase I decide to alter one, I only have to do it once.

        Roger> Sounds like what you really want is a *timestamp*.  Your
        Roger> "CRC" doesn't actually have to be generated from the code
        Roger> being sent; all you really need is an explicit part of the
        Roger> code (though it could also be stored on a separate
        Roger> property) that indicates when it was written (*).  The host
        Roger> sends the timestamp first, and if the client already has
        Roger> that verb with that timestamp it says, "No, thank you."
        Roger> Moreover, you won't get the false negatives that CRC could
        Roger> give you (at least, not until *after* Monday, Jan 18,
        Roger> 2038).  Granted, you'll need 1 or 2 extra words of storage
        Roger> for each verb, but that's pretty small compared to the
        Roger> amount of space the verbs themselves take up.

        Roger> (* and possibly also which MOO the code was first written
        Roger> on, if you want to be able to have alterations flow in both
        Roger> directions, but you have to be careful about the situation
        Roger> where the clocks are not entirely in sync)

    I wouold suggest that NTP (Network Time Protocol) be required to use
    this mechanism, and that everyone sync on an agreed upon master,
    perhaps PARC.xerox.com, or the national beureau of standards, or some
    other known source.

    --
    -----------  "...  And the men went up and viewed Ai."  [Jos 7:2]  -----------
    Robert Jay Brown III  rj@eli.wariat.org  http://eli.wariat.org  1 847 705-0370
    Elijah Laboratories Inc;  759 Independence Drive;  Suite 5;  Palatine IL 60074
    -----  M o d e l i n g   t h e   M e t h o d s   o f   t h e   M i n d  ------