Bugzilla – Full Text Bug Listing |
Summary: | TCP unbound memory problem (pending data) | ||
---|---|---|---|
Product: | ns-3 | Reporter: | Gustavo J. A. M. Carneiro <gjcarneiro> |
Component: | internet | Assignee: | Josh Pelkey <jpelkey> |
Status: | RESOLVED FIXED | ||
Severity: | major | CC: | jpelkey, mathieu.lacage, ns-bugs, tomh |
Priority: | P5 | ||
Version: | ns-3-dev | ||
Hardware: | All | ||
OS: | All | ||
Attachments: |
patch
cleaned up and simplified patch move logic to PendingData classs |
Description
Gustavo J. A. M. Carneiro
2010-03-03 06:11:56 EST
Created attachment 775 [details]
patch
I made this patch. It had limited testing yet, but seems to work. I'll keep testing, but in the mean time the TCP maintainer may comment.
Aside from the commented code, patch seems good. One small question: Shouldn't the timer be cancelled in the added "else delete just a portion" section? (In reply to comment #2) > Aside from the commented code, patch seems good. One small question: Shouldn't > the timer be cancelled in the added "else delete just a portion" section? I'm not 100% sure, still not very familiar with the TCP code in spite of the patch. However it seems to me that the retransmit timer is there to ensure we keep trying to transmit more data at a later time. In that branch, some data is left in the pending data structure, which means we need to keep the timer to attempt to transmit it later. Created attachment 777 [details]
cleaned up and simplified patch
Created attachment 802 [details]
move logic to PendingData classs
This patch is a bit more encapsulated, since the data member in PendingData should probably not be public. Otherwise, it is similar to the previous patch.
I suggest that Josh decide which patch to commit and push one of them.
(In reply to comment #5) > Created an attachment (id=802) [details] > move logic to PendingData classs > > This patch is a bit more encapsulated, since the data member in PendingData > should probably not be public. Otherwise, it is similar to the previous patch. > > I suggest that Josh decide which patch to commit and push one of them. changeset cdabef59da08 Thanks all :) |