From: www.itworld.com
March 27, 2001 —
TCP/IP is the networking glue that binds the computing universe together. Every business uses it, most wired and wireless devices speak it, and corporate network users expect TCP/IP capabilities in every application they run.
As ubiquitous as TCP/IP is, network programming interfaces have hardly advanced since the invention of the "Berkeley sockets" low-level networking API. A developer who wants to build e-mail, file transfer, or network directory lookup capabilities into a custom application must learn the intricacies of each protocol and plod through the Berkeley API.
Users' insatiable appetite for connectivity needn't turn every programmer into a TCP/IP wizard. IP*Works Version 4 from /n software encapsulates complex TCP/IP protocols, such as NNTP (Network News Transfer Protocol) or IMAP (Internet Message Access Protocol), in easy-to-use objects. IP*Works covers the most important network protocols with objects that run on every conceivable Windows language and platform. We were thoroughly impressed by IP*Works and gave it an Excellent rating.
There are IP*Works editions for Visual C++, Visual Basic, Delphi, Borland C++ Builder, and Active Server Pages (ASP). An ActiveX edition extends the reach of IP*Works to any Windows application, even Excel. Of particular note are ASP and Windows CE libraries that extend powerful networking capabilities to Web applications, portable devices, and embedded systems. Java and Kylix (Delphi for Linux) versions are due out shortly.
Developers like it
IP*Works covers so many languages that we suspected /n software of taking the easy road. Most Windows object libraries claiming such broad coverage implement one set of objects in a universally accessible form, usually as COM or ActiveX objects. Because all Windows environments know how to communicate with COM, all bases are covered. C++ and Delphi programmers know better. COM/ActiveX objects carry considerable performance and resource overhead. These objects also impose a non-native interface on programmers: You can't treat a COM/ActiveX object as you would a C++ or Delphi object without writing a lot of extra code.
Happily, /n software did not take the lazy shortcut. The Visual C++, Borland C++ Builder, and Borland Delphi editions of IP*Works Version 4 are unique. Each is implemented in the target language and packaged as true C++ or Delphi objects.
For example, the Visual C++ edition delivers each protocol as a C++ class. The C++ objects use inheritance and virtual overrides, native techniques that help developers fit IP*Works into the application's overall structure. We tested several editions and found that each edition integrates well with its target programming language, allowing us to create several network clients from scratch in just a few hours.
We were especially impressed by the ASP edition. Web developers usually drop frequently requested network features such as Web e-mail and file uploads from their schedules because they require too much custom code. IP*Works Version 4 handles sending and reading e-mail, telnet (terminal emulation) sessions, and everything else the other IP*Works editions do.
In addition, the ASP edition will e-mail a file in a single step and will automatically process HTTP file uploads. In just a few minutes, we created an ASP script object that validates a remote client's e-mail address and sends the client a custom-generated ttext message with an attached file, which would ordinarily require several days of coding.
Managers love it
IP*Works packs a great deal of functionality into each edition. There are 22 objects in most editions. Most objects encapsulate high-level network protocols such as SMTP, FTP, and POP (Post Office Protocol), whereas others such as MIME handle the packaging of data for network delivery. The protocol coverage is not universal but is limited to file and message delivery and network directory lookups. Developers still need object brokers, transaction managers, message queuing, and other enterprise application functionality.
IP*Works includes four general-purpose TCP/IP objects -- IPPort, UDPPort, ICMPPort, and MCast -- that help simplify all kinds of network projects. These objects alone don't justify the cost of the software, however. You should consider purchasing IP*Works only if you need one or more of the high-level protocols it supports.
This latest release adds several new protocols: LDAP, IMAP, SNMP, MIME, MX (Mail Exchange), and SNPP (Simple Network Paging Protocol). The company also added SSL (Secure Sockets Layer)-enabled (encrypted) variants of most editions. The SSL versions load and verify a public key certificate and then use that certificate to encrypt network traffic.
Licensing is simplified by /n software's royalty-free license. Only the ASP edition requires a paid license on deployment, and then the cost is a flat fee per server CPU. The benefits for commercial development are obvious, but this licensing model also reduces the cost of internal deployment. There are no per-seat or per-connection licenses to buy or manage, so there is no need to police users' access to internally developed network applications.
Finally, /n software runs lengthy public trials of upcoming releases, a policy that's no doubt largely responsible for the performance and stability of the objects we tested. Any edition of IP*Works can be downloaded free for a trial period, and the software can also be purchased electronically.
IP*Works Version 4 is a network object library that runs everywhere, does all of the things we'd like it to, is easy for all developers to learn, and is well supported by the vendor. For these reasons, we give IP*Works our highest rating and recommend it for all Windows network development projects.
InfoWorld