public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* reg: Polling Interval in MNP
@ 2019-09-10 10:34 Ramesh R.
  2019-09-10 12:50 ` Rabeda, Maciej
  0 siblings, 1 reply; 3+ messages in thread
From: Ramesh R. @ 2019-09-10 10:34 UTC (permalink / raw)
  To: 'devel@edk2.groups.io'
  Cc: 'jiaxin.wu@intel.com', 'siyuan.fu@intel.com'

Hi all:

In the Network Package, MNPDxe Driver has the timeout check in MnpCheckPacketTimeout() for the interval of 10 ms. This interval is OK when we have the On board / Add on network controllers. 

In the cases of Network devices exposed via Inband (Virtual USB exposing network interfaces) when there is a packet read given to USB interfaces and it processed in lower level which could not provide the data within the 10 ms interval and it failed with timeout and communication failed when we perform the HTTP request.

Do we have any specific reason to have this as 10 ms? Do we have any max limit for this interval value?

Thanks,
Ramesh

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Polling Interval in MNP
  2019-09-10 10:34 reg: Polling Interval in MNP Ramesh R.
@ 2019-09-10 12:50 ` Rabeda, Maciej
  0 siblings, 0 replies; 3+ messages in thread
From: Rabeda, Maciej @ 2019-09-10 12:50 UTC (permalink / raw)
  To: devel@edk2.groups.io, rameshr@ami.com; +Cc: Wu, Jiaxin, Fu, Siyuan

Hi Ramesh,

I cannot see the 10ms comparison you have mentioned in MnpCheckPacketTimeout().
Quick code analysis suggests that received packets enqueued in the specific MNP instance queue have timeout value assigned to them.
See MnpQueueRcvdPacket() line:

RxDataWrap->TimeoutTick = Instance->ConfigData.ReceivedQueueTimeoutValue;

I believe that you can prevent packet timeout timer event from dropping those packets by setting ReceivedQueueTimeoutValue to 0 upon calling MnpInstance->Configure() function.

Thanks!
Maciej Rabeda

-----Original Message-----
From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of Ramesh R.
Sent: Tuesday, September 10, 2019 12:34
To: 'devel@edk2.groups.io' <devel@edk2.groups.io>
Cc: Wu, Jiaxin <jiaxin.wu@intel.com>; Fu, Siyuan <siyuan.fu@intel.com>
Subject: [edk2-devel] reg: Polling Interval in MNP

Hi all:

In the Network Package, MNPDxe Driver has the timeout check in MnpCheckPacketTimeout() for the interval of 10 ms. This interval is OK when we have the On board / Add on network controllers. 

In the cases of Network devices exposed via Inband (Virtual USB exposing network interfaces) when there is a packet read given to USB interfaces and it processed in lower level which could not provide the data within the 10 ms interval and it failed with timeout and communication failed when we perform the HTTP request.

Do we have any specific reason to have this as 10 ms? Do we have any max limit for this interval value?

Thanks,
Ramesh



--------------------------------------------------------------------

Intel Technology Poland sp. z o.o.
ul. Slowackiego 173 | 80-298 Gdansk | Sad Rejonowy Gdansk Polnoc | VII Wydzial Gospodarczy Krajowego Rejestru Sadowego - KRS 101882 | NIP 957-07-52-316 | Kapital zakladowy 200.000 PLN.

Ta wiadomosc wraz z zalacznikami jest przeznaczona dla okreslonego adresata i moze zawierac informacje poufne. W razie przypadkowego otrzymania tej wiadomosci, prosimy o powiadomienie nadawcy oraz trwale jej usuniecie; jakiekolwiek
przegladanie lub rozpowszechnianie jest zabronione.
This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). If you are not the intended recipient, please contact the sender and delete all copies; any review or distribution by
others is strictly prohibited.


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Polling Interval in MNP
       [not found] <B4DE137BDB63634BAC03BD9DE765F197028B28FD17@VENUS1.in.megatrends.com>
@ 2019-09-14  2:54 ` Siyuan, Fu
  0 siblings, 0 replies; 3+ messages in thread
From: Siyuan, Fu @ 2019-09-14  2:54 UTC (permalink / raw)
  To: Sivaraman Nainar, devel@edk2.groups.io; +Cc: Wu, Jiaxin

[-- Attachment #1: Type: text/plain, Size: 1297 bytes --]

Hi, Siva

The 10ms interval was chosen just by experience. This background polling intends to pick up the coming request (e.g. ARP request) when there is no active polling from upper layer. The ARP time out is 1 second, so using 10ms background polling make the network stack able to receive ARP request among 100 incoming package/second.

You can change this to a reasonable time for the inband network.

Best Regards
Siyuan

From: Sivaraman Nainar <sivaramann@amiindia.co.in>
Sent: 2019年9月10日 17:17
To: devel@edk2.groups.io
Cc: Wu, Jiaxin <jiaxin.wu@intel.com>; Fu, Siyuan <siyuan.fu@intel.com>
Subject: reg: Polling Interval in MNP

Hi all:

In the Network Package, MNPDxe Driver has the timeout check in MnpCheckPacketTimeout() for the interval of 10 ms. This interval is OK when we have the On board / Add on network controllers.

In the cases of Network devices exposed via Inband (Virtual USB exposing network interfaces) when there is a packet read given to USB interfaces and it processed in lower level which could not provide the data within the 10 ms interval and it failed with timeout and communication failed when we perform the HTTP request.

Do we have any specific reason to have this as 10 ms? Do we have any max limit for this interval value?

-Siva

[-- Attachment #2: Type: text/html, Size: 4950 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-09-14  2:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-09-10 10:34 reg: Polling Interval in MNP Ramesh R.
2019-09-10 12:50 ` Rabeda, Maciej
     [not found] <B4DE137BDB63634BAC03BD9DE765F197028B28FD17@VENUS1.in.megatrends.com>
2019-09-14  2:54 ` Siyuan, Fu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox