[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r2886 - GNUnet/src/server
From: |
grothoff |
Subject: |
[GNUnet-SVN] r2886 - GNUnet/src/server |
Date: |
Mon, 22 May 2006 16:04:10 -0700 (PDT) |
Author: grothoff
Date: 2006-05-22 16:04:06 -0700 (Mon, 22 May 2006)
New Revision: 2886
Modified:
GNUnet/src/server/connection.c
Log:
better, extended stats
Modified: GNUnet/src/server/connection.c
===================================================================
--- GNUnet/src/server/connection.c 2006-05-22 16:24:14 UTC (rev 2885)
+++ GNUnet/src/server/connection.c 2006-05-22 23:04:06 UTC (rev 2886)
@@ -496,6 +496,10 @@
static int stat_encrypted;
+static int stat_transmitted;
+
+static int stat_received;
+
static int stat_decrypted;
static int stat_noise_sent;
@@ -1059,7 +1063,7 @@
(int) ((cronTime(NULL) - entry->transmissionTime) / cronSECONDS),
usedBytes);
#endif
- if(stats != NULL) {
+ if (stats != NULL) {
stats->change(stat_messagesDropped, 1);
stats->change(stat_sizeMessagesDropped, entry->len);
}
@@ -1375,25 +1379,28 @@
}
/* finally padd with noise */
- if((p + sizeof(P2P_MESSAGE_HEADER) <= totalMessageSize) &&
- (disable_random_padding == NO)) {
+ if ( (p + sizeof(P2P_MESSAGE_HEADER) <= totalMessageSize) &&
+ (disable_random_padding == NO) ) {
P2P_MESSAGE_HEADER *part;
unsigned short noiseLen = totalMessageSize - p;
part = (P2P_MESSAGE_HEADER *) & plaintextMsg[p];
part->size = htons(noiseLen);
part->type = htons(P2P_PROTO_noise);
- for(i = p + sizeof(P2P_MESSAGE_HEADER); i < totalMessageSize; i++)
+ for (i = p + sizeof(P2P_MESSAGE_HEADER); i < totalMessageSize; i++)
plaintextMsg[i] = (char) rand();
p = totalMessageSize;
- if(stats != NULL)
+ if (stats != NULL)
stats->change(stat_noise_sent, noiseLen);
}
encryptedMsg = MALLOC(p);
hash(&p2pHdr->sequenceNumber,
p - sizeof(HashCode512), (HashCode512 *) encryptedMsg);
- ret = encryptBlock(&p2pHdr->sequenceNumber, p - sizeof(HashCode512),
&be->skey_local, (const INITVECTOR *) encryptedMsg, /* IV */
+ ret = encryptBlock(&p2pHdr->sequenceNumber,
+ p - sizeof(HashCode512),
+ &be->skey_local,
+ (const INITVECTOR *) encryptedMsg, /* IV */
&((P2P_PACKET_HEADER *) encryptedMsg)->sequenceNumber);
#if DEBUG_CONNECTION
printMsg("Encrypting P2P data", &be->session.sender,
@@ -1409,6 +1416,8 @@
ret = transport->sendReliable(be->session.tsession, encryptedMsg, p);
}
if (ret == YES) {
+ if(stats != NULL)
+ stats->change(stat_transmitted, p);
if (be->available_send_window > totalMessageSize)
be->available_send_window -= totalMessageSize;
else
@@ -1424,14 +1433,14 @@
if (rsnSize > 0) {
j = sizeof(P2P_PACKET_HEADER);
while (j < p) {
- P2P_MESSAGE_HEADER *part = (P2P_MESSAGE_HEADER *) &plaintextMsg[j];
+ P2P_MESSAGE_HEADER * part = (P2P_MESSAGE_HEADER *) &plaintextMsg[j];
unsigned short plen = htons(part->size);
- if(plen < sizeof(P2P_MESSAGE_HEADER)) {
+ if (plen < sizeof(P2P_MESSAGE_HEADER)) {
BREAK();
break;
}
- for(rsi = 0; rsi < rsnSize; rsi++)
- rsns[rsi] (&be->session.sender, part);
+ for (rsi = 0; rsi < rsnSize; rsi++)
+ rsns[rsi](&be->session.sender, part);
j += plen;
}
}
@@ -2251,6 +2260,8 @@
(msg->bandwidth == 0) &&
(msg->timeStamp == 0) )
return NO; /* plaintext */
+ if (stats != NULL)
+ stats->change(stat_received, size);
#if DEBUG_CONNECTION
LOG(LOG_DEBUG, "Decrypting message from host `%s'\n", &enc);
@@ -2270,7 +2281,10 @@
return SYSERR; /* could not decrypt */
}
tmp = MALLOC(size - sizeof(HashCode512));
- res = decryptBlock(&be->skey_remote, &msg->sequenceNumber, size -
sizeof(HashCode512), (const INITVECTOR *) &msg->hash, /* IV */
+ res = decryptBlock(&be->skey_remote,
+ &msg->sequenceNumber,
+ size - sizeof(HashCode512),
+ (const INITVECTOR *) &msg->hash, /* IV */
tmp);
hash(tmp, size - sizeof(HashCode512), &hc);
if(!((res != OK) && equalsHashCode512(&hc, &msg->hash))) {
@@ -2287,8 +2301,8 @@
FREE(tmp);
return SYSERR;
}
- if(stats != NULL)
- stats->change(stat_decrypted, size - sizeof(HashCode512));
+ if(stats != NULL)
+ stats->change(stat_decrypted, size - sizeof(HashCode512));
memcpy(&msg->sequenceNumber, tmp, size - sizeof(HashCode512));
FREE(tmp);
res = YES;
@@ -2687,13 +2701,28 @@
stats = requestService("stats");
if(stats != NULL) {
stat_messagesDropped
- = stats->create(gettext_noop("# outgoing messages dropped"));
+ = stats->create(gettext_noop(/* number of messages dropped by GNUnet core
+ due to resource constraints */
+ "# outgoing messages dropped"));
stat_sizeMessagesDropped
- = stats->create(gettext_noop("# bytes of outgoing messages dropped"));
+ = stats->create(gettext_noop(/* bytes of messages dropped by GNUnet core
+ due to resource constraints */
+ "# bytes of outgoing messages dropped"));
stat_hangupSent
= stats->create(gettext_noop("# connections closed (HANGUP sent)"));
- stat_encrypted = stats->create(gettext_noop("# bytes encrypted"));
- stat_decrypted = stats->create(gettext_noop("# bytes decrypted"));
+ stat_encrypted = stats->create(gettext_noop(/* includes encrypted but then
+ not transmitted data */
+ "# bytes encrypted"));
+ stat_transmitted = stats->create(gettext_noop(/* encrypted data, confirmed
by
+ transport, without transport
+ headers */
+ "# bytes transmitted"));
+ stat_received = stats->create(gettext_noop(/* encrypted data received
+ (incl. invalid/undecryptable
data)
+ without transport headers */
+ "# bytes received"));
+ stat_decrypted = stats->create(gettext_noop(/* bytes successfully
decrypted */
+ "# bytes decrypted"));
stat_noise_sent = stats->create(gettext_noop("# bytes noise sent"));
}
transport->start(&core_receive);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r2886 - GNUnet/src/server,
grothoff <=