mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-07-25 15:35:49 -04:00
Removed Lots of Debug, and fixed a couple of bugs.
* Increased Timeout Periods for UDP connections - this was stopping half of them from succeeding. * The other bug (Heartbeat / stream issues) has not been solved. * Fixed up initialisation of p3BitDht data. * add DropPeers() as NON-ACTIVE (this allows peers which aren't VISIBLE to still try and connect) * export AddFriends/FOF/Others to LinkMgr to allow further SSL IDs to be added to p3BitDht. * Export UDP Addresses to DhtWindow. * switch off lots of debugging. git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4469 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
parent
e7049cc483
commit
cc9df9a80f
13 changed files with 370 additions and 190 deletions
|
@ -67,11 +67,13 @@ const int p3connectzone = 3431;
|
|||
* #define P3CONNMGR_NO_AUTO_CONNECTION 1
|
||||
***/
|
||||
|
||||
#define P3CONNMGR_NO_TCP_CONNECTIONS 1
|
||||
|
||||
const uint32_t P3CONNMGR_TCP_DEFAULT_DELAY = 3; /* 2 Seconds? is it be enough! */
|
||||
const uint32_t P3CONNMGR_UDP_DEFAULT_DELAY = 3; /* 2 Seconds? is it be enough! */
|
||||
|
||||
const uint32_t P3CONNMGR_TCP_DEFAULT_PERIOD = 10;
|
||||
const uint32_t P3CONNMGR_UDP_DEFAULT_PERIOD = 40;
|
||||
const uint32_t P3CONNMGR_UDP_DEFAULT_PERIOD = 30; // this represents how long it stays at the default TTL (4), before rising.
|
||||
|
||||
#define MAX_AVAIL_PERIOD 230 //times a peer stay in available state when not connected
|
||||
#define MIN_RETRY_PERIOD 140
|
||||
|
@ -1205,8 +1207,12 @@ void p3LinkMgrIMPL::peerConnectRequest(std::string id, struct sockaddr_in rad
|
|||
|
||||
if (source == RS_CB_DHT)
|
||||
{
|
||||
|
||||
if (flags & RS_CB_FLAG_MODE_TCP)
|
||||
{
|
||||
|
||||
#ifndef P3CONNMGR_NO_TCP_CONNECTIONS
|
||||
|
||||
#ifdef LINKMGR_DEBUG
|
||||
std::cerr << "p3LinkMgrIMPL::peerConnectRequest() DHT says Online ==> so try TCP";
|
||||
std::cerr << std::endl;
|
||||
|
@ -1235,6 +1241,9 @@ void p3LinkMgrIMPL::peerConnectRequest(std::string id, struct sockaddr_in rad
|
|||
}
|
||||
|
||||
retryConnect(id);
|
||||
|
||||
#endif
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -58,6 +58,7 @@ const uint32_t RS_NET_CONN_UDP_PEER_SYNC = 0x0020; /* coming soon */
|
|||
//const uint32_t RS_NET_CONN_PEER = 0x0200; /* all UDP */
|
||||
|
||||
const uint32_t RS_TCP_STD_TIMEOUT_PERIOD = 5; /* 5 seconds! */
|
||||
const uint32_t RS_UDP_STD_TIMEOUT_PERIOD = 80; /* 80 secs, allows UDP TTL to get to 40! - Plenty of time (30+80) = 110 secs */
|
||||
|
||||
class peerAddrInfo
|
||||
{
|
||||
|
|
|
@ -75,8 +75,6 @@ const uint32_t MIN_TIME_BETWEEN_NET_RESET = 5;
|
|||
* #define NETMGR_DEBUG_STATEBOX 1
|
||||
***/
|
||||
|
||||
#define NETMGR_DEBUG_STATEBOX 1
|
||||
|
||||
pqiNetStatus::pqiNetStatus()
|
||||
:mLocalAddrOk(false), mExtAddrOk(false), mExtAddrStableOk(false),
|
||||
mUpnpOk(false), mDhtOk(false), mResetReq(false)
|
||||
|
|
|
@ -114,10 +114,17 @@ class pqiNetAssistConnect: public pqiNetAssist
|
|||
|
||||
virtual int tick() = 0; /* for internal accounting */
|
||||
|
||||
|
||||
/* add / remove peers */
|
||||
virtual bool findPeer(std::string id) = 0;
|
||||
virtual bool dropPeer(std::string id) = 0;
|
||||
|
||||
/* add non-active peers (can still toggle active/non-active via above) */
|
||||
virtual int addFriend(const std::string pid) = 0;
|
||||
virtual int addFriendOfFriend(const std::string pid) = 0;
|
||||
virtual int addOther(const std::string pid) = 0;
|
||||
|
||||
|
||||
virtual void ConnectionFeedback(std::string pid, int mode) = 0;
|
||||
|
||||
/* extract current peer status */
|
||||
|
|
|
@ -192,8 +192,8 @@ bool pqihandler::RemoveSearchModule(SearchModule *mod)
|
|||
// dummy output check
|
||||
int pqihandler::locked_checkOutgoingRsItem(RsItem *item, int global)
|
||||
{
|
||||
pqioutput(PQL_WARNING, pqihandlerzone,
|
||||
"pqihandler::checkOutgoingPQItem() NULL fn");
|
||||
//pqioutput(PQL_DEBUG_BASIC, pqihandlerzone, "pqihandler::checkOutgoingPQItem() NULL fn");
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
|
|
@ -102,7 +102,8 @@ int pqiperson::status()
|
|||
|
||||
int pqiperson::receiveHeartbeat()
|
||||
{
|
||||
pqioutput(PQL_DEBUG_ALERT, pqipersonzone, "pqiperson::receiveHeartbeat() from peer : " + PeerId());
|
||||
//pqioutput(PQL_DEBUG_ALERT, pqipersonzone, "pqiperson::receiveHeartbeat() from peer : " + PeerId());
|
||||
pqioutput(PQL_WARNING, pqipersonzone, "pqiperson::receiveHeartbeat() from peer : " + PeerId());
|
||||
lastHeartbeatReceived = time(NULL);
|
||||
|
||||
return true ;
|
||||
|
@ -112,11 +113,14 @@ int pqiperson::receiveHeartbeat()
|
|||
int pqiperson::tick()
|
||||
{
|
||||
//if lastHeartbeatReceived is 0, it might be not activated so don't do a net reset.
|
||||
if (active &&
|
||||
lastHeartbeatReceived != 0 &&
|
||||
(time(NULL) - lastHeartbeatReceived) > HEARTBEAT_REPEAT_TIME * 5) {
|
||||
pqioutput(PQL_WARNING, pqipersonzone, "pqiperson::tick() No heartbeat from the peer, assume connection is dead.");
|
||||
this->reset();
|
||||
if (active && (lastHeartbeatReceived != 0) &&
|
||||
(time(NULL) - lastHeartbeatReceived) > HEARTBEAT_REPEAT_TIME * 5)
|
||||
{
|
||||
std::ostringstream out;
|
||||
out << "pqiperson::tick() No heartbeat from the peer, assume connection is dead. LastHeartbeat was: ";
|
||||
out << time(NULL) - lastHeartbeatReceived << " secs ago";
|
||||
pqioutput(PQL_WARNING, pqipersonzone, out.str());
|
||||
this->reset();
|
||||
}
|
||||
|
||||
int activeTick = 0;
|
||||
|
|
|
@ -587,7 +587,7 @@ int pqipersongrp::connectPeer(std::string id
|
|||
else if (type & RS_NET_CONN_UDP_ALL)
|
||||
{
|
||||
ptype = PQI_CONNECT_UDP;
|
||||
timeout = period * 2;
|
||||
timeout = period + RS_UDP_STD_TIMEOUT_PERIOD; // Split of UNCERTAINTY + TIME FOR TTL to RISE to Connection.
|
||||
#ifdef PGRP_DEBUG
|
||||
std::cerr << " pqipersongrp::connectPeer() connecting with UDP: Timeout :" << timeout;
|
||||
std::cerr << std::endl;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue