billy@VENERA.ISI.EDU (Billy Brackenridge) (06/10/89)
I have used the SUN NFS package, the FTP package and the MIT/CMU code on several different projects to send UDP datagrams. All packages support UDP. You may not want to rule out the CMU/MIT PC/IP package. You can use it commercially. Also if you contact Phil Karn I suspect you can make an arrangement to use his code at a minimal price. If your goal it to make a small and simple UDP application use the MIT/CMU package. Its primary benefit is complete source code in Microsoft C. If you want to do BSD 4.2 (0 in the host field) broadcasts you can change the code to do so. I hope you will fix your broken Unixes instead! I used this package to do a PC based point to point packet video system. I wouldn't want to do anything more complicated with it. I would add that if you want to write your UDP code completely from scratch it is worth picking up the MIT/CMU package just to look at and perhaps steal a few routines. UDP and even domain resolution is pretty simple and you could write your own package from scratch pretty easily. I have also used an early version of FUSION from Network Research to do a SMTP based voice mail system. SMTP is of course TCP based but there was support for UDP calls. At the time FUSION was the only package supporting large model C. FUSION attempted to be close to Berkeley Unix sockets. I was their first Alpha release. I assume that 5 years has improved the product. I replaced FUSION with an Alpha release of the FTP software 2.0 Kernel. This was the first software from FTP that supported large model C. The code was much more reliable than the FUSION code of the period and the FTP native programmers' interface is superior to a sockets interface. FTP sent me their sockets interface when they implemented it, but I never opened the disk. From your point of view you may not want to support a TCP kernel just to do UDP. FTP Software has a stand alone library that allows you to write lean applications, but I have never used it. I also have worked for a client who wanted NFS support and AppleTalk protocols simultaneously. (The AppleTalk was encapsulated in UDP). It worked but it was ugly. SUN supports a sockets interface. This would be unacceptable for a commercial product as the SUN legal staff is impossible to deal with and unless they have changed their policies do not issue site licenses. FTP Software now supports NFS through their new Interdrive product. Old code I developed years ago still works with the newer kernel. Of all the companies I have worked with I'd rate FTP first. They can be expensive, but their technical support, quality of software, and range of hardware supported is unmatched even if James does flame a lot on the net. They also seem to have signed a lot of deals with other companies that have built on their products and still stay commercially competitive. I am not the person to ask about a Sockets interface. I suspect there are others on the net with more experience in this area.