audk/MdeModulePkg
Fu Siyuan 977528bad7 MdeModulePkg: Fix bug in TCP which not sending out ACK in certain circumstance.
Consider the situation as shown in below chart. The last ACK message has
acknowledged the Tcb->RcvWl2, and all the segments until Tcb->RcvNxt have
been received by TCP driver. The Tcb->RcvNxt is not acknowledged due to the
delayed ACK. In this case an incoming segment (Seg->Seq, Seg->End) should
not be accepted by TCP driver, and an immediate ACK is required.

Current TcpSeqAcceptable() thought it’s an acceptable segment incorrectly, it
continues the TcpInput() process instead of sending out an ACK and droping the
segment immediately.

Tcb->RcvWl2                       Tcb->RcvNxt        Tcb->RcvWl2 + Tcb->RcvWnd
        Seg->Seq       Seg->End         |                          |
    |     |               |             |                          |
 ---+-----+---------------+-------------+--------------------------+-----------
           <income segment>             <----Acceptable Range--- -->

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-By: Eugene Cohen <eugene@hp.com>
Reviewed-By: Wu Jiaxin <jiaxin.wu@intel.com>
Reviewed-By: Ye Ting <ting.ye@intel.com>
2016-07-18 10:08:43 +08:00
..
Application MdeModulePkg: Fix typos in comments and variables 2016-07-11 10:29:48 +08:00
Bus MdeModulePkg/PciBusDxe: recognize hotplug-capable PCIe ports 2016-07-13 08:39:29 +02:00
Core MdeModulePkg MemoryProfile: ASSERT to ensure 'DriverInfoData' is not NULL 2016-07-12 08:53:18 +08:00
Include MdeModulePkg: Fix typos in comments and variables 2016-07-11 10:29:48 +08:00
Library MdeModulePkg: Fix typos in comments and variables 2016-07-11 10:29:48 +08:00
Logo MdeModulePkg: Convert all .uni files to utf-8 2015-12-15 04:56:23 +00:00
Universal MdeModulePkg: Fix bug in TCP which not sending out ACK in certain circumstance. 2016-07-18 10:08:43 +08:00
Contributions.txt */Contributions.txt: Update example email address 2015-02-03 17:29:14 +00:00
License.txt Update copyright format 2012-04-24 06:49:39 +00:00
MdeModulePkg.dec MdeModulePkg: Introduce new library class MemoryProfileLib 2016-07-01 09:39:57 +08:00
MdeModulePkg.dsc MdeModulePkg PiSmmCoreMemoryAllocLib: Extend to support MemoryProfileLib 2016-07-01 09:39:59 +08:00
MdeModulePkg.uni MdeModulePkg: Extend memory profile definitions for memory leak detection 2016-07-01 09:39:50 +08:00
MdeModulePkgExtra.uni MdeModulePkg: Convert all .uni files to utf-8 2015-12-15 04:56:23 +00:00