Asynchronous Input/Output
Forefront TMG uses asynchronous input/output (I/O) to manage multiple I/O requests simultaneously. This results in more efficient use of resources because the Microsoft Firewall service can continue I/O while waiting for particular data.
Asynchronous I/O operation follows these steps:
- The data buffer object is created by the Firewall service.
- Data is received asynchronously.
- The data transfer is completed.
- The Firewall service receives the completion notification through the completion port, and passes it to the completion object.
- The completion method information is received by a Completion Notification object.
For this process to take place, the application filter follows these steps:
Calls an asynchronous method to issue an overlapped request.
Waits for the request to be handled asynchronously and completed.
Receives notification through a completion notification interface.
Note This process differs for Windows overlapped operations. For more information, see IFWXExternalIOCompletion.
The following objects are directly related to the Forefront TMG implementation of asynchronous I/O:
- Buffer objects that implement the IFWXIOBuffer interface.
- Overlapped objects that implement the IFWXOverlapped interface.
- Completion notification objects that implement the IFWXAcceptCompletion, IFWXIOCompletion, or IFWXExternalIOCompletion interface.
Build date: 7/12/2010