bc@halley.UUCP (Bill Crews) (11/30/87)
In article <3373@hoptoad.uucp> gnu@hoptoad.uucp (John Gilmore) writes: >Throughout the discussion of sockets -vs- TLI, I am getting the persistent >impression that the TLI people think sockets are somehow "TCP/IP specific" >while TLI is "general". You didn't get this from me. >[...] > >Another posting said that TLI allows both byte-stream and message-oriented >protocols, implying that this was a feature sockets lack. It ain't so -- >sockets can do it too. I think you did get that one from me, but I certainly didn't mean to imply anything whatever about sockets. I think you may have been reading a "TLI-vs-sockets" theme into a discussion about TLI. >I don't know the difference between streams and TLI, though someone >said they are independent, but here's my uneducated complaints about both: > >* TLI only exists because of AT&T's "Not Invented Here" attitude, and I >hate to help people who do that. Oh, I agree. Now, whether that means I do or do not want to support TLI depends on quite a few more things. >* The "select" or "poll" call is essential in providing easy, low overhead >access to several network connections or devices or files. For >example, in a telnet (remote login) program, the program should wait >until either a new packet of data comes in, or until a key is hit. >Select was implemented throughout the system -- it works on any kind of >file descriptor. "Poll" only works on streams, not on pipes, files, or >devices like serial ports, requiring ugly kludges for simple stuff like >telnet. And they could have called it "select" since it does the same >thing, but NIH reared its ugly head again. What select() and poll() work on is highly vendor-specific. I see no reason why the functionality should be limited to certain types of file descriptors. It may happen that data is always there for regular files, but that's OK; regular files should still be supported. I think most vendors who try very hard at all will have select() and poll() supporting the same set of descriptor types. >[...] > >For me the choice is clear. There's a bunch of public domain software >out that uses the socket interface, and while I could waste my time rewriting >it so AT&T can play NIH, why bother? No reason much, until TLI applications start to proliferate. >[...] I hope this discussion doesn't degenerate into a religious thing. I'm still interested in ferreting out the advantages and disadvantages of all interfaces. -bc -- Bill Crews Tandem Computers Austin, Texas ..!rutgers!im4u!esc-bb!halley!bc (512) 244-8350