From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by ml01.01.org (Postfix) with ESMTP id 831091A1DED for ; Wed, 10 Aug 2016 20:03:32 -0700 (PDT) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga101.jf.intel.com with ESMTP; 10 Aug 2016 20:03:32 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.28,503,1464678000"; d="scan'208";a="1023431035" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by fmsmga001.fm.intel.com with ESMTP; 10 Aug 2016 20:03:32 -0700 Received: from fmsmsx158.amr.corp.intel.com (10.18.116.75) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.248.2; Wed, 10 Aug 2016 20:03:31 -0700 Received: from shsmsx152.ccr.corp.intel.com (10.239.6.52) by fmsmsx158.amr.corp.intel.com (10.18.116.75) with Microsoft SMTP Server (TLS) id 14.3.248.2; Wed, 10 Aug 2016 20:03:31 -0700 Received: from shsmsx103.ccr.corp.intel.com ([169.254.4.181]) by SHSMSX152.ccr.corp.intel.com ([169.254.6.107]) with mapi id 14.03.0248.002; Thu, 11 Aug 2016 11:03:29 +0800 From: "Ye, Ting" To: "Cohen, Eugene" , "edk2-devel@lists.01.org" , "Wu, Jiaxin" Thread-Topic: DHCP Automatic Configure at Driver Connect Thread-Index: AdHzMrTK7bp7ndKxTJOq/Qc4XXghzQARlkIg Date: Thu, 11 Aug 2016 03:03:29 +0000 Message-ID: References: In-Reply-To: Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: DHCP Automatic Configure at Driver Connect X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Aug 2016 03:03:32 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi Eugene, Actually this is exactly the problem Samer raised to the mailing list in Au= g 2015. We ever fixed it with following patch: SHA-1: 3d0a49ad47619c30c84bbee8a33f54b64dddbcec * MdeModulePkg: Fix issue about current Ip4Dxe implementation for DHCP DORA= process DHCP policy is applied as default at boot time on all NICs in the system, w= hich results in all NIC ports attempting DHCP and trying to acquire IP addresses during = boot. Ip4 driver should only set dhcp as default policy, and not trigger DORA at = driver binding start(). We should start DORA until one IP child is configured to use defau= lt address. Later HP raised the same performance impact in IPv6 stack. We realized we c= ouldn't use the same logic to defer DHCP6 SARR process. Instead, we discussed the issue in spec group and we removed the restrictio= n from UEFI specification that the default policy should be Ip4Config2Polic= yDhcp or Ip6ConfigPolicyAutomatic. It's up to implementation's choice. The EDKII implementation was later updated that the default policy was chan= ged to Ip4Config2PolicyStatic and IP6ConfigPolicyManual. Also the previous = change was reverted, in order to keep IP4/IP6 solution consistent. See patc= h (also reviewed by Samer): SHA-1: 7648748e99eeeadec38fda7568adb260c4acc861 * MdeModulePkg: Change the default IPv4 config policy Git version '3d0a49ad' commit provided a scenario to resolve the performance issue for IPv4, but it's not workable for IPv6. To avoid IPv4 and IPv6 inconsistency, we decided to revert that version fix. If so, the default policy for Ip4Config2 is Ip4Config2PolicyDhcp, which results in all NIC ports attempting DHCP. So, this patch is used to changes the the default IPv4 config policy to Ip4Config2PolicyStatic and also defer the SetData operation after Ip4Config2Protocol installed. This update let the other platform drivers have chance to change the default config data by consume Ip4Config2Protocol. Current implementation recommends that the system should stay in default po= licy - static to not initialize DHCP process, unless the system needs to st= art DHCP -- it should change the policy to IP4Config2PolicyDhcp. Best Regards, Ye Ting -----Original Message----- From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Cohe= n, Eugene Sent: Thursday, August 11, 2016 2:17 AM To: edk2-devel@lists.01.org; Wu, Jiaxin Subject: [edk2] DHCP Automatic Configure at Driver Connect With this commit: Revision: 1f6729ffe98095107ce82e67a4a0209674601a90 Author: jiaxinwu Date: 7/7/2015 2:19:55 AM Message: MdeModulePkg: Update Ip4Dxe driver to support Ip4Config2 protocol, a new behavior seemed to come in to the network stack that was not present = before: It appears now that as soon as the DHCP Service Binding protocol is= installed the DHCP process will be initiated (see Ip4Config2OnDhcp4SbInsta= lled). This differs from past behavior where DHCP would only occur if a dr= iver or application specifically did Configure() on the network interface. For some systems this is problematic because they need to defer DHCP until = it is certain that the network interface will be used for something. Can you provide the reason for this change? Can we have a policy (PCD) to = disable this mode of operation? Thanks, Eugene _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel