Microsoft Message Queue (MSMQ) Server

Definition of Microsoft Message Queue (MSMQ) Server in The Network Encyclopedia.

What is Microsoft Message Queue (MSMQ) Server?

A Microsoft product included with the Microsoft Windows NT Option Pack and Windows NT Server, Enterprise Edition, that provides store-and-forward messaging services for Microsoft Transaction Server (MTS).

Microsoft Message Queue (MSMQ) Server acts as a resource manager for MTS by allowing the components of distributed Web applications to asynchronously communicate with each other.

MSMQ supports such features as:

  • Connectionless messaging:
    The sessionless store-and-forward message queuing methodology means that components of distributed applications do not have to establish sessions or even use the same networking protocol in order to share information.

     

  • Guaranteed delivery:
    Messages are logged to a disk-based queue to provide guaranteed delivery.

     

  • Network traffic prioritization:
    High-priority messaging traffic preempts low priority traffic, which guarantees proper response times for critical applications.

     

  • Support for transactions:
    You can bind multiple MSMQ-related actions into a single transaction, make sure that messages are delivered in order and no more than once, and confirm that messages reached their destination or were retrieved successfully from the destination message queue.

     

  • Routing:
    MSMQ’s smart routing is based on the network’s physical topology, session concentration, and transport connectivity.

     

  • Security:
    MSMQ supports access control through Windows NT security and digital signatures and supports auditing through the Windows NT application log. Encryption and authentication are supported using public key encryption and digital certificates.

     

  • Heterogeneous system support:
    MSMQ applications can be implemented over disparate hardware platforms.

     

How It Works

MSMQ is a store-and-forward service that lets applications running at different times communicate across heterogeneous networks, even when the systems are temporarily offline. Applications send messages to MSMQ, which queues messages to ensure that they eventually reach their intended destinations. MSMQ guarantees message delivery and provides fast and efficient routing, integrated security, and priority-based messaging.

Computers running MSMQ operate within an MSMQ Enterprise, which is divided into MSMQ sites that are connected with site links. MSMQ applications communicate using messages, which are simply units of information or data that are sent between computers and can contain text or binary data. Acknowledgments can be used to confirm whether messages reached or were retrieved from their destination queues. The MSMQ queues, which store and forward messages, include administration, system, dead letter, transactional dead letter, and report queues.

MSMQ uses four types of servers to control message queuing, each of which must be installed on computers running Windows NT Server, Enterprise Edition:

  • primary enterprise controller (PEC)
  • primary site controller (PSC)
  • backup site controller (BSC)
  • MSMQ Routing Server

MSMQ supports dependent clients, independent clients, and servers. Independent clients and servers run the MSMQ service and can communicate asynchronously with each other, while dependent clients use synchronous communication. Some MSMQ servers have a copy of the MSMQ Information Store (MQIS) database, which is a distributed database that stores information about the MSMQ enterprise, computers, and queues.

NOTE

On the Windows 2000 platform, this component is known as Message Queuing, and is sometimes referred to as MSMQ 2.0. Message Queuing is compatible with MSMQ 1.0 for Windows NT, and some of the changes with the new version include the following:

  • MSMQ sites are now integrated into Windows 2000 sites.
  • MQIS is now integrated into Active Directory.
  • PECs, PSCs, and BSCs are now called Message Queuing servers and run on Windows 2000 domain controllers.
  • MSMQ Routing Servers are now called Message Queuing servers with routing.
  • MSMQ site links are now called routing links.
  • MSMQ Explorer is integrated into the Microsoft Management Console (MMC) as an administrative snap-in.