way to insight


Bitmessage 对于离线消息是怎么处理的?


《Bitmessage: A Peer-to-Peer Message Authentication and Delivery System》

Behavior when the receiver is offline

    An object is a public key request, a public key, 
    a person-to-person message, or a broadcast message.
    Objects are broadcast throughout a Bitmessage stream.
    We propose that nodes store all objects for two days and then 
    delete them. 

    Nodes joining the network request a list of objects from 
    their peer and download the objects that they do not have. 
    Thus they will receive all messages bound for them that were broadcast 
    during the last two days.

    If a node is offline for more than two days, 
    the sending node will notice that it never received an acknowledgement 
    and rebroadcasts the message after an additional two days. 
    It will continue to rebroadcast the message, with exponential backoff, 

    In the worst case, if a user is offline for n days, 
    he must go back online and stay connected for n days 
    (or connect once every two days for n days) in order to receive 
    all of his messages.