audk/NetworkPkg
Fu Siyuan 09c25d1f6c NetworkPkg: 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:35 +08:00
..
Application NetworkPkg: Replace UnicodeStrToAsciiStr/AsciiStrToUnicodeStr 2016-06-21 12:46:24 +08:00
Dhcp6Dxe NetworkPkg: Fix typos in comments 2016-07-11 10:29:50 +08:00
DnsDxe NetworkPkg: Fix typos in comments 2016-07-11 10:29:50 +08:00
HttpBootDxe NetworkPkg: Stop the HTTP Boot service after the boot image download complete. 2016-06-30 09:36:56 +08:00
HttpDxe NetworkPkg: Fix typos in comments 2016-07-11 10:29:50 +08:00
HttpUtilitiesDxe NetworkPkg:HttpDxe:Consume DxeHttpLib API changes 2016-04-27 10:43:18 +08:00
IScsiDxe NetworkPkg: Fix Assert issue in iSCSI driver. 2016-07-11 10:46:49 +08:00
Include/Guid NetworkPkg: Add URI configuration form to HTTP boot driver. 2016-03-07 09:12:14 +08:00
Ip6Dxe NetworkPkg: Fix typos in comments 2016-07-11 10:29:50 +08:00
IpSecDxe NetworkPkg: fix ASSERT_EFI_ERROR() typos 2016-06-30 13:08:03 +02:00
Mtftp6Dxe NetworkPkg:Fix Network memory leak when calling GetModeData interface 2016-01-28 02:32:43 +00:00
TcpDxe NetworkPkg: Fix bug in TCP which not sending out ACK in certain circumstance. 2016-07-18 10:08:35 +08:00
Udp6Dxe NetworkPkg: Fix typos in comments 2016-07-11 10:29:50 +08:00
UefiPxeBcDxe NetworkPkg: Update PXE driver to follow edk2 coding standards. 2016-07-12 08:50:36 +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
NetworkPkg.dec NetworkPkg: Add URI configuration form to HTTP boot driver. 2016-03-07 09:12:14 +08:00
NetworkPkg.dsc NetworkPkg: Use UefiBootManagerLib API to create load option. 2016-05-05 08:45:35 +08:00
NetworkPkg.uni NetworkPkg: Update NetworkPkg.uni to UTF-8 file format 2015-12-23 07:55:27 +00:00
NetworkPkgExtra.uni NetworkPkg: Convert all .uni files to utf-8 2015-12-15 04:56:57 +00:00