whisper: refactoring (#3411)
* whisper: refactored message processing * whisper: final polishing * whisper: logging updated * whisper: moved the check, changed the default PoW * whisper: refactoring of message queuing * whisper: refactored parameters
This commit is contained in:
@@ -15,9 +15,7 @@
|
||||
// along with the go-ethereum library. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
/*
|
||||
Package whisper implements the Whisper PoC-1.
|
||||
|
||||
(https://github.com/ethereum/wiki/wiki/Whisper-PoC-1-Protocol-Spec)
|
||||
Package whisper implements the Whisper protocol (version 5).
|
||||
|
||||
Whisper combines aspects of both DHTs and datagram messaging systems (e.g. UDP).
|
||||
As such it may be likened and compared to both, not dissimilar to the
|
||||
@@ -42,11 +40,11 @@ const (
|
||||
ProtocolVersionStr = "5.0"
|
||||
ProtocolName = "shh"
|
||||
|
||||
statusCode = 0
|
||||
messagesCode = 1
|
||||
p2pCode = 2
|
||||
mailRequestCode = 3
|
||||
NumberOfMessageCodes = 32
|
||||
statusCode = 0 // used by whisper protocol
|
||||
messagesCode = 1 // normal whisper message
|
||||
p2pCode = 2 // peer-to-peer message (to be consumed by the peer, but not forwarded any futher)
|
||||
p2pRequestCode = 3 // peer-to-peer message, used by Dapp protocol
|
||||
NumberOfMessageCodes = 64
|
||||
|
||||
paddingMask = byte(3)
|
||||
signatureFlag = byte(4)
|
||||
@@ -57,11 +55,12 @@ const (
|
||||
saltLength = 12
|
||||
AESNonceMaxLength = 12
|
||||
|
||||
MaxMessageLength = 0xFFFF // todo: remove this restriction after testing in morden and analizing stats. this should be regulated by MinimumPoW.
|
||||
MinimumPoW = 10.0 // todo: review
|
||||
MaxMessageLength = 0xFFFF // todo: remove this restriction after testing. this should be regulated by PoW.
|
||||
MinimumPoW = 1.0 // todo: review after testing.
|
||||
|
||||
padSizeLimitLower = 128 // it can not be less - we don't want to reveal the absence of signature
|
||||
padSizeLimitUpper = 256 // just an arbitrary number, could be changed without losing compatibility
|
||||
messageQueueLimit = 1024
|
||||
|
||||
expirationCycle = time.Second
|
||||
transmissionCycle = 300 * time.Millisecond
|
||||
|
Reference in New Issue
Block a user