Actions
Protocol core-core Version 3 » History » Revision 63
« Previous |
Revision 63/73
(diff)
| Next »
Greg Burri, 04/05/2011 10:03 PM
Protocol core-core¶
This page describes the protocol used by D-LAN for network communication between cores.
See source:application/Protos/core_protocol.proto for message details.
Parameters¶
Most parameters will be stored as constants in their component. The given values below are just for illustrate with an example, they will be defined in a empiric manner later.
Name | Value | Unit | Explanation/Comments |
---|---|---|---|
ChunkSize | 67108864 | [Byte] | (64 MB) |
LanSpeed | 52428800 | [Byte/s] | (50 MB/s) |
TimeRecheckChunkFactor | 4 | - | If the time to download a chunk exceeds TimeRecheckChunkFactor * ChunkSize / LanSpeed the peers are rescanned to choose a better one (better download rate). For example : 4 * 64 / 50 = 5 second |
SwitchToAnotherPeerFactor | 1.5 | - | During the recheck of the peers to choose a better one the download rate of the candidate must be above the current * 1.5. |
DownloadRateValidTime | 1500 / LanSpeed = 30 s | [s] | The download rate of a peer is only valid during this time after its last update. After that its rate is set to the maximum. |
IMAliveFrequency | 10 s | [s] | The message IMAlive is sent each 10s. |
NbDownloadThread | 3 | - | Number of concurrent downloading thread. |
BufferSize | 65535 | [Byte] | (64 KiB). This buffer is used when reading or writing a file. |
TCPSocketBufferSize | 65535 | [Byte] | (64 KiB). Used when data are received. See QAbstractSocket::setReadBufferSize. |
TCPPeerConnectionKeepAlive | 60 | [s] | (1 min). There's can be one or more connection to a certain peer, these connections are kept alive for a period of time. For each known peer there is a pool of connection. |
Updated by Greg Burri over 13 years ago · 63 revisions