lwIP - A Lightweight TCP/IP stack - Patches: patch #6537, wnd_scale TCP option addition
You are not allowed to post comments on this tracker with your current authentication level.
patch #6537: wnd_scale TCP option addition
Submitter: | Rishi Khan <rishi> | ||
Submitted: | Mon 09 Jun 2008 06:34:33 PM UTC | ||
Category: | TCP | Priority: | 5 - Normal |
Status: | Done | Privacy: | Public |
Assigned to: | goldsimon | Open/Closed: | Closed |
Planned Release: | None |
Jump to the original submission
Thu 20 Feb 2014 02:44:49 PM UTC, comment #14: |
Simon Goldschmidt <goldsimon> |
Fri 07 Feb 2014 10:19:00 AM UTC, comment #13: Good point. The call to the application's sent callback has to handle this as well, though.
|
Simon Goldschmidt <goldsimon> |
Fri 07 Feb 2014 10:10:28 AM UTC, comment #12: Hi all:
|
christian <xtian> |
Fri 07 Feb 2014 08:54:12 AM UTC, comment #11: Window scaling is now supported (taken from patch #7858), but the OOS code still needs to be adapted. |
Simon Goldschmidt <goldsimon> |
Fri 05 Oct 2012 10:49:31 AM UTC, comment #10: Hi all:
|
christian <xtian> |
Mon 20 Apr 2009 09:34:25 AM UTC, comment #9: The blocker of this patch will be that it converts the tot_len field of struct pbuf from u16_t to u32_t. The silent agreement under lwIP developers (at least in the past 2 years) has been to not modify struct pbuf as it is really neatly aligned on most platforms with the current size. Adding 16 bits will break alignment on most platforms, essentially doubling its size after aligning: for low-memory targets this is often not an option. |
Simon Goldschmidt <goldsimon> |
Mon 20 Apr 2009 09:32:41 AM UTC, comment #8: In the previous comment you mentioned splitting it into multiple pbufs, but the patch stores the extra data in a new field. Is there a reason why multiple pbufs wouldn't work? |
Kieran Mansley <kieranm> |
Mon 20 Apr 2009 09:31:23 AM UTC, comment #7: I added a patch that deals with the overflow in the pbuf tot_len counter that I described in my previous comment. |
Wim Dumon <wdumon> |
Wed 08 Apr 2009 09:39:39 AM UTC, comment #6: I encountered an issue with this patch. I observed data loss and performance degradation when receiving data over TCP connections with large window sizes (e.g. TCP_WND=120KBytes). My shift is set at 7 (but it could be anything else).
|
Wim Dumon <wdumon> |
Fri 03 Apr 2009 11:14:03 AM UTC, comment #5: Note that I've done some work recently to improve the handling of tcp options and window updates, so this code probably won't apply cleanly anymore.
|
Kieran Mansley <kieranm> |
Mon 23 Jun 2008 09:50:31 PM UTC, comment #4: @Simon: I had been thinking the same thing as I think Bill was - we could keep the u16_t and apply the scaling factor when used, rather than storing the u32_t with the scaling factor already applied. (And hence my question 1). But yeah, that might be too much hassle overall.
|
Jonathan Larmour <jifl> |
Fri 20 Jun 2008 07:52:11 PM UTC, comment #3: Bill wrote:
|
Simon Goldschmidt <goldsimon> |
Fri 20 Jun 2008 03:26:50 PM UTC, comment #2: Answers to questions:
|
Rishi Khan <rishi> |
Fri 20 Jun 2008 02:46:33 PM UTC, comment #1: I think this patch looks good, although would suggest a few tweaks, and I have 2 questions.
|
Jonathan Larmour <jifl> |
Mon 09 Jun 2008 06:34:33 PM UTC, original submission:
I needed TCP window scaling for my app. I added it and here is the patch. I have tested it and it works properly. It is activated when the parameter TCP_RCVSCALE is set in lwipopts.h. I don't know how well it will patch against the CVS because I diff'd it off of my latest version and not off of 1.3.0. Please look at it and see if you like it. If it doesn't patch well to the CVS and you think it's a good addition, I'll re-diff it. |
Rishi Khan <rishi> |
Depends on the following items: None found
Items that depend on this one: None found
There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.
Follow 10 latest changes.
Date | Changed by | Updated Field | Previous Value | => | Replaced by |
---|---|---|---|---|---|
2014-02-20 | goldsimon | Status | In Progress | Done | |
Open/Closed | Open | Closed | |||
2014-02-07 | goldsimon | Status | Need Info | In Progress | |
Assigned to | jifl | goldsimon | |||
2013-01-15 | goldsimon | Category | None | TCP | |
2009-04-20 | wdumon | Attached File | - | Added large-pbuf.patch, #17971 | |
2008-06-20 | jifl | Status | None | Need Info | |
Assigned to | None | jifl | |||
2008-06-09 | rishi | Attached File | - | Added wnd_scale.patch, #15825 | |
Carbon-Copy | - | Added rishi |
Powered by Savane 3.13-f8d8.
Corresponding source code
Closing as done, please reopen if you think differently