Platform SDK: Exchange Server

Checking Network I/O

The Network Monitor tool helps determine where network bottlenecks are occurring. Network Monitor runs on Windows NT Server and is available from Microsoft. Other network monitoring tools can be obtained from independent software vendors.

For Microsoft Exchange Server or any client-server application, an important measurement is the number of bytes flowing between the server and the client and how many RPCs are required per action. Network Monitor can count both, and you can run it on both the server and the client. Network Monitor can analyze each frame, then compute the overhead.

The Network Monitor can also report the actual number of bytes transmitted. It includes low-level connections for Windows NT Server actions, and the redirector to establish and maintain that network connection. The number of connections should be kept low, especially when a large number of users are connected remotely. The number of bytes is particularly important for scalability and for slow-link clients. Less network I/O means a network/server can support more clients, and also means faster operation for remote clients over slow links such as a modem.

Example: Checking your Network I/O

Using a network monitor during a test of a Microsoft Exchange Client shows that each RPC has a 304-byte overhead. So many RPCs are being requested that RPC overhead consumes 50 percent of network I/O. Also, more than 40,000 bytes of network I/O are required to reply to a message. This again demonstrates the importance of reducing RPCs and monitoring their use.

To use the Network Monitor

  1. Enter Network Address for the computers you want to monitor.
  2. Run NET CONFIG RDR.
  3. Look for the 12 character Ethernet network address for each network card. Example: 00AA0038ADC1
  4. Start Network Monitor.
  5. From the Capture menu, choose Addresses.
  6. Click Add.

To select type: ETHERNET

  1. Type in a 12-character address for Address. Example: 00AA0038ADC1
  2. Type in server name for Name. Example: SERVER
  3. Type in comment. Example: Microsoft Exchange Server
  4. Click OK.
  5. Click Save and save to DEFAULT.ADR.

Repeat these steps for any other computers to be monitored.

To monitor traffic between the server and client

  1. From the Choose Capture menu, choose Filter.
  2. Edit the line that reads INCLUDE ANY <--> ANY.
  3. Select the server on the left and the client on the right.
  4. Click OK.

For future use, save and load the filters.

To begin capture

  1. Get test ready to run.
  2. From the Capture menu, choose Start.
  3. Choose Run Test.
  4. From the Capture menu, choose Stop.

To analyze the data

The Station Stats window allows you to view how many bytes are being sent and received between the client and the server.

To produce a view that allows you to see all RPCs to and from the server

  1. From the Capture menu, choose Display Captured Data.
  2. Choose Filter from the Display menu.
  3. Edit the line that reads Protocol == Any.
  4. Disable All protocols.
  5. Enable the MSRPC protocol.

To produce a view that allows you to see and count the number of RPCs to the server

  1. From the Capture menu, choose Display Captured Data.
  2. From the Display menu, choose Filter.
  3. Edit the line that reads Protocol == Any.
  4. Disable All protocols.
  5. Enable the MSRPC protocol.
  6. Add an Expression.
  7. Choose the Property tab.
  8. Select and expand MSRPC.
  9. Select P-Type in Protocol:Property listbox.
  10. Select == in Relation listbox.
  11. Select Request in Value listbox.
  12. Click OK.

For future use, load and save the views.