mirror of
https://github.com/openmoh/openmohaa.git
synced 2025-12-22 05:37:15 +00:00
refactor(network): clarify net profiling struct and field names
This commit is contained in:
@@ -1531,7 +1531,7 @@ void CL_Rcon_f( void ) {
|
||||
NET_SendPacket (NS_CLIENT, strlen(message) + 1, message, to);
|
||||
|
||||
if (cl_netprofile->integer) {
|
||||
NetProfileAddPacket(&cls.netprofile.inPackets, strlen(message) + 1, NETPROF_PACKET_MESSAGE);
|
||||
NetProfileAddPacket(&cls.netprofile.upstream, strlen(message) + 1, NETPROF_PACKET_MESSAGE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2314,7 +2314,7 @@ void CL_ConnectionlessPacket( netadr_t from, msg_t *msg ) {
|
||||
const char *reason;
|
||||
|
||||
if (cl_netprofile->integer) {
|
||||
NetProfileAddPacket(&cls.netprofile.outPackets, msg->cursize, NETPROF_PACKET_MESSAGE);
|
||||
NetProfileAddPacket(&cls.netprofile.downstream, msg->cursize, NETPROF_PACKET_MESSAGE);
|
||||
}
|
||||
|
||||
MSG_BeginReadingOOB( msg );
|
||||
@@ -2790,8 +2790,8 @@ void CL_Frame ( int msec ) {
|
||||
}
|
||||
}
|
||||
|
||||
cls.netprofile.outPackets.updateTime = Com_Milliseconds();
|
||||
cls.netprofile.inPackets.updateTime = cls.netprofile.outPackets.updateTime;
|
||||
cls.netprofile.downstream.updateTime = Com_Milliseconds();
|
||||
cls.netprofile.upstream.updateTime = cls.netprofile.downstream.updateTime;
|
||||
} else {
|
||||
cls.netprofile.initialized = qfalse;
|
||||
}
|
||||
@@ -4255,7 +4255,7 @@ void CL_LocalServers_f( void ) {
|
||||
NET_SendPacket( NS_CLIENT, strlen( message ), message, to );
|
||||
|
||||
if (cl_netprofile->integer) {
|
||||
NetProfileAddPacket(&cls.netprofile.inPackets, strlen( message ), NETPROF_PACKET_MESSAGE);
|
||||
NetProfileAddPacket(&cls.netprofile.upstream, strlen( message ), NETPROF_PACKET_MESSAGE);
|
||||
}
|
||||
|
||||
// Added in OPM (from ioquake3)
|
||||
@@ -4263,7 +4263,7 @@ void CL_LocalServers_f( void ) {
|
||||
NET_SendPacket( NS_CLIENT, strlen( message ), message, to );
|
||||
|
||||
if (cl_netprofile->integer) {
|
||||
NetProfileAddPacket(&cls.netprofile.inPackets, strlen(message), NETPROF_PACKET_MESSAGE);
|
||||
NetProfileAddPacket(&cls.netprofile.upstream, strlen(message), NETPROF_PACKET_MESSAGE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -132,7 +132,7 @@ CL_Netchan_TransmitNextFragment
|
||||
=================
|
||||
*/
|
||||
void CL_Netchan_TransmitNextFragment( netchan_t *chan ) {
|
||||
Netchan_TransmitNextFragment( chan, cl_netprofile->integer ? &cls.netprofile.inPackets : NULL );
|
||||
Netchan_TransmitNextFragment( chan, cl_netprofile->integer ? &cls.netprofile.upstream : NULL );
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -144,7 +144,7 @@ void CL_Netchan_Transmit( netchan_t *chan, msg_t* msg ) {
|
||||
MSG_WriteByte( msg, clc_EOF );
|
||||
|
||||
CL_Netchan_Encode( msg );
|
||||
Netchan_Transmit( chan, msg->cursize, msg->data, cl_netprofile->integer ? &cls.netprofile.inPackets : NULL );
|
||||
Netchan_Transmit( chan, msg->cursize, msg->data, cl_netprofile->integer ? &cls.netprofile.upstream : NULL );
|
||||
}
|
||||
|
||||
extern int oldsize;
|
||||
@@ -158,7 +158,7 @@ CL_Netchan_Process
|
||||
qboolean CL_Netchan_Process( netchan_t *chan, msg_t *msg ) {
|
||||
int ret;
|
||||
|
||||
ret = Netchan_Process( chan, msg, cl_netprofile->integer ? &cls.netprofile.outPackets : NULL );
|
||||
ret = Netchan_Process( chan, msg, cl_netprofile->integer ? &cls.netprofile.downstream : NULL );
|
||||
if (!ret)
|
||||
return qfalse;
|
||||
CL_Netchan_Decode( msg );
|
||||
@@ -182,6 +182,6 @@ void CL_NET_OutOfBandPrint(netadr_t adr, const char* format, ...) {
|
||||
NET_OutOfBandPrint(NS_CLIENT, adr, "%s", string);
|
||||
|
||||
if (cl_netprofile->integer) {
|
||||
NetProfileAddPacket(&cls.netprofile.inPackets, strlen(string), NETPROF_PACKET_MESSAGE);
|
||||
NetProfileAddPacket(&cls.netprofile.upstream, strlen(string), NETPROF_PACKET_MESSAGE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -252,43 +252,43 @@ void View3D::DrawSoundOverlay(void)
|
||||
|
||||
void DisplayServerNetProfileInfo(UIFont *font, float y, netprofclient_t *netprofile)
|
||||
{
|
||||
font->Print(104, y, va("%i", netprofile->inPackets.packetsPerSec));
|
||||
font->Print(144, y, va("%i", netprofile->outPackets.packetsPerSec));
|
||||
font->Print(184, y, va("%i", netprofile->inPackets.packetsPerSec + netprofile->outPackets.packetsPerSec));
|
||||
font->Print(234, y, va("%i", netprofile->inPackets.percentFragmented));
|
||||
font->Print(264, y, va("%i", netprofile->outPackets.percentFragmented));
|
||||
font->Print(104, y, va("%i", netprofile->upstream.packetsPerSec));
|
||||
font->Print(144, y, va("%i", netprofile->downstream.packetsPerSec));
|
||||
font->Print(184, y, va("%i", netprofile->upstream.packetsPerSec + netprofile->downstream.packetsPerSec));
|
||||
font->Print(234, y, va("%i", netprofile->upstream.percentFragmented));
|
||||
font->Print(264, y, va("%i", netprofile->downstream.percentFragmented));
|
||||
font->Print(
|
||||
294,
|
||||
y,
|
||||
va("%i",
|
||||
(unsigned int)((float)(netprofile->outPackets.numFragmented + netprofile->inPackets.numFragmented)
|
||||
/ (float)(netprofile->inPackets.totalProcessed + netprofile->outPackets.totalProcessed))),
|
||||
(unsigned int)((float)(netprofile->downstream.numFragmented + netprofile->upstream.numFragmented)
|
||||
/ (float)(netprofile->upstream.totalPackets + netprofile->downstream.totalPackets))),
|
||||
-1
|
||||
);
|
||||
font->Print(334, y, va("%i", netprofile->inPackets.percentDropped));
|
||||
font->Print(364, y, va("%i", netprofile->outPackets.percentDropped));
|
||||
font->Print(334, y, va("%i", netprofile->upstream.percentDropped));
|
||||
font->Print(364, y, va("%i", netprofile->downstream.percentDropped));
|
||||
font->Print(
|
||||
394,
|
||||
y,
|
||||
va("%i",
|
||||
(unsigned int)((float)(netprofile->outPackets.numDropped + netprofile->inPackets.numDropped)
|
||||
/ (float)(netprofile->inPackets.totalProcessed + netprofile->outPackets.totalProcessed))),
|
||||
(unsigned int)((float)(netprofile->downstream.numDropped + netprofile->upstream.numDropped)
|
||||
/ (float)(netprofile->upstream.totalPackets + netprofile->downstream.totalPackets))),
|
||||
-1
|
||||
);
|
||||
font->Print(434, y, va("%i", netprofile->inPackets.percentDropped));
|
||||
font->Print(464, y, va("%i", netprofile->outPackets.percentDropped));
|
||||
font->Print(434, y, va("%i", netprofile->upstream.percentDropped));
|
||||
font->Print(464, y, va("%i", netprofile->downstream.percentDropped));
|
||||
font->Print(
|
||||
494,
|
||||
y,
|
||||
va("%i",
|
||||
(unsigned int)((float)(netprofile->outPackets.totalLengthConnectionLess
|
||||
+ netprofile->inPackets.totalLengthConnectionLess)
|
||||
/ (float)(netprofile->outPackets.totalSize + netprofile->inPackets.totalSize))),
|
||||
(unsigned int)((float)(netprofile->downstream.totalBytesConnectionLess
|
||||
+ netprofile->upstream.totalBytesConnectionLess)
|
||||
/ (float)(netprofile->downstream.totalSize + netprofile->upstream.totalSize))),
|
||||
-1
|
||||
);
|
||||
font->Print(534, y, va("%i", netprofile->inPackets.bytesPerSec));
|
||||
font->Print(594, y, va("%i", netprofile->outPackets.bytesPerSec));
|
||||
font->Print(654, y, va("%i", netprofile->outPackets.bytesPerSec + netprofile->inPackets.bytesPerSec));
|
||||
font->Print(534, y, va("%i", netprofile->upstream.bytesPerSec));
|
||||
font->Print(594, y, va("%i", netprofile->downstream.bytesPerSec));
|
||||
font->Print(654, y, va("%i", netprofile->downstream.bytesPerSec + netprofile->upstream.bytesPerSec));
|
||||
font->Print(714, y, va("%i", netprofile->rate));
|
||||
}
|
||||
|
||||
@@ -326,51 +326,51 @@ void DisplayClientNetProfile(UIFont *font, float x, float y, netprofclient_t *ne
|
||||
|
||||
columnHeight += fontHeight;
|
||||
font->Print(x, columnHeight, "Data In");
|
||||
font->Print(columns[0], columnHeight, va("%i", netprofile->outPackets.packetsPerSec));
|
||||
font->Print(columns[1], columnHeight, va("%i%%", netprofile->outPackets.percentFragmented));
|
||||
font->Print(columns[2], columnHeight, va("%i%%", netprofile->outPackets.percentDropped));
|
||||
font->Print(columns[3], columnHeight, va("%i%%", netprofile->outPackets.percentConnectionLess));
|
||||
font->Print(columns[4], columnHeight, va("%i", netprofile->outPackets.bytesPerSec));
|
||||
font->Print(columns[0], columnHeight, va("%i", netprofile->downstream.packetsPerSec));
|
||||
font->Print(columns[1], columnHeight, va("%i%%", netprofile->downstream.percentFragmented));
|
||||
font->Print(columns[2], columnHeight, va("%i%%", netprofile->downstream.percentDropped));
|
||||
font->Print(columns[3], columnHeight, va("%i%%", netprofile->downstream.percentConnectionLess));
|
||||
font->Print(columns[4], columnHeight, va("%i", netprofile->downstream.bytesPerSec));
|
||||
|
||||
columnHeight += fontHeight;
|
||||
font->Print(x, columnHeight, "Data Out");
|
||||
font->Print(columns[0], columnHeight, va("%i", netprofile->inPackets.packetsPerSec));
|
||||
font->Print(columns[1], columnHeight, va("%i%%", netprofile->inPackets.percentFragmented));
|
||||
font->Print(columns[2], columnHeight, va("%i%%", netprofile->inPackets.percentDropped));
|
||||
font->Print(columns[3], columnHeight, va("%i%%", netprofile->inPackets.percentConnectionLess));
|
||||
font->Print(columns[4], columnHeight, va("%i", netprofile->inPackets.bytesPerSec));
|
||||
font->Print(columns[0], columnHeight, va("%i", netprofile->upstream.packetsPerSec));
|
||||
font->Print(columns[1], columnHeight, va("%i%%", netprofile->upstream.percentFragmented));
|
||||
font->Print(columns[2], columnHeight, va("%i%%", netprofile->upstream.percentDropped));
|
||||
font->Print(columns[3], columnHeight, va("%i%%", netprofile->upstream.percentConnectionLess));
|
||||
font->Print(columns[4], columnHeight, va("%i", netprofile->upstream.bytesPerSec));
|
||||
|
||||
columnHeight += fontHeight;
|
||||
|
||||
font->Print(x, columnHeight, "Total Data");
|
||||
|
||||
font->Print(
|
||||
columns[0], columnHeight, va("%i", netprofile->inPackets.packetsPerSec + netprofile->outPackets.packetsPerSec)
|
||||
columns[0], columnHeight, va("%i", netprofile->upstream.packetsPerSec + netprofile->downstream.packetsPerSec)
|
||||
);
|
||||
font->Print(
|
||||
columns[1],
|
||||
columnHeight,
|
||||
va("%i%%",
|
||||
(unsigned int)((float)(netprofile->outPackets.numFragmented + netprofile->inPackets.numFragmented)
|
||||
/ (float)(netprofile->inPackets.totalProcessed + netprofile->outPackets.totalProcessed)))
|
||||
(unsigned int)((float)(netprofile->downstream.numFragmented + netprofile->upstream.numFragmented)
|
||||
/ (float)(netprofile->upstream.totalPackets + netprofile->downstream.totalPackets)))
|
||||
);
|
||||
font->Print(
|
||||
columns[2],
|
||||
columnHeight,
|
||||
va("%i%%",
|
||||
(unsigned int)((float)(netprofile->outPackets.numDropped + netprofile->inPackets.numDropped)
|
||||
/ (double)(netprofile->inPackets.totalProcessed + netprofile->outPackets.totalProcessed)))
|
||||
(unsigned int)((float)(netprofile->downstream.numDropped + netprofile->upstream.numDropped)
|
||||
/ (double)(netprofile->upstream.totalPackets + netprofile->downstream.totalPackets)))
|
||||
);
|
||||
font->Print(
|
||||
columns[3],
|
||||
columnHeight,
|
||||
va("%i%%",
|
||||
(unsigned int)((float)(netprofile->outPackets.totalLengthConnectionLess
|
||||
+ netprofile->inPackets.totalLengthConnectionLess)
|
||||
/ (float)(netprofile->outPackets.totalSize + netprofile->inPackets.totalSize)))
|
||||
(unsigned int)((float)(netprofile->downstream.totalBytesConnectionLess
|
||||
+ netprofile->upstream.totalBytesConnectionLess)
|
||||
/ (float)(netprofile->downstream.totalSize + netprofile->upstream.totalSize)))
|
||||
);
|
||||
font->Print(
|
||||
columns[4], columnHeight, va("%i", netprofile->inPackets.bytesPerSec + netprofile->outPackets.bytesPerSec)
|
||||
columns[4], columnHeight, va("%i", netprofile->upstream.bytesPerSec + netprofile->downstream.bytesPerSec)
|
||||
);
|
||||
}
|
||||
|
||||
@@ -481,8 +481,8 @@ void View3D::DrawNetProfile(void)
|
||||
|
||||
m_font->Print(16, yOffset, "Client Net Profile", -1);
|
||||
|
||||
NetProfileCalcStats(&cls.netprofile.outPackets, 500);
|
||||
NetProfileCalcStats(&cls.netprofile.inPackets, 500);
|
||||
NetProfileCalcStats(&cls.netprofile.downstream, 500);
|
||||
NetProfileCalcStats(&cls.netprofile.upstream, 500);
|
||||
|
||||
DisplayClientNetProfile(m_font, 16, yOffset + fontHeight * 2, &cls.netprofile);
|
||||
}
|
||||
|
||||
@@ -140,12 +140,12 @@ void NetProfileCalcStats(netprofpacketlist_t* list, int time)
|
||||
list->lastCalcTime = list->updateTime;
|
||||
list->lowestUpdateTime = list->updateTime;
|
||||
list->highestUpdateTime = 0;
|
||||
list->totalProcessed = 0;
|
||||
list->totalPackets = 0;
|
||||
list->totalSize = 0;
|
||||
list->numFragmented = 0;
|
||||
list->numDropped = 0;
|
||||
list->numConnectionLess = 0;
|
||||
list->totalLengthConnectionLess = 0;
|
||||
list->totalBytesConnectionLess = 0;
|
||||
|
||||
for (i = 0; i < ARRAY_LEN(list->packets); i++) {
|
||||
packet = &list->packets[i];
|
||||
@@ -165,7 +165,7 @@ void NetProfileCalcStats(netprofpacketlist_t* list, int time)
|
||||
list->highestUpdateTime = packet->updateTime;
|
||||
}
|
||||
|
||||
list->totalProcessed++;
|
||||
list->totalPackets++;
|
||||
list->totalSize += packet->size;
|
||||
|
||||
if (packet->flags & NETPROF_PACKET_FRAGMENTED) {
|
||||
@@ -176,11 +176,11 @@ void NetProfileCalcStats(netprofpacketlist_t* list, int time)
|
||||
}
|
||||
if (packet->flags & NETPROF_PACKET_MESSAGE) {
|
||||
list->numConnectionLess++;
|
||||
list->totalLengthConnectionLess += packet->size;
|
||||
list->totalBytesConnectionLess += packet->size;
|
||||
}
|
||||
}
|
||||
|
||||
if (!list->totalProcessed) {
|
||||
if (!list->totalPackets) {
|
||||
list->packetsPerSec = 0;
|
||||
list->highestUpdateTime = list->lowestUpdateTime;
|
||||
list->bytesPerSec = 0;
|
||||
@@ -199,23 +199,23 @@ void NetProfileCalcStats(netprofpacketlist_t* list, int time)
|
||||
frequency = 1.0 / list->latency;
|
||||
}
|
||||
|
||||
list->packetsPerSec = list->totalProcessed * frequency;
|
||||
list->packetsPerSec = list->totalPackets * frequency;
|
||||
list->bytesPerSec = list->totalSize * frequency;
|
||||
|
||||
if (list->numFragmented) {
|
||||
list->percentFragmented = (float)list->numFragmented / list->totalProcessed * 100.0;
|
||||
list->percentFragmented = (float)list->numFragmented / list->totalPackets * 100.0;
|
||||
} else {
|
||||
list->percentFragmented = 0;
|
||||
}
|
||||
|
||||
if (list->numDropped) {
|
||||
list->percentDropped = (float)list->numDropped / list->totalProcessed * 100.0;
|
||||
list->percentDropped = (float)list->numDropped / list->totalPackets * 100.0;
|
||||
} else {
|
||||
list->percentDropped = 0;
|
||||
}
|
||||
|
||||
if (list->totalLengthConnectionLess) {
|
||||
list->percentConnectionLess = (float)list->totalLengthConnectionLess / list->totalSize * 100.0;
|
||||
if (list->totalBytesConnectionLess) {
|
||||
list->percentConnectionLess = (float)list->totalBytesConnectionLess / list->totalSize * 100.0;
|
||||
} else {
|
||||
list->percentConnectionLess = 0;
|
||||
}
|
||||
|
||||
@@ -315,28 +315,37 @@ typedef struct {
|
||||
int updateTime;
|
||||
int index;
|
||||
netprofpacket_t packets[NETPROX_MAX_PACKETS];
|
||||
|
||||
// Timing
|
||||
int lastCalcTime;
|
||||
int lowestUpdateTime;
|
||||
int highestUpdateTime;
|
||||
int totalProcessed;
|
||||
|
||||
// Accumulators
|
||||
int totalPackets;
|
||||
int totalSize;
|
||||
int numFragmented;
|
||||
int numDropped;
|
||||
int numConnectionLess;
|
||||
int totalLengthConnectionLess;
|
||||
int totalBytesConnectionLess;
|
||||
|
||||
// Rates
|
||||
int packetsPerSec;
|
||||
int bytesPerSec;
|
||||
|
||||
// Percentages
|
||||
int percentFragmented;
|
||||
int percentDropped;
|
||||
int percentConnectionLess;
|
||||
|
||||
float latency;
|
||||
} netprofpacketlist_t;
|
||||
|
||||
typedef struct {
|
||||
qboolean initialized;
|
||||
int rate;
|
||||
netprofpacketlist_t outPackets;
|
||||
netprofpacketlist_t inPackets;
|
||||
netprofpacketlist_t downstream;
|
||||
netprofpacketlist_t upstream;
|
||||
} netprofclient_t;
|
||||
|
||||
void Netchan_Init( int qport );
|
||||
|
||||
@@ -1690,30 +1690,30 @@ SV_NetProfileDump_PrintProf
|
||||
*/
|
||||
void SV_NetProfileDump_PrintProf(fileHandle_t file, netprofclient_t* netprofile)
|
||||
{
|
||||
size_t totalProcessed;
|
||||
size_t totalPackets;
|
||||
char buffer[2048];
|
||||
|
||||
totalProcessed = netprofile->outPackets.totalProcessed + netprofile->inPackets.totalProcessed;
|
||||
totalPackets = netprofile->downstream.totalPackets + netprofile->upstream.totalPackets;
|
||||
|
||||
Com_sprintf(
|
||||
buffer,
|
||||
sizeof(buffer),
|
||||
"%4i %4i %4i | %3i %3i %3i | %3i %3i %3i | %3i %3i %3i | %7i %7i %7i\n",
|
||||
netprofile->inPackets.packetsPerSec,
|
||||
netprofile->outPackets.packetsPerSec,
|
||||
netprofile->outPackets.packetsPerSec + netprofile->inPackets.packetsPerSec,
|
||||
netprofile->inPackets.percentFragmented,
|
||||
netprofile->outPackets.percentFragmented,
|
||||
(unsigned int)((float)(netprofile->outPackets.numFragmented + netprofile->inPackets.numFragmented) / totalProcessed),
|
||||
netprofile->inPackets.percentDropped,
|
||||
netprofile->outPackets.percentDropped,
|
||||
(unsigned int)((float)(netprofile->outPackets.numDropped + netprofile->inPackets.numDropped) / totalProcessed),
|
||||
netprofile->inPackets.percentDropped,
|
||||
netprofile->outPackets.percentDropped,
|
||||
(unsigned int)((float)(netprofile->outPackets.totalLengthConnectionLess + netprofile->inPackets.totalLengthConnectionLess) / (float)(netprofile->outPackets.totalSize + netprofile->inPackets.totalSize)),
|
||||
netprofile->inPackets.bytesPerSec,
|
||||
netprofile->outPackets.bytesPerSec,
|
||||
netprofile->outPackets.bytesPerSec + netprofile->inPackets.bytesPerSec
|
||||
netprofile->upstream.packetsPerSec,
|
||||
netprofile->downstream.packetsPerSec,
|
||||
netprofile->downstream.packetsPerSec + netprofile->upstream.packetsPerSec,
|
||||
netprofile->upstream.percentFragmented,
|
||||
netprofile->downstream.percentFragmented,
|
||||
(unsigned int)((float)(netprofile->downstream.numFragmented + netprofile->upstream.numFragmented) / totalPackets),
|
||||
netprofile->upstream.percentDropped,
|
||||
netprofile->downstream.percentDropped,
|
||||
(unsigned int)((float)(netprofile->downstream.numDropped + netprofile->upstream.numDropped) / totalPackets),
|
||||
netprofile->upstream.percentDropped,
|
||||
netprofile->downstream.percentDropped,
|
||||
(unsigned int)((float)(netprofile->downstream.totalBytesConnectionLess + netprofile->upstream.totalBytesConnectionLess) / (float)(netprofile->downstream.totalSize + netprofile->upstream.totalSize)),
|
||||
netprofile->upstream.bytesPerSec,
|
||||
netprofile->downstream.bytesPerSec,
|
||||
netprofile->downstream.bytesPerSec + netprofile->upstream.bytesPerSec
|
||||
);
|
||||
|
||||
FS_Write(buffer, strlen(buffer), file);
|
||||
|
||||
@@ -753,7 +753,7 @@ void SV_ConnectionlessPacket( netadr_t from, msg_t *msg ) {
|
||||
char *c;
|
||||
|
||||
if (sv_netprofile->integer) {
|
||||
NetProfileAddPacket(&svs.netprofile.inPackets, msg->cursize, NETPROF_PACKET_MESSAGE);
|
||||
NetProfileAddPacket(&svs.netprofile.upstream, msg->cursize, NETPROF_PACKET_MESSAGE);
|
||||
}
|
||||
|
||||
MSG_BeginReadingOOB( msg );
|
||||
|
||||
@@ -169,7 +169,7 @@ void SV_Netchan_TransmitNextInQueue(client_t *client)
|
||||
SV_Netchan_Encode(client, &netbuf->msg, netbuf->clientCommandString);
|
||||
#endif
|
||||
|
||||
Netchan_Transmit(&client->netchan, netbuf->msg.cursize, netbuf->msg.data, sv_netprofile->integer ? &client->netprofile.outPackets : NULL);
|
||||
Netchan_Transmit(&client->netchan, netbuf->msg.cursize, netbuf->msg.data, sv_netprofile->integer ? &client->netprofile.downstream : NULL);
|
||||
|
||||
// pop from queue
|
||||
client->netchan_start_queue = netbuf->next;
|
||||
@@ -197,7 +197,7 @@ int SV_Netchan_TransmitNextFragment(client_t *client)
|
||||
{
|
||||
if(client->netchan.unsentFragments)
|
||||
{
|
||||
Netchan_TransmitNextFragment(&client->netchan, sv_netprofile->integer ? &client->netprofile.outPackets : NULL);
|
||||
Netchan_TransmitNextFragment(&client->netchan, sv_netprofile->integer ? &client->netprofile.downstream : NULL);
|
||||
return SV_RateMsec(client);
|
||||
}
|
||||
else if(client->netchan_start_queue)
|
||||
@@ -250,7 +250,7 @@ void SV_Netchan_Transmit( client_t *client, msg_t *msg)
|
||||
if(client->compat)
|
||||
SV_Netchan_Encode(client, msg, client->lastClientCommandString);
|
||||
#endif
|
||||
Netchan_Transmit(&client->netchan, msg->cursize, msg->data, sv_netprofile->integer ? &client->netprofile.outPackets : NULL);
|
||||
Netchan_Transmit(&client->netchan, msg->cursize, msg->data, sv_netprofile->integer ? &client->netprofile.downstream : NULL);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -261,7 +261,7 @@ Netchan_SV_Process
|
||||
*/
|
||||
qboolean SV_Netchan_Process( client_t *client, msg_t *msg ) {
|
||||
int ret;
|
||||
ret = Netchan_Process( &client->netchan, msg, sv_netprofile->integer ? &client->netprofile.inPackets : NULL );
|
||||
ret = Netchan_Process( &client->netchan, msg, sv_netprofile->integer ? &client->netprofile.upstream : NULL );
|
||||
if (!ret)
|
||||
return qfalse;
|
||||
|
||||
@@ -289,7 +289,7 @@ void SV_NET_OutOfBandPrint(netprofclient_t* netprof, netadr_t adr, const char* f
|
||||
NET_OutOfBandPrint(NS_SERVER, adr, "%s", string);
|
||||
|
||||
if (sv_netprofile->integer && netprof) {
|
||||
NetProfileAddPacket(&netprof->outPackets, strlen(string), NETPROF_PACKET_MESSAGE);
|
||||
NetProfileAddPacket(&netprof->downstream, strlen(string), NETPROF_PACKET_MESSAGE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -313,8 +313,8 @@ void SV_NET_UpdateClientNetProfileInfo(netprofclient_t* netprofile, int rate) {
|
||||
// set the update time
|
||||
time = Com_Milliseconds();
|
||||
|
||||
netprofile->outPackets.updateTime = time;
|
||||
netprofile->inPackets.updateTime = time;
|
||||
netprofile->downstream.updateTime = time;
|
||||
netprofile->upstream.updateTime = time;
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -367,11 +367,11 @@ void SV_NET_CalcTotalNetProfile(netprofclient_t* netprofile, qboolean server) {
|
||||
memset(netprofile, 0, sizeof(*netprofile));
|
||||
|
||||
if (server) {
|
||||
NetProfileCalcStats(&svs.netprofile.outPackets, 0);
|
||||
NetProfileCalcStats(&svs.netprofile.inPackets, 0);
|
||||
NetProfileCalcStats(&svs.netprofile.downstream, 0);
|
||||
NetProfileCalcStats(&svs.netprofile.upstream, 0);
|
||||
} else {
|
||||
NetProfileCalcStats(&svs.netprofile.outPackets, 500);
|
||||
NetProfileCalcStats(&svs.netprofile.inPackets, 500);
|
||||
NetProfileCalcStats(&svs.netprofile.downstream, 500);
|
||||
NetProfileCalcStats(&svs.netprofile.upstream, 500);
|
||||
}
|
||||
|
||||
for (i = 0; i < svs.iNumClients; i++) {
|
||||
@@ -382,61 +382,61 @@ void SV_NET_CalcTotalNetProfile(netprofclient_t* netprofile, qboolean server) {
|
||||
}
|
||||
|
||||
if (server) {
|
||||
NetProfileCalcStats(&client->netprofile.outPackets, 0);
|
||||
NetProfileCalcStats(&client->netprofile.inPackets, 0);
|
||||
NetProfileCalcStats(&client->netprofile.downstream, 0);
|
||||
NetProfileCalcStats(&client->netprofile.upstream, 0);
|
||||
} else {
|
||||
NetProfileCalcStats(&client->netprofile.outPackets, 500);
|
||||
NetProfileCalcStats(&client->netprofile.inPackets, 500);
|
||||
NetProfileCalcStats(&client->netprofile.downstream, 500);
|
||||
NetProfileCalcStats(&client->netprofile.upstream, 500);
|
||||
}
|
||||
|
||||
numValidClients++;
|
||||
|
||||
netprofile->rate += client->netprofile.rate;
|
||||
netprofile->outPackets.totalSize += client->netprofile.outPackets.totalSize;
|
||||
netprofile->outPackets.bytesPerSec += client->netprofile.outPackets.bytesPerSec;
|
||||
netprofile->outPackets.numDropped += client->netprofile.outPackets.numDropped;
|
||||
netprofile->outPackets.percentDropped += client->netprofile.outPackets.percentDropped;
|
||||
netprofile->outPackets.percentFragmented += client->netprofile.outPackets.percentFragmented;
|
||||
netprofile->outPackets.numFragmented += client->netprofile.outPackets.numFragmented;
|
||||
netprofile->outPackets.totalLengthConnectionLess += client->netprofile.outPackets.totalLengthConnectionLess;
|
||||
netprofile->outPackets.percentConnectionLess += client->netprofile.outPackets.percentConnectionLess;
|
||||
netprofile->outPackets.totalProcessed += client->netprofile.outPackets.totalProcessed;
|
||||
netprofile->outPackets.packetsPerSec += client->netprofile.outPackets.packetsPerSec;
|
||||
netprofile->inPackets.totalSize += client->netprofile.inPackets.totalSize;
|
||||
netprofile->inPackets.bytesPerSec += client->netprofile.inPackets.bytesPerSec;
|
||||
netprofile->inPackets.numDropped += client->netprofile.inPackets.numDropped;
|
||||
netprofile->inPackets.percentDropped += client->netprofile.inPackets.percentDropped;
|
||||
netprofile->inPackets.percentFragmented += client->netprofile.inPackets.percentFragmented;
|
||||
netprofile->inPackets.numFragmented += client->netprofile.inPackets.numFragmented;
|
||||
netprofile->inPackets.totalLengthConnectionLess += client->netprofile.inPackets.totalLengthConnectionLess;
|
||||
netprofile->inPackets.percentConnectionLess += client->netprofile.inPackets.percentConnectionLess;
|
||||
netprofile->inPackets.totalProcessed += client->netprofile.inPackets.totalProcessed;
|
||||
netprofile->inPackets.packetsPerSec += client->netprofile.inPackets.packetsPerSec;
|
||||
netprofile->downstream.totalSize += client->netprofile.downstream.totalSize;
|
||||
netprofile->downstream.bytesPerSec += client->netprofile.downstream.bytesPerSec;
|
||||
netprofile->downstream.numDropped += client->netprofile.downstream.numDropped;
|
||||
netprofile->downstream.percentDropped += client->netprofile.downstream.percentDropped;
|
||||
netprofile->downstream.percentFragmented += client->netprofile.downstream.percentFragmented;
|
||||
netprofile->downstream.numFragmented += client->netprofile.downstream.numFragmented;
|
||||
netprofile->downstream.totalBytesConnectionLess += client->netprofile.downstream.totalBytesConnectionLess;
|
||||
netprofile->downstream.percentConnectionLess += client->netprofile.downstream.percentConnectionLess;
|
||||
netprofile->downstream.totalPackets += client->netprofile.downstream.totalPackets;
|
||||
netprofile->downstream.packetsPerSec += client->netprofile.downstream.packetsPerSec;
|
||||
netprofile->upstream.totalSize += client->netprofile.upstream.totalSize;
|
||||
netprofile->upstream.bytesPerSec += client->netprofile.upstream.bytesPerSec;
|
||||
netprofile->upstream.numDropped += client->netprofile.upstream.numDropped;
|
||||
netprofile->upstream.percentDropped += client->netprofile.upstream.percentDropped;
|
||||
netprofile->upstream.percentFragmented += client->netprofile.upstream.percentFragmented;
|
||||
netprofile->upstream.numFragmented += client->netprofile.upstream.numFragmented;
|
||||
netprofile->upstream.totalBytesConnectionLess += client->netprofile.upstream.totalBytesConnectionLess;
|
||||
netprofile->upstream.percentConnectionLess += client->netprofile.upstream.percentConnectionLess;
|
||||
netprofile->upstream.totalPackets += client->netprofile.upstream.totalPackets;
|
||||
netprofile->upstream.packetsPerSec += client->netprofile.upstream.packetsPerSec;
|
||||
}
|
||||
|
||||
if (numValidClients && netprofile->rate) {
|
||||
netprofile->rate /= numValidClients;
|
||||
}
|
||||
|
||||
netprofile->outPackets.totalSize += svs.netprofile.outPackets.totalSize;
|
||||
netprofile->outPackets.bytesPerSec += svs.netprofile.outPackets.bytesPerSec;
|
||||
netprofile->outPackets.numDropped += svs.netprofile.outPackets.numDropped;
|
||||
netprofile->outPackets.percentDropped += svs.netprofile.outPackets.percentDropped;
|
||||
netprofile->outPackets.percentFragmented += svs.netprofile.outPackets.percentFragmented;
|
||||
netprofile->outPackets.numFragmented += svs.netprofile.outPackets.numFragmented;
|
||||
netprofile->outPackets.totalLengthConnectionLess += svs.netprofile.outPackets.totalLengthConnectionLess;
|
||||
netprofile->outPackets.percentConnectionLess += svs.netprofile.outPackets.percentConnectionLess;
|
||||
netprofile->outPackets.totalProcessed += svs.netprofile.outPackets.totalProcessed;
|
||||
netprofile->outPackets.packetsPerSec += svs.netprofile.outPackets.packetsPerSec;
|
||||
netprofile->inPackets.totalSize += svs.netprofile.inPackets.totalSize;
|
||||
netprofile->inPackets.bytesPerSec += svs.netprofile.inPackets.bytesPerSec;
|
||||
netprofile->inPackets.numDropped += svs.netprofile.inPackets.numDropped;
|
||||
netprofile->inPackets.percentDropped += svs.netprofile.inPackets.percentDropped;
|
||||
netprofile->inPackets.percentFragmented += svs.netprofile.inPackets.percentFragmented;
|
||||
netprofile->inPackets.numFragmented += svs.netprofile.inPackets.numFragmented;
|
||||
netprofile->inPackets.totalLengthConnectionLess += svs.netprofile.inPackets.totalLengthConnectionLess;
|
||||
netprofile->inPackets.percentConnectionLess += svs.netprofile.inPackets.percentConnectionLess;
|
||||
netprofile->inPackets.totalProcessed += svs.netprofile.inPackets.totalProcessed;
|
||||
netprofile->inPackets.packetsPerSec += svs.netprofile.inPackets.packetsPerSec;
|
||||
netprofile->downstream.totalSize += svs.netprofile.downstream.totalSize;
|
||||
netprofile->downstream.bytesPerSec += svs.netprofile.downstream.bytesPerSec;
|
||||
netprofile->downstream.numDropped += svs.netprofile.downstream.numDropped;
|
||||
netprofile->downstream.percentDropped += svs.netprofile.downstream.percentDropped;
|
||||
netprofile->downstream.percentFragmented += svs.netprofile.downstream.percentFragmented;
|
||||
netprofile->downstream.numFragmented += svs.netprofile.downstream.numFragmented;
|
||||
netprofile->downstream.totalBytesConnectionLess += svs.netprofile.downstream.totalBytesConnectionLess;
|
||||
netprofile->downstream.percentConnectionLess += svs.netprofile.downstream.percentConnectionLess;
|
||||
netprofile->downstream.totalPackets += svs.netprofile.downstream.totalPackets;
|
||||
netprofile->downstream.packetsPerSec += svs.netprofile.downstream.packetsPerSec;
|
||||
netprofile->upstream.totalSize += svs.netprofile.upstream.totalSize;
|
||||
netprofile->upstream.bytesPerSec += svs.netprofile.upstream.bytesPerSec;
|
||||
netprofile->upstream.numDropped += svs.netprofile.upstream.numDropped;
|
||||
netprofile->upstream.percentDropped += svs.netprofile.upstream.percentDropped;
|
||||
netprofile->upstream.percentFragmented += svs.netprofile.upstream.percentFragmented;
|
||||
netprofile->upstream.numFragmented += svs.netprofile.upstream.numFragmented;
|
||||
netprofile->upstream.totalBytesConnectionLess += svs.netprofile.upstream.totalBytesConnectionLess;
|
||||
netprofile->upstream.percentConnectionLess += svs.netprofile.upstream.percentConnectionLess;
|
||||
netprofile->upstream.totalPackets += svs.netprofile.upstream.totalPackets;
|
||||
netprofile->upstream.packetsPerSec += svs.netprofile.upstream.packetsPerSec;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user