wood%lavc3.dnet@SMITHKLINE.COM (Bill Wood, SKB Pharmaceuticals R&D, 215-270-5163) (07/16/90)
>> I suppose it is easier if some OTHER standards committee has to >> figure out the problem but just who would that be? >Primo: a standard already exists. It's called lpr. lpr is an operating-system-specific standard. That's no standard at all. >Secundo: even so, that's no excuse for making X handle something > inappropriate to it. Printing protocol is entirely appropriate to X - X provides multiple transport layers, plus built-in security mechanisms. Its a natural for providing the pipeline to a local printer. >> I vote local printing is a terminal issue and X is standardizing the >> software interface to terminals. Obvious! Just ask anyone who can't print anymore because of their fancy new X terminal. >X is standardizing the software interface to display/keyboard/mouse >sets, not to printers. If I happen to have a disk attached to my X >box, is that a reason to make the X protocol also support disk access? >Really now. Disk I/O is not a terminal issue. Local printing is. What if you had LEDs on your X keyboard? Should X be extended to send messages to the LEDs? Should X be extended to accept input from a data tablet? YES! Allow X to print too! Bill wood@smithkline.com Please CC replies to me, I'm not on the xpert mailing list.
mouse@LARRY.MCRCIM.MCGILL.EDU (der Mouse) (07/16/90)
>> Primo: a standard [for network printing] already exists. It's >> called lpr. > lpr is an operating-system-specific standard. That's no standard at > all. lpr the program is operating system specific. lpr the network protocol is not; any machine capable of supporting TCP connections should be able to speak the network protocol used by lpr. The only OS-specific part I see is that it uses BSD's "privileged port" notion, which does not prevent its use in this case. But if that really bothers you, well, there are other standards available[%]. I believe Imagen has printers that sit directly on Ethernet networks; they must speak a protocol of the sort we're looking for here. >> Secundo: even so, that's no excuse for making X handle something >> inappropriate to it. > Printing protocol is entirely appropriate to X - X provides multiple > transport layers, plus built-in security mechanisms. All that means is that using X to do printing is appropriate from the point of view of doing printing. My point is that it is inappropriate from the point of view of X. > Its[sic] a natural for providing the pipeline to a local printer. I'd much rather use something else (such as lpr), so that when the X server is not working (eg, not running) the printer is still available. >> If I happen to have a disk attached to my X box, is that a reason to >> make the X protocol also support disk access? Really now. > Disk I/O is not a terminal issue. Local printing is. I can't see how communicating with a printer attached to the box on your desk is any more a "terminal issue" than communicating with a disk attached to the same box. In a mail exchange with another person, I came to the conclusion that I mis-phrased my claim. X is not "standardizing the software interface to display/keyboard/mouse sets"; it's "standardizing the software interface to the common types of display/keyboard/mouse sets". For example, X fails utterly to support a vector display - but vector displays are far, far rarer than raster displays. > What if you had LEDs on your X keyboard? Should X be extended to > send messages to the LEDs? No; no extension is needed. Look up the XKeyboardControl structure used by XChangeKeyboardControl(). But see my next paragraph of reply. > Should X be extended to accept input from a data tablet? YES! Allow > X to print too! It slices, it dices, it even displays windows! I don't think X should be a do-everything protocol. Something should be added to X only when necessary, which typically means that arbitrarion of access to it must (or should) depend on the window system. Keyboard input is an example of what I mean: keyboard input is conceptually independent of windows, except for the notion of where the keystrokes go (X calls it "keyboard focus"). IMO, keyboard LED control does not belong in X, at least not in its present form, because nothing is available with the current way that's not available under the paradigm where the LED control is split off into a separate server. Similarly, I feel XBell shouldn't be part of X. (If X LED control were elaborated so that each focus window has its own set of LED bits, then merging it into the X server would (IMO) be justified.) And (needless to say, by now) I think printing does not belong as part of an X server. der Mouse old: mcgill-vision!mouse new: mouse@larry.mcrcim.mcgill.edu
wood%lavc3.dnet@SMITHKLINE.COM (Bill Wood, SKB Pharmaceuticals R&D, 215-270-5163) (07/16/90)
>lpr the program is operating system specific. lpr the network protocol >is not; any machine capable of supporting TCP connections should be >able to speak the network protocol used by lpr. The only OS-specific >part I see is that it uses BSD's "privileged port" notion, which does >not prevent its use in this case. There are a many ways to print to an X terminal's printer, but none of them are as simple, straightforward, and obvious as doing it through X. The implementations of X terminal printing are currently all different, are not secure, and don't run on all transport layers supported by the server. This situation is not surprising. It is difficult for a terminal manufacturer to implement, say, lpr, on a VMS system. For one thing, very few VMS systems have TCP/IP. (I don't know of a terminal manufacturer who used lpr over tcp/ip either!) >I'd much rather use something else (such as lpr), so that when the X >server is not working (eg, not running) the printer is still available. If the server isn't running on an x terminal, you're dead in the water. If you're on a workstation, use lpr to print. I'm not suggesting that the server monopolize the printer - the server could implement the printing extension using (local) lpr on a workstation. >I can't see how communicating with a printer attached to the box on >your desk is any more a "terminal issue" than communicating with a disk >attached to the same box. Because local printing is something you do through your terminal connection. Always has been. The security and access concerns of most users vis-a-vis their terminal are the same for their printer as for their terminals. The printer is an extension of the terminal. >It slices, it dices, it even displays windows! I don't think X should >be a do-everything protocol. Something should be added to X only when >necessary, which typically means that arbitrarion of access to it must >(or should) depend on the window system. That's a nice distinction, but its not practical in this case. It doesn't print. > old: mcgill-vision!mouse > new: mouse@larry.mcrcim.mcgill.edu - Bill wood@smithkline.com
rws@EXPO.LCS.MIT.EDU (Bob Scheifler) (07/17/90)
There are a many ways to print to an X terminal's printer, but none of them are as simple, straightforward, and obvious as doing it through X. Since I haven't seen specifications for how vendors currently provide print service, it's hard to argue. But I think the real question is: can it be made at least as simple, straightforward, and obvious, without going through X. It seems clear to me that it can be. The implementations of X terminal printing are currently all different, are not secure, and don't run on all transport layers supported by the server. All of which are orthogonal to the question of whether it should be done using an X extension. Because local printing is something you do through your terminal connection. Always has been. Just because there once was a bad idea, we should perpetuate it? Local printing through the terminal stream was forced on people because the terminal only supported a single connection. X terminals do not suffer from this defect. The security and access concerns of most users vis-a-vis their terminal are the same for their printer as for their terminals. I'd say that's a conjecture, rather than a fact. But if you want the security of the printer to default to the security of the X server, fine with me. I still don't see that it needs to be bundled as an X extension to achieve that. The printer is an extension of the terminal. But not an extension of X. It doesn't print. And it shouldn't. It still seems that the only argument that has really been put forward for making printing an X extension is the belief that the X Consortium could make a standard, and it isn't clear what other organization reasonably could. Now that I've dispelled that myth :-) how about some good technical arguments?
wood%lavc3.dnet@SMITHKLINE.COM (Bill Wood, SKB Pharmaceuticals R&D, 215-270-5163) (07/17/90)
>Since I haven't seen specifications for how vendors currently provide print >service, it's hard to argue. But I think the real question is: can it >be made at least as simple, straightforward, and obvious, without going >through X. It seems clear to me that it can be. It isn't as simple because the software for, say, lpr, is not easily available on different OS's and different network transport layers. It's also not simple because the process of standardization is not being driven centrally, so the terminal manufacturers do what they want. A message from jcp@ciba-geigy.ch (Joseph C Pistritto) reminded me that printing is not the only issue: In addition to printing, by the way, the other handy application we have is for doing RS-232 input, usually from authentication devices like card or barcode readers. Once again, standardization, (and the ability for 'standard programs' like xterm to be able to use the device) would be handy. To me, using the existing pipe provided by X for input/output to ports on the terminal is esthetically clean. The alternative is to run additional "wiring" like lpr. Viewed in a broader context than is generally appropriate on this list, X devices are local input/output devices. It seems artificial to complicate their practical applications based on the concern that X is only for graphics (at least in this case :-)). > The implementations of X terminal printing are > currently all different, are not secure, and don't run on all transport > layers supported by the server. >All of which are orthogonal to the question of whether it should be done >using an X extension. This response frustrates me, because it doesn't show an appreciation for the practical problems encountered by terminal manufacturers and users who are trying to implement solutions on the fringes of the standards world (and standards don't imply availability anyway!). The practical issues are important too. X could provide a standard for local input/output. An input/output extension for a simple byte-stream protocol is all that's needed. >Just because there once was a bad idea, we should perpetuate it? Local >printing through the terminal stream was forced on people because the >terminal only supported a single connection. X terminals do not suffer >from this defect. The only reason it was a bad idea was that local printing monopolized the connection. With the X pipeline, that is not a problem anymore. > The security and access concerns of most users vis-a-vis > their terminal are the same for their printer as for their terminals. >I'd say that's a conjecture, rather than a fact. But if you want the >security of the printer to default to the security of the X server, fine >with me. I still don't see that it needs to be bundled as an X extension >to achieve that. It doesn't have to be, but the mechanism is already in place. > It doesn't print. >And it shouldn't. It still seems that the only argument that has really been >put forward for making printing an X extension is the belief that the >X Consortium could make a standard, and it isn't clear what other organization >reasonably could. Now that I've dispelled that myth :-) how about some good >technical arguments? The argument so far has revolved mostly around an idealization of X, which I believe is (practically speaking) too limiting. Local input/output to printers and other devices from X terminals is desireable (I don't think there's disagreement on that point). The X pipeline provides transport, security, and multiple connections to a local input/output device (the X terminal/workstation). Using this pipeline for input/output to local ports is an elegant solution which requires no additional transport mechanisms, and is analagous to using ethernet for differing types of network traffic. I propose a simple extension to X for input/output. - Bill wood@smithkline.com
STODOLA@FCCC.EDU (Bob Stodola) (07/18/90)
Comments on the rws/wood dialog... >A message from jcp@ciba-geigy.ch (Joseph C Pistritto) reminded me that >printing is not the only issue: > > In addition to printing, by the way, the other handy application we > have is for doing RS-232 input, usually from authentication devices > like card or barcode readers. Once again, standardization, (and the > ability for 'standard programs' like xterm to be able to use the > device) would be handy. > >To me, using the existing pipe provided by X for input/output to ports >on the terminal is esthetically clean. The alternative is to run additional >"wiring" like lpr. Viewed in a broader context than is generally appropriate >on this list, X devices are local input/output devices. It seems artificial >to complicate their practical applications based on the concern that X is only >for graphics (at least in this case :-)). > . . . . >The practical issues are important too. X could provide a standard for local >input/output. An input/output extension for a simple byte-stream protocol >is all that's needed. I agree. I think support in the X-protocol for the "workstation" -- not in the sense of a computer with disk drives and other concerns, but the thing that sits on the users' desk -- is entirely proper. I agree that anything which reduces wiring (hard or soft) is a plus. If I put an X-terminal on my desk, it seems to me that a local I/O port is an obvious adjunct to the "workstation". The fact that so many people have local printers (as well as other devices) certainly speaks to its practical uses. Why wire separately for it? The comparison with a local disk drive is not reasonable -- the physical proximity of a disk drive is rarely an issue -- the physical proximity of printers often is. The fact is that there is a demand for local device access through X workstations. That demand is being addressed in an ad hoc fashion by vendors. Whether addressed by an X protocol extension or some other way, I think it appropriate that the X-community address the issue. Ducking it by declaring it a non-issue for the user interface doesn't make it go away, it merely leaves it in many different - and sometimes less qualified - hands. >> The security and access concerns of most users vis-a-vis >> their terminal are the same for their printer as for their terminals. > >>I'd say that's a conjecture, rather than a fact. But if you want the >>security of the printer to default to the security of the X server, fine >>with me. I still don't see that it needs to be bundled as an X extension >>to achieve that. > >It doesn't have to be, but the mechanism is already in place. Frankly, I think its a pretty reasonable conjecture. >The argument so far has revolved mostly around an idealization of X, which >I believe is (practically speaking) too limiting. Local input/output to >printers and other devices from X terminals is desireable (I don't think >there's disagreement on that point). The X pipeline provides transport, >security, and multiple connections to a local input/output device (the X >terminal/workstation). Using this pipeline for input/output to local ports >is an elegant solution which requires no additional transport mechanisms, >and is analagous to using ethernet for differing types of network traffic. >I propose a simple extension to X for input/output. I agree. If it can't be an X-extension, I would encourage the X-community to at least serve as a focus for a standard which X-terminal vendors can use for this purpose. I don't think saying "use lpr" really addresses this problem very well.
mouse@SHAMASH.MCRCIM.MCGILL.EDU (der Mouse) (07/18/90)
> To me, using the existing pipe provided by X for input/output to > ports on the terminal is esthetically clean. And to me it isn't - so what? > Viewed in a broader context than is generally appropriate on this > list, X devices are local input/output devices. The argument seems to be arising from the disagreement between those who feel that X should be a workstation interface protocol and those who think it should be a window system protocol. >>> The implementations of X terminal printing are currently all >>> different, are not secure, and don't run on all transport layers >>> supported by the server. >> All of which are orthogonal to the question of whether it should be >> done using an X extension. (Which is perfectly true.) > This response frustrates me, because it doesn't show an appreciation > for the practical problems encountered by terminal manufacturers and > users who are trying to implement solutions on the fringes of the > standards world (and standards don't imply availability anyway!). > The practical issues are important too. X could provide a standard > for local input/output. An input/output extension for a simple > byte-stream protocol is all that's needed. What are you waiting for? Write an input/output extension and make it available. That's how X came about, after all; nobody forced it on us. > I propose a simple extension to X for input/output. Well? So where is it? (I probably wouldn't use it; I don't think it belongs as a part of standard X. But I definitely welcome experimental additions.) der Mouse old: mcgill-vision!mouse new: mouse@larry.mcrcim.mcgill.edu
janssen@parc.xerox.com (Bill Janssen) (07/18/90)
In article <9007161432.AA02724@smithkline.com> Bill Wood writes:
Because local printing is something you do through your terminal connection.
Always has been.
Look, Bill, I worked for years on a VT241 with an attached dot-matrix
printer. I know what you're talking about. I understand the
convenience and the model. But it really is an ad-hoc kind of thing.
The 'right' thing to do is to put an Ethernet board in the printer,
and hook it up on to the Ethernet right next to the X terminal. Or if
the X terminal is on a serial line, run another one to the printer.
Now, if we're really talking about 'local' printing, I have no trouble
with putting a key on the X terminal that causes the printer to print
the current screen display.
Actually, if you really wanted to get ugly... Make the printer look
like a built-in client to the X terminal. Have a printing program on
the host that exchanges data with the printer "client" via a property
on the root window of the X terminal. This way the printer can get
its data via the standard X protocol, without problems. And the
X terminal vendors can fight about the right way to implement the
solution.
Bill
--
Bill Janssen janssen@parc.xerox.com (415) 494-4763
Xerox Palo Alto Research Center
3333 Coyote Hill Road, Palo Alto, California 94304
janssen@parc.xerox.com (Bill Janssen) (07/18/90)
In article <63035B33DC3FC0AEAA@fccc.edu> STODOLA@FCCC.EDU (Bob Stodola) writes:
I agree. I think support in the X-protocol for the "workstation" -- not in the
sense of a computer with disk drives and other concerns, but the thing
that sits on the users' desk -- is entirely proper.
An interesting position. But perhaps there should be a "workstation protocol",
of which the window system section would be X. Other sections of the protocol
could address other things which live on workstations.
"When all you've got is a hammer, everything looks like a nail..."
Bill
--
Bill Janssen janssen@parc.xerox.com (415) 494-4763
Xerox Palo Alto Research Center
3333 Coyote Hill Road, Palo Alto, California 94304
ral@hydra.Jpl.Nasa.Gov (Roger Lighty) (07/19/90)
In article <JANSSEN.90Jul17232251@holmes.parc.xerox.com> janssen@parc.xerox.com (Bill Janssen) writes: > |>In article <63035B33DC3FC0AEAA@fccc.edu>STODOLA@FCCC.EDU(Bob Stodola)writes: > |> I agree. I think support in the X-protocol for the "workstation" > |> ... >An interesting position. But perhaps there should be a "workstation protocol", ... > >"When all you've got is a hammer, everything looks like a nail..." I think this point has been made previously in the discussions about audio <4840@crltrx.crl.dec.com> (Jim Gettys) and Input Device Extensions <9006051941.AA01117@sol.uswest.com> (Bob Scheifler). X is not an everything protocol. It may be proper to use the X model and build a larger protocol of which X is the window statndard, 'H' is the audio standard, 'P' is the print interface standard,.... These then all support the 'Y terminal' protocol -- later replaced by Y(o). {:-{)} Roger Lighty ral@hydra.jpl.nasa.gov Jet Propulsion Lab. (818) 354-3525 ---- Of course these are my opinions, JPL's lawyers will not allow it to have any opinions.
djm@hansen.NCD.COM (Dave Mackie) (07/19/90)
As a vendor of X terminals, I'd like to contribute our experiences here at NCD to the discussion about printers attached to X terminals. This is not meant to be an advertisment, it just happens that the work I do is sold for a profit ;-) After discussion amongst ourselves, and with the MIT X Consortium folks we implemented a transparent serial I/O daemon to our X terminals that is independent of the X server. The idea here is that the best protocol is no protocol. This functionality acts like a 1 port terminal server in transparent mode, i.e. no knowledge of any protocol other the network transport and the RS-232 parameters. Currently, the serial I/O daemon accepts connections over either TCP or DECnet, just like the X server. It then transfers data bi-directionally, until one side or the other hangs up. The only special case is if the network hangs up first, the serial daemon guarantees that the data in the RS-232 queue is written out to the device. On the host side, we've created a sample filter for the BSD print spooler that connects up to our serial I/O daemon and bi-directionally transfers data. A simpler networking program would be hard to find. We've been using this arrangement to do printing for the past several months for the entire company to Apple LaserWriters, and more recently HP LaserJets. This scheme allows us to deal with all the complexity of formatting, routing, and spooling print jobs on general purpose computers that have the appropriate tools. Here are a few of the reasons that we took this approach over some of the alternate schemes that have been mentioned so far (I'm paraphrasing them here): > Use the "universal" BSD lpr protocol. Well as others have pointed out it's not universal, my product needs to talk to VMS machines as well as UNIX machines, both BSD and System V based (yours does too, probably). In addition, the lpr protocol is meant to be used between print spoolers. Well, my X terminal doesn't have any local disk for print spooling. Yes, I've got NFS support, but it's just plain silly to get the X terminal involved with a three party file transfer. My idea of distributing computing is that one should put the work on the machine best equipped to do that work. Pring spooling belongs on general-purpose computers with disks. And the kicker, who says it's a printer at the other end of the RS-232 cable? We already have customers who are hooking up bar code readers, data tablets, and terminals! (GASP! You should have been suspcious when I mentioned 1 port terminal servers ;-) > Use a simple I/O connection just added in as an X extension. Well, I believe we all agree that we need a garden hose. I bought a generic, no-brand one, and you want to buy one made by Brand X. They both have identical functionality, yours just has a logo printed on it. If you want to make this a standard, please do, but let's not force it to have an X on it. I'll even volunteer to write the RFC! I would have the opportunity to be known as the author of the shortest RFC in history! A potential technical objection to this approach is that currently when one goes an XGrabServer(), all clients except the one that did the grab don't get any service from the X server. Well, when my window manager puts up a wire-frame to query my desires regarding placement of a new window, I don't want my printer to grind to a halt. Oh, well, the serial I/O clients/sockets don't count in the server grab you say. In the immortal words of Bill the Cat, "AAACK, THPTTT!" > All I really want is to be able to dump my screen or window to my attached > printer. Well, I really can't cram format converters for every printer control language known into your X terminal, and dynamically trying to link in just the one you need is also a mess. This is another example of a task best suited to a host computer. > I want the printer port to have the same security as the X server. Well, that's what we give you with our implementation. Does this need to be standardized? There isn't much standardization today with regards to security, perhaps the advent of Kerberos will change that, but in the mean time this seems like an unlikely spot to start a standardization effort. Hope this is useful, Dave Mackie Network Computing Devices djm@ncd.com
jg@crl.dec.com (Jim Gettys) (07/19/90)
>>The practical issues are important too. X could provide a standard for local >>input/output. An input/output extension for a simple byte-stream protocol >>is all that's needed. >I agree. I think support in the X-protocol for the "workstation" -- not in the >sense of a computer with disk drives and other concerns, but the thing >that sits on the users' desk -- is entirely proper. I agree that anything which >reduces wiring (hard or soft) is a plus. If I put an X-terminal on my >desk, it seems to me that a local I/O port is an obvious adjunct to the >"workstation". The fact that so many people have local printers (as well >as other devices) certainly speaks to its practical uses. Why wire separately >for it? The comparison with a local disk drive is not reasonable -- the >physical proximity of a disk drive is rarely an issue -- the physical >proximity of printers often is. One "wires seperately for it" for long term software maintenance reasons. If two functions (to use two examples, file systems, and X display services) do not interact closely, then you should build seperate interfaces, so that as parts of the system grow, change, or are found unnecessary, you can change those parts of the system with out having problems with all the encumbering baggage. >The fact is that there is a demand for local device access through X >workstations. That demand is being addressed in an ad hoc fashion by vendors. >Whether addressed by an X protocol extension or some other way, I think it >appropriate that the X-community address the issue. Ducking it by declaring >it a non-issue for the user interface doesn't make it go away, it merely >leaves it in many different - and sometimes less qualified - hands. This is an argument for people to get together and agree on standard interfaces. I have no problem with this argument. I have major problems with the conclusion you draw from the argument. The problem comes when you say "make it part of the X protocol" directly. Printing on attached serial devices (even if you believe these are rational, given network based printers these days...) has nothing to do with X. Make it a seperate protocol. An example of this is XDMCP, the display manager control protocol. Having X terminal manufacturers (those silly enough to have serial ports) get together and agree on a standard protocol for accessing those serial lines seems sensible to me. I suspect it can be as simple as "access this TCP port and start sending and reading bytes", and maybe another port for modem control commands. But making it an X extension seems like folly to me. KISS the server! - Jim Gettys
datri@convex.com (Anthony A. Datri) (07/20/90)
>The 'right' thing to do is to put an Ethernet board in the printer, >and hook it up on to the Ethernet right next to the X terminal. Or if >the X terminal is on a serial line, run another one to the printer. Ethernet would still be a high-cost transport for the cheap printers that are often used in such applications, and this only replaces the problem with a differnet problem, since there is no standard for how one communicates with an ethernettted printer. --
rws@EXPO.LCS.MIT.EDU (Bob Scheifler) (07/20/90)
[I'm behind on this topic, but this caught my eye.] Having X terminal manufacturers (those silly enough to have serial ports) It is not at all silly to have a serial port on an X terminal. I certainly want to be able to sit at home with my X terminal, using the machines at the office, and still be able to print files on the printer sitting next to my X terminal, which is connected to the serial port. I just don't want to use an X extension to print it.
rws@EXPO.LCS.MIT.EDU (Bob Scheifler) (07/21/90)
>Since I haven't seen specifications for how vendors currently provide print >service, it's hard to argue. But I think the real question is: can it >be made at least as simple, straightforward, and obvious, without going >through X. It seems clear to me that it can be. It isn't as simple because the software for, say, lpr, is not easily available on different OS's and different network transport layers. In this particular question I wasn't suggesting using lpr. Use whatever program you would use if you were using an X extension, but then just don't use an X extension. The code used by Xlib for different transports is really not very large, and hardly unique. Not at all difficult to replicate. Instead of calling XOpenDisplay, call OpenPrinter. The rest is identical (save for not using the X prefix :-). It's also not simple because the process of standardization is not being driven centrally, so the terminal manufacturers do what they want. I wasn't clear, I was asking a technical question. My fault. Viewed in a broader context than is generally appropriate on this list, X devices are local input/output devices. It seems artificial to complicate their practical applications based on the concern that X is only for graphics (at least in this case :-)). It is precisely the slipping into a broader context that we disagree on. This response frustrates me, because it doesn't show an appreciation for the practical problems encountered by terminal manufacturers and users who are trying to implement solutions on the fringes of the standards world (and standards don't imply availability anyway!). And this response frustrates me, because it doesn't show an appreciation for the practical problems encountered by a Director who is chartered with a specific mission and who wants to avoid stepping in sinkholes and wants to avoid moving into areas that others (e.g. formal standards bodies and other industry bodies) will view as outside our scope. These are "practical problems" too, and cannot be dismissed lightly. The practical issues are important too. X could provide a standard for local input/output. An input/output extension for a simple byte-stream protocol is all that's needed. I'm sure we could provide a standard, but the fact of that possibility doesn't make it right. The only reason it was a bad idea was that local printing monopolized the connection. No, I don't believe that's the reason. It was a bad idea because it fundamentally intertwined two things that were logically independent. Using this pipeline for input/output to local ports is an elegant solution which requires no additional transport mechanisms, and is analagous to using ethernet for differing types of network traffic. We don't see the analogy the same way. The way I look at your analogy, the IP protocol (assuming it came first) would be required to contain subcode space for any other transport protocol that you wanted to run on the same wire. Or the Telnet protocol (assuming it came first) would be required to contain subcode space for NFS and X. The ethernet running into my workstation contains multiple, independent application-layer protocols. The wire running into my X terminal should be treated no differently. I propose a simple extension to X for input/output. You are welcome to find a Consortium member to champion your cause, and you are welcome to become a Consortium member and champion it yourself.
meo@rsiatl.UUCP (Miles ONeal) (07/21/90)
I've missed a few days, so... Has Computoone/Princeton Graphics been mentioned in this regard? Have they gotten into the discussion? They even allow the x terminal's printer port to be used as a network remote printer. Talk about creeping featurism... -Miles
jordan@morgan.COM (Jordan Hayes) (07/23/90)
Robert Scheifler <rws@EXPO.LCS.MIT.EDU> writes:
I certainly want to be able to sit at home with my X terminal,
using the machines at the office, and still be able to print
files on the printer sitting next to my X terminal, which is
connected to the serial port. I just don't want to use an X
extension to print it.
Ah-hah! But, that serial port that connects you to your office doesn't
speak a general transport protocol, but rather a proprietary protocol
especially developed to do compression of the X protocol (admitedly not
designed for low-bandwidth environments) over your slow modem -- so all
there is is an X stream, no room for anything else.
I agree, it doesn't belong there. But what the heck? ;-) Unless you
want me to run two modems to the office, one for the dedicated X
stream, and one for a general purpose transport protocol link,
something needs to get sacrificed. For the ethernet environment, where
the X stream is already coming in via an general transport, the vendor
has no business hacking that into the X protocol ...
# "Do you want protocols that look nice, or protocols that work nice?"
# -- mike padilipsky
/jordan
rws@EXPO.LCS.MIT.EDU (Bob Scheifler) (07/23/90)
But, that serial port that connects you to your office doesn't speak a general transport protocol, but rather a proprietary protocol especially developed to do compression of the X protocol (admitedly not designed for low-bandwidth environments) over your slow modem -- so all there is is an X stream, no room for anything else. You've made an assumption about whether the X terminal at home speaks something general (e.g. TCP over SLIP) or something special-purpose (e.g. NCD's Xremote protocol or GraphOn's protocol), and whether that special-purpose protocol allows multiplexing. There is at present no standard for a special-purpose protocol for doing X over slow serial lines. If and when such an intermediary protocol were attempted to be made standard, the issue of multiplexing the line for other purposes (like printing) would surely be argued. It might even turn out to be an "extension" of that special-purpose protocol, depending on how the protocol was designed. But that's still not the same as making it an X extension. Unless you want me to run two modems to the office, one for the dedicated X stream, and one for a general purpose transport protocol link, something needs to get sacrificed. The only thing that needs to be sacrificed is the notion that everything should be an X extension. :-)
jg@crl.dec.com (Jim Gettys) (07/23/90)
Hmm.... I'm not sure I'd want my X terminal talking a proprietary protocol over the wire. Much better would be a version of SLIP or PTP (point to point protocol, which is replacing slip) with good header compression, and a X specific protocol compressor running over it. 'Cause I'd like to have other IP cognizant devices at home, like my workstation, laser printer, etc, all over the one modem.... Then a seperate TCP port seems like a trivial thing to do... Monopolizing my modem (and even more important, my home phone line) seems like a a terrible lose to me.... - Jim
janssen@parc.xerox.com (Bill Janssen) (07/24/90)
In article <9007222107.AA26600@s6.Morgan.COM> jordan@morgan.COM (Jordan Hayes) writes:
[...] so all
there is is an X stream, no room for anything else.
As I pointed out earlier, there is plenty of room in the X protocol
for arbitrary client-to-client sub-protocols. You can do local printing
over a pure X stream (no extensions) by adopting some client-to-client
conventions.
But your comment assumes an X-only stream, rather than a "remote workstation"
stream, which would support X as a subset. Why? Lots of people use SLIP as
the stream protocol, which allows you to run many task-specific sub-streams
on it.
Bill
--
Bill Janssen janssen@parc.xerox.com (415) 494-4763
Xerox Palo Alto Research Center
3333 Coyote Hill Road, Palo Alto, California 94304