Clients using the LANMAN 1.0
and newer dialects will typically be multitasked and allow multiple asynchronous input/output requests per task. Therefore a multiplex ID (mid) is used along with pid to allow multiplexing the single client and server connection among the client's multiple processes, threads, and requests per thread.
Regardless of negotiated dialect, the server is responsible for ensuring that every response contains the same mid and pid values as its request. The client may then use the mid and pid values for associating requests and responses and may have up to the negotiated number of requests outstanding at any time to a particular server.