Usually caused by a client application not processing results from the SQL Server quickly enough, or the client application processing data row by row instead of using SQL Server to handle the complex filtering and joins.
Possibly a network issue, but most likely the client application is the cause of the wait. The ASYNC_NETWORK_IO wait type is saying from the perspective of SQL Server that some data has been sent to the client application, and that SQL Server is waiting on the client before it can send more data. This can happen with queries that have a huge result set, are being sent over a slow network connection, or are being processed by a client application that can’t keep up with the results as fast as SQL Server is sending them.
An example of an application that causes excessive ASYNC_NETWORK_IO waits is Microsoft Access. This is often times caused by Microsoft Access pulling down more data from the SQL Server than it should, for instance big lists of data, rather than just paging for what is needed.
- Reboot the client (even if it’s web server)
- Check the amount of available memory for the client application
- Ensure NICs are set correctly (firmware, full duplex etc)