The Null-modem emulator is an open source kernel-mode virtual serial port driver for Windows, available freely under GPL license.
The Null-modem emulator allows you to create an unlimited number of virtual COM port pairs and use any pair to connect one COM port based application to another. Each COM port pair provides two COM ports. The output to one port is the input from other port and vice versa.
The Null-modem emulator can be used to provide serial interface for device emulators. In this case the device emulation program uses one port of the pair and the other port can be used by Windows or DOS application that requires a COM port to communicate with the device. For example, to send/receive faxes over IP you can connect Windows Fax application to t38modem ( T38FAX Pseudo Modem , part of the t38modem project ) via virtual COM port pair.
The Null-modem emulator can be used to provide serial interface for COM port redirectors. For example, with the com2tcp ( COM port to TCP redirector, part of the com0com project ) you can communicate via serial interface with the TCP/IP servers. If you feel that com2tcp is what you need but can't find some required features (for example RFC 2217 support) then try use hub4com instead.
With the hub4com ( HUB for communications, part of the com0com project ) it is possible to handle data and signals from a single serial device by a number of different applications (for example, several applications can share data from one GPS device). It's also possible to use the real serial ports of remote computer like if they exist on a local computer.
You can find more information in Using com0com and com2tcp, ReadMe.txt for com0com, ReadMe.txt for com2tcp, ReadMe.txt for hub4com and on SourceForge Project page.
Alternatively, you can use Virtual Serial Port Driver by Eltima Software. It allows creating a large number of virtual COM ports and gives you great possibility to emulate serial port behaviour fully. Virtual Serial Port Driver provides flexible port creation, management, and removal, allows testing the software, supports control lines and high speed of data transfer with virtual port.