/ cb_PMM: Description | Examples | FAQ | Download

cb_PMM - Description


cb_PMM is a network tool with two main functions: Port mapping and connection monitoring.

The mapping function allows cb_PMM to work as a TCP-level gateway. TCP-socket-connections from a client to cb_PMM are mapped transparently to a server. Up to eight socket-connections can be mapped at the same time.

The monitoring function allows cb_PMM to "record" the TCP-data which is transmitted on those sockets-connections. The data can be viewed and/or logged to a file in different formats.


  • Easy setup and flexible configuration: No complicated installation, no DLLs, no Registry settings, integrated user-interface for all configuration settings.
  • Powerful monitoring and logging functions: The mapped data can be viewed on the screenlog and/or written to logfiles in realtime. cb_PMM offers different log-modes to optimize the readability of the data: ASCII, Hex, Auto-Mode, HTTP-Mode and more.
  • Integrated counters for statistical information: Active and total TCP-connections, maximum simultaneous connections, Bytes transfered (in both directions) etc..


  • Operating System: Windows 9x, Windows NT4.0, Windows 2000, Windows XP
  • TCP/IP-Network (Windows 95 with WinSock 2)


After downloading cb_PMM copy (unzip) all files to a directory of your choice (e.g. "C:\Program Files\cb_PMM"). If necessary create a shortcut on the desktop.
cb_PMM does NOT require any files (e.g. DLLs) in the systemdirectory and does NOT require any registry settings.

To uninstall cb_PMM just delete all files from the program's directory.


The programs user interface contains two tab pages "Status" and "Logging".

The Status Page

The status page contains the configuration data for the mappings (see later), shows the current status of the mappings (active /not active) displays statistics (currently active connections, total connections, total Bytes transfered in both directions) and provides the following functions:

Start/Restart: All used mappings are started/restarted.

Stop: All mappings are stopped.

Reset Counters: The connection counters are set to zero.

AutoStart: If this option is selected, the used mappings are started automatically on program start.

Minimize->TNA: If this option is selected, the minimize function will send the program to the "Taskbar Notification area" (the "Icon Tray"). In combination with AutoStart cb_PMM will minimize to the TNA automatically on startup.

Delay/Connection: If this option is set, the delay (see "Max.(Bytes/s)") is applied to each thread - i.e. each single TCP connection. If this option is not set, the delay is applied per mapping - this means that all connections over this mapping share the configured maximum speed.

The Logging Page

The logging page contains the screenlog and several controls for configuration options and logging functions.

The screenlog contains connection information ("connect", "mapping", "disconnect" ...), the connection counters and the data which is transmitted on the mapped TCP-ports. The "Data mode" for logging (Character, ASCII, Hex, Auto ...) can be configured per mapping (see later).

To limit memory-usage of cb_PMM the screenlog can be limited (the first lines are deleted before new lines are appended). Note, that the "number of lines" is not an exact value (for performance reasons). It can vary around +/- 5 %. Warning: If the limit is switched off, the screenlog grows until it uses all of the system's memory!

The screenlog's text field is editable, so you can enter any comments and copy/paste the content. The complete content of the screenlog can be saved to a file or cleared at any time.

The logfiles contain the same information as the screenlog, but their size is limited only by free diskspace. The filename of a logfile is generated from the current date ("yyyymmdd.log"), the files are stored in the application's directory.

The screenlog and the logfiles can be switched on or off independently at any time with the control "Log to ...".

The settings for Log details/Connection Info and Delay Info can be used to customize the detail level of the logging.

Connection counters

cb_PMM provides several counters for information about mapped connections and transmitted data. The counters work per mapping and are written to the logs. The counters for active/total connections and transfered data per mapping are also displayed on the "Status page".

The following counters are available:

  • CurrentThreads: Every mapped socket connection is started in a new thread. So this value equals the number of currently active socket connections.
  • MaxThreads: Maximum number of simultaneous socket connections per mapping.
  • Connects (In): Number of successful socket connections from TCP-client(s) to cb_PMM.
  • Connects (Out): Number of successful socket connections from cb_PMM to the TCP-server (equals the number of successful mapped connections).
  • Disconnects (In): Number of disconnects (when socket connections were closed).
  • Bytes C->S (Client-> Server): Number of bytes mapped from the TCP-client(s) to the server.
  • Bytes S->C (Server->Client): Number of bytes mapped from the TCP-server to the client(s).

The counters for transmitted bytes are only activated if logging is enabled ("Data Mode" could be disabled at the same time).

"Data Modes" for logging

cb_PMM provides different modes to optimize the "human readability" of the logged data:

  • "disable": Just the connection statistics are logged (no data).
  • "Char": Data is logged in character format (without any filtering ...). This means, that also "non printable characters" are put to the logs, which could make the screenlog "look strange". Use this mode for text-based protocols (e.g. HTTP, SMTP, POP, ...) when the transmitted data contains only ASCII characters.
  • "ASCII": Only the following ASCII-characters are logged (decimal notation): 32..127, 9, 10, 13. All other characters are omitted.
  • "ASCII+": like ASCII, but all other characters are replaced by a "." (dot).
  • "Hex": Data is logged in Hex (and parallel in printable characters).
  • "Auto": If all characters of a data packet are in the range defined in "ASCII mode", the data is logged in "ASCII", otherwise the data is logged in "Hex mode".
  • "http-H": only HTTP headers (Request and Response) are logged.
  • "http-C": HTTP headers and data, transmitted from the client are logged.
  • "http-S": HTTP headers and data, transmitted from the server are logged.
  • "http-C/S": the complete HTTP traffic is logged (like in "ASCII"-mode).

Configuration of the mappings

The configuration can be done directly in the user interface of the program by editing the values in the input fields. Some configuration settings can be changed "on the fly", others need a restart of the current mappings to become active (marked with (*) in the following description). The changes are saved to the configuration file.

cb_PMM can map and monitor up to eight "channels" (TCP-ports). Every channel can be configured with the following parameters:

Remarks: Any text describing the mapping channel.

Bind IP (*): The IP-address of the interface for the incoming connection. If the computer has more than one network interface, this parameter can be used to bind the listening socket to a certain interface. This means, that TCP connections can only be made by clients, which have access to the interface (e.g. only clients from inside a LAN). If "Bind IP" is not defined, the socket is bound to the interface "" (which means "all interfaces").
If the socket can not be bound to the chosen IP-address, the mapping will not start and a corresponding error message will be logged.

Listen Port (*): The port number for the incoming connections (cb_PMM server port). Note, that every port can only be used once (per interface). Be sure to check, that the desired port is not used by any other application.

Map IP (*): The IP-address (or servername) for the outgoing connection (address/name of the destination server).

Map Port (*): The port number for the outgoing connection (port number of the destination server).

Map (*): Enables/disables the mapping for this channel.

Max.(Bytes/s): Throttles the throughput of a mapping to the configured speed, a value of 0 disables the throttling function. See also the parameter "Delay/Connection".

Log: Enables/disables the logging (connection information, connection counters and data).

Data Mode: Selects the mode used for data logging.

Remarks: To apply changes to settings marked with (*) the the mappings have to be started/restarted! The program displays a message in the status bar, if a restart is necessary.


cb_PMM is available in two different versions: The Light-Version is FREEWARE, The Pro-Version (with extended features) is SHAREWARE.

Feature Matrix:

Light-Version (FREEWARE)
Pro-Version (SHAREWARE)
max. number of mappings
log connection information
log connection data (Char, ASCII, ASCII+, Hex, Auto and HTTP mode)
log to screen
save screenlog to file
configurable limit for screenlog
no (1000 lines)
"unlimited" screenlog
clipboard functions in screenlog
"Autostart" feature
multi instance allowed
minimize to taskbar notification area
log to file

The Pro-Version can be licensed with our secure order form at ShareIt!.

Be sure to visit the cb_PMM - Examples page!


contact: | © 2003 - provided by