mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-21 18:31:30 +00:00
Fix for bug where packets were not combining when sent inside cwnd, altered some settings
This commit is contained in:
parent
3878bd0c76
commit
7300776a85
@ -478,7 +478,7 @@ void EQ::Net::DaybreakConnection::ProcessOutboundQueue()
|
|||||||
|
|
||||||
stream->outstanding_bytes += buff.sent.packet.Length();
|
stream->outstanding_bytes += buff.sent.packet.Length();
|
||||||
stream->outstanding_packets.insert(std::make_pair(buff.seq, buff.sent));
|
stream->outstanding_packets.insert(std::make_pair(buff.seq, buff.sent));
|
||||||
InternalSend(buff.sent.packet);
|
InternalBufferedSend(buff.sent.packet);
|
||||||
stream->buffered_packets.pop_front();
|
stream->buffered_packets.pop_front();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1133,7 +1133,7 @@ void EQ::Net::DaybreakConnection::BufferPacket(int stream, uint16_t seq, Daybrea
|
|||||||
|
|
||||||
s->outstanding_bytes += sent.packet.Length();
|
s->outstanding_bytes += sent.packet.Length();
|
||||||
s->outstanding_packets.insert(std::make_pair(seq, sent));
|
s->outstanding_packets.insert(std::make_pair(seq, sent));
|
||||||
InternalSend(sent.packet);
|
InternalBufferedSend(sent.packet);
|
||||||
}
|
}
|
||||||
|
|
||||||
void EQ::Net::DaybreakConnection::SendAck(int stream_id, uint16_t seq)
|
void EQ::Net::DaybreakConnection::SendAck(int stream_id, uint16_t seq)
|
||||||
@ -1187,6 +1187,10 @@ void EQ::Net::DaybreakConnection::InternalBufferedSend(Packet &p)
|
|||||||
FlushBuffer();
|
FlushBuffer();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (m_buffered_packets.size() == 0) {
|
||||||
|
m_hold_time = Clock::now();
|
||||||
|
}
|
||||||
|
|
||||||
DynamicPacket copy;
|
DynamicPacket copy;
|
||||||
copy.PutPacket(0, p);
|
copy.PutPacket(0, p);
|
||||||
m_buffered_packets.push_back(copy);
|
m_buffered_packets.push_back(copy);
|
||||||
|
|||||||
@ -219,8 +219,8 @@ namespace EQ
|
|||||||
keepalive_delay_ms = 9000;
|
keepalive_delay_ms = 9000;
|
||||||
resend_delay_ms = 150;
|
resend_delay_ms = 150;
|
||||||
resend_delay_factor = 1.5;
|
resend_delay_factor = 1.5;
|
||||||
resend_delay_min = 150;
|
resend_delay_min = 300;
|
||||||
resend_delay_max = 1000;
|
resend_delay_max = 3000;
|
||||||
connect_delay_ms = 500;
|
connect_delay_ms = 500;
|
||||||
stale_connection_ms = 90000;
|
stale_connection_ms = 90000;
|
||||||
connect_stale_ms = 5000;
|
connect_stale_ms = 5000;
|
||||||
@ -230,14 +230,14 @@ namespace EQ
|
|||||||
encode_passes[1] = DaybreakEncodeType::EncodeNone;
|
encode_passes[1] = DaybreakEncodeType::EncodeNone;
|
||||||
port = 0;
|
port = 0;
|
||||||
hold_size = 448;
|
hold_size = 448;
|
||||||
hold_length_ms = 10;
|
hold_length_ms = 50;
|
||||||
simulated_in_packet_loss = 0;
|
simulated_in_packet_loss = 0;
|
||||||
simulated_out_packet_loss = 0;
|
simulated_out_packet_loss = 0;
|
||||||
tic_rate_hertz = 60.0;
|
tic_rate_hertz = 60.0;
|
||||||
resend_timeout = 90000;
|
resend_timeout = 90000;
|
||||||
connection_close_time = 2000;
|
connection_close_time = 2000;
|
||||||
max_outstanding_packets = 300;
|
max_outstanding_packets = 400;
|
||||||
max_outstanding_bytes = 200 * 512;
|
max_outstanding_bytes = 400 * 512;
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t max_packet_size;
|
size_t max_packet_size;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user