From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.5-pre1 (2020-06-20) on ip-172-31-74-118.ec2.internal X-Spam-Level: X-Spam-Status: No, score=0.5 required=3.0 tests=BAYES_05,TO_NO_BRKTS_PCNT autolearn=no autolearn_force=no version=3.4.5-pre1 Date: 26 Jul 93 18:49:26 GMT From: rational.com!bonnie!rlk@uunet.uu.net (Robert Kitzberger) Subject: Re: TCP/IP in Ada Message-ID: List-Id: labtek@cs.yale.edu (Tom Griest) writes: > \ASR\DDN - written in 1985 by E-Systems > \ASR\DDN2 - written in 1987 by Unisys Also note that the DDN code only supports UDP/IP, and the DDN2 code only supports TCP/IP. Neither supports both TCP and UDP. Adding UDP is a straightforward bit of work. Adding TCP to DDN, on the other hand, is ill-advised, since TCP is many times more complex than UDP). Nonetheless, the DDN2 code has a much cleaner architecture, and is easier to plug in device drivers and socket layers. Unfortunately, as you point out, the DDN2 code uses tasking too liberally, to the tune of 10+ context switches per packet transmission or reception. If your compiler supports passive tasking, then you can passivate some of these (your mileage may vary). With quite a bit of tweaking, passivating, and optimization, my socket-layer performance was 10% of my device-driver layer performance. Caveat emptor. .Bob. -- Bob Kitzberger Internet: rlk@rational.com Rational, Grass Valley, CA CompuServe: 70743,1550 "Man is a rational animal who always loses his temper when he is called upon to act in accordance with the dictates of reason." -- Oscar Wilde