Thoughts on Whether to Use Windows Server 2008 MCS or MPIO for iSCSI

The answer to a question that rarely seems to come up 'Should I Use Windows Server 2008 MCS (Multiple Connected Session) or MPIO for the iSCSI Storage Connection?', depends a lot on if there is a supported DSM (Device Specific Module) for the iSCSI storage vendor in the particular scenario (the Microsoft DSM might come with manufacturer support.) The following post aims to illustrate the differences between MCS and MPIO with configuration examples using either 4-way MCS, or 4-way MPIO, from a Windows 2008 Server with 4 x 1 Gbps dedicated iSCSI interfaces.

MCS is a Many to One Mapping

In the following example, the MCS has been configured (via iSCSI Initiator Properties > Targets tab > Properties > Sessions tab > MCS) with 4 different source portals and only one target portal (it is not possible to select more than one target portal.) This could be used where there is no supported DSM, and the Windows 2008 source uses its 4 x 1 Gbps iSCSI NICs as source portal interfaces, and the Storage target portal is either a virtual interface of port aggregated 1 Gbps NICs (e.g. a Multi-mode VIF on a NetApp FAS2040 utilizing 4 x 1 Gbps ethernet interfaces), or a 10 Gbps interface.

Fig. 1: Multiple Connected Session from 4 source portals to 1 target portal.

Fig. 2: Windows 2008 Server with 4 iSCSI interfaces, connecting via MCS to 1 interface on the Storage.

Note: Needs to be verified with the storage provider regards whether MCS is supported.

MPIO can be a Many to One or Many to Many Mapping

With a supported DSM. From the example lab Windows 2008 Server, the configuration could either use one target portal, and create multiple paths to that target from the dedicated iSCSI NICs (again, the target portal would either be a virtual interface of port aggregated 1 Gbps NICs or a 10 Gbps interface.)

Fig. 3: iSCSI Initiator configured with 1 target portal.

Or could use 4 target portals and establish separate paths from each source portal (e.g. a NetApp FAS2040 with 4 x 1 Gbps ethernet interfaces, each interface configured with a separate IP address.)

Fig. 4: iSCSI Initiator configured with 4 target portals.

Fig. 5: Windows 2008 Server with 4 interfaces, connecting to 4 interfaces on the Storage.

Note: The Multipath I/O feature must first be installed –

Fig. 6: Windows 2008 Server features – Multipath I/O.

– and then the DSM can be installed, and MPIO Multi-Paths can be discovered via MPIOCPL.exe from Administrative Tools.

Fig. 7: MPIOCPL.exe icon in Administrative Tools.

Fig. 8: MPIO Properties > DSM Install.


Admittedly, I have not had much reason to use MCS in practice (would greatly appreciate to hear comments from people that use it,) and with MPIO being more widely supported, this seems to be the way to go if can obtain a supported DSM. Knowing about the option is handy – another weapon to keep in the arsenal of solutions. There is an excellent Microsoft and NetApp White Paper available on the internet entitled “iSCSI 10 Gigabit Ethernet Performance Tuning With Windows Server 2008, Hyper-v and the NetApp FAS 3070” which identifies throughput advantages of MCS over MPIO, at least up to four connections.