The network stack sees each virtual adapter as a different wireless card interface. Ideally, each of these virtual adapters should have a distinct MAC address. Although it is possible to do this over an IEEE 802.3 (Ethernet) interface, commercially available IEEE 802.11 cards do not forward packets from another MAC address. Therefore, each virtual adapter is given the MAC address of the underlying wireless card.
The MPD manages the state of the virtual adapters. It switches the association of the underlying card across different networks, and buffers packets if the SSID of the associated network is different from the SSID of the sending virtual adapter. MPD also buffers packets on the instruction of the MultiNet Service (described later). The MPD also handles packets received by the wireless adapter. A wireless card can send and receive packets only on the currently associated network. A packet received on the wireless adapter is sent to the virtual adapter that is active at that instant. The information about the currently active virtual adapter is maintained by the MPD.
The MMD maintains the state for each virtual adapter. This includes the SSID and operational mode of the wireless network. It is also responsible for handling query and set operations meant for the underlying wireless adapter.