Ever wondered what motivates sales people at large consumer electronics stores? Money! Read about Ian Gregson’s experiences over the last holiday shopping season. Also in this issue, info on beta releases of Emailer 2.0 and Apple’s CFM-68K Runtime Enabler, Mark Anbinder looks at the WebTV, and Stuart Cheshire examines in detail how latency brings your super-fast new modem to its knees.
CFM-68K Beta — Last December, Apple recommended that owners of 68K Macs disable the CFM-68K Runtime Enabler because it could cause serious crashes and data loss with some applications (see TidBITS-356), and Mac OS 7.6 did not support CFM-68K. Now, Apple has released CFM-68K Runtime Enabler 4.0b1 for 68K-based Macs. Although Apple stresses that the beta is unsupported (so use it at your own risk!), early tests indicate that 68K applications requiring CFM can now run, with the exception of Cyberdog 1.2.x or 2.0. Apple plans to ship the new version of CFM-68K in Mac OS 7.6.1, an interim release due as early as next month. [GD]
BBEdit 4.0.3 — Bare Bones Software has updated BBEdit, the commercial version of its popular text editor. (See TidBITS-365.) The new BBEdit 4.0.3 has improved FTP and HTML support, better integration with CodeWarrior, and faster launch times, as well as better performance on PowerPC 603 and 604 processors. The updater is about 2.5 MB. [GD]
Emailer 2.0 Beta
Emailer 2.0 Beta — Claris has announced a public beta of Emailer 2.0, which now stores all its messages in a single file (eliminating serious performance and storage problems with earlier versions) and features enhanced filtering capabilities. Although the Emailer 2.0 beta includes many improvements, my quick tests show it’s only stable enough for adventurous users. The download is about 5 MB. [GD]
Selling Performas at the Front Lines
Do you ever wonder why, when you walk into a large consumer electronics store that sells Macs, the sales staff are not always very helpful (or sometimes even friendly)? My experiences during the last holiday shopping season gave me insight into why some Macintosh buyers get the cold shoulder from sales staff.
I’ve used a Mac since 1989, and – just before Christmas – I subcontracted with Apple on one of their in-store promotions, called Apple Demo Days. After two days of training, I went to work at the busiest Future Shop store in Canada’s greater Vancouver, B.C. region – which roughly translated into a pre-Christmas shopping hell.
Spiff and Span — I found that sales staff get kickbacks (called "spiffs") from the computer companies for extra sales. Acer, Compaq, IBM, and Apple all give incentives. Guess who gave the best incentive at the stores I visited? Acer. Guess who sold the most? Acer. Guess who gave the least incentive? Apple. Guess which company sold the least? You get the idea.
Not only do incentives vary from one brand to another, but also from one model to the next. For example, the incentives on the Performa 6400/200 or 180 were considerably higher than on the new 6360.
The incentive scheme is probably the strongest motivator for sales staff, and it translates into the sales staff spending more time with a potential Acer Aspire buyer than a Macintosh buyer. It also translates into sales staff pushing the Acer brand instead of the Mac. "Ease of use" or "plug and play" have no meaning when the sales staff receives incentives of up to 500 percent more.
In my time at Future Shop, the Acer Aspire sold at roughly a rate of ten to one compared to the Macintosh. It was painful to watch. Neophyte computer users had no idea what they were getting themselves into. Most of them wanted a cheap machine that got them on the Internet. The Aspire does that – eventually.
I spoke with many of these first-time computer buyers. My first question was, "Have you ever considered a Macintosh?" Ninety percent of the answers were "no" (and these were the polite responses). I often received comments such as, "Is this a joke?", "Does it do Windows?", and "My friends all have Windows 95 – why should I buy a Mac?" After I bypassed their apparent dread of anything Macintosh, people were always impressed with my demo. Just putting a disk or CD in the drive and having it appear on the desktop amazed people. The ease of use blew people away. Having cable TV play through the Mac made people’s jaws drop to the floor. Some seriously considered the Mac as an alternative (for about five minutes), and then bought an Acer anyway.
On a positive note, 90 percent of the Mac users were pleased to see me. I had great conversations with long time Mac fans about how great the Mac is and how lousy Apple is at marketing the Mac. (The remaining 10 percent were Performa 6400 users who had bought their machines when they first went on sale; Apple dropped the price by about $700 Canandian two months after their introduction).
It was obvious that new computer users were coming into the store with preconceived notions about which computer to buy. They were not coming to make a decision, they were coming to buy the computer they had already chosen. Combined with the staff’s motivation to offer the Acer to anyone with the slightest doubt about what to buy, this made for comparatively low Mac sales.
What Should Apple Do? Apple needs a more aggressive advertising strategy in order to outsell the Acer Aspires of this world. Though 30-minute infomercials are great, a creative, intelligent 30-second ad can be more effective. Every medium must be equally considered.
Although Apple incentives to sales staff have improved (all staff at one Future Shop store, for example, received PowerBook 190s for having the highest Macintosh sales over a given period), nothing convinces commission-paid staff to sell more product than cold, hard cash. I know this because I had several members of the sales staff asking me to buy their PowerBooks from them.
If the Mac sales at large electronics stores are so disappointing, why are Macs still offered in that channel? Because that’s where budget-conscious, first-time, don’t-know-better computer users buy their first machines. Future Shop stores are on the front line in the battle for new consumer buying power.
There are still far more people without home-based computers than with them. Apple must convert first-time computer buyers before they even enter a store. Combine this with motivating the sales staff to introduce Apple products to first-time buyers and Apple sales figures could soar.
An Internet for the TV Generation
The Web has grabbed the attention of many people who hunger for information and entertainment, and groups as varied as the National Hockey League and the Oregon Shakespeare Festival have put huge efforts into making their Web sites attractive and informative. But, though TidBITS readers by definition already have some form of Internet access, many families lack the relatively modern computer, modem, and Internet service account needed to get online.
New consumer electronics products from Philips Magnavox and Sony, both licensing the WebTV name, make Web and email service available to anyone whose home has a television set and a phone line (just about everyone, although the set and phone jack must be in close physical proximity). The sleek, black gizmos cost about $300 (plus another $100 if you want the "optional" keyboard – you do) and service is about $20 per month, less than most folks pay for cable TV.
One big advantage of WebTV is that everything’s ready. There are no software programs to shuffle, no special utilities to download if you want to listen to sound or view video, and no out of memory errors or general protection faults. The unit has a built-in, high-speed modem (33.6 Kbps v.34bis), so all you need to do is hook up the cables from the WebTV to your telephone jack, an electrical outlet, and your TV.
The WebTV concept is that home users want entertainment and information to come to them. The basic WebTV model, with just a handheld remote control and no keyboard, meets that goal. You can browse to your heart’s content, using arrow buttons on the remote to move around a Web page, and the Go button to follow a link or choose an option. This feels odd to someone accustomed to a mouse, but isn’t too foreign; it reminds me of programming a VCR.
WebTV displays Web pages on your television screen. Even if your TV is much bigger than most computer screens, it can’t display as much information: TVs don’t have as much resolution as even a 640 by 480 monitor, though the WebTV’s S-Video port provides a slightly better picture for TVs that support S-Video. Many Web pages look quite different on a WebTV than they do in Netscape Navigator or Microsoft Internet Explorer. For instance, thanks to the interlaced nature of TV screens, horizontal rules flicker on a WebTV if they are only one pixel high. Generally speaking, text may wrap differently and graphics may appear elsewhere than the designer intended. Web pages designed for unusually large monitors (a bad idea in my opinion) will be difficult to deal with.
Real Updates — The latest WebTV version supports RealAudio, which enables Web users listen to concerts, newscasts, and other sounds in real time. The bandwidth of a modem connection provides high enough fidelity that voice (such as a newscast) sounds fine and music (such as a concert broadcast) is passable. Early WebTV buyers will find that their unit can update itself to include this feature and others; when the WebTV developers complete new abilities, each unit offers to retrieve the needed software and update itself. Updates takes several minutes by modem, so the WebTV asks if you’d like to take the time before it does so.
Email for Everyone — WebTV can do email, too, and can keep track of up to five private mailboxes. This kind of email is probably best suited to writing to the kids at college, or having Becky and Timmy drop Grandma a line. The WebTV can’t fit enough text on a TV screen to show much of an email message at once, and the (Helvetica-like) proportional font makes formatted email useless, but sending and receiving short messages should work fine.
This brings us to the issue of typing. Most Internet users will need to type from time to time, even if they never use email. To tell your WebTV to visit "www.cnn.com" or "www.tidbits.com" you must type the address. WebTV lets you use the remote control to hunt-and-peck on an onscreen keyboard reminiscent of the Newton’s; this is easy to master (you can even switch between the standard QWERTY typewriter layout and an alphabetical arrangement) but painfully slow.
The keyboard uses the same infrared remote control technology as the WebTV remote, so you can sit on the couch and type with the keyboard on your lap. It’s a compact keyboard, and might take some getting used to, but it’s much better for typing than the remote control.
Mark Likes It! I was surprised that the WebTV’s browser grew on me; I’ve enjoyed the couch-potato approach to Web surfing and appreciate the ability to pop up a Web page whose URL appears in a TV program or commercial. In other words, even long-time Internet users can be heavy WebTV users. Naturally, WebTV’s target market is the family that doesn’t have a computer, but I can see real value to adding a WebTV even for a connected family. While you’re at it, buy one for Grandma, too.
Bandwidth and Latency: It’s the Latency, Stupid (Part 1)
Years ago David Cheriton at Stanford University taught me something that seemed obvious at the time – if you have a network link with low bandwidth then it’s easy to put several in parallel to make a combined link with higher bandwidth, but if you have a network link with bad latency then no amount of money can turn any number of parallel links into a combined link with good latency. Many years have passed, and these facts seem lost on the most companies making networking hardware and software for the home. I think the time has come to explain it.
Speed & Capacity — Even smart people have trouble grasping the implications of latency on throughput. Part of the problem is the misleading use of the word "faster." Would you say a Boeing 747 is three times faster than a Boeing 737? Of course not. They both cruise at around 500 miles per hour. The difference is that the 747 carries 500 passengers where as the 737 only carries 150. The Boeing 747 is three times bigger than the Boeing 737, not faster.
If you were in a hurry to get to London, you’d take the Concorde, which cruises around 1,350 miles per hour. It seats only 100 passengers though, so it’s the smallest of the three. Size and speed are not the same thing.
On the other hand, if you had to transport 1,500 people and you only had one airplane to do it, the 747 could do it in three trips while the 737 would take ten. So, you might say the Boeing 747 can transport large numbers of people three times faster than a Boeing 737, but you would never say that a Boeing 747 is three times faster than a Boeing 737.
That’s one problem with communications devices today. Manufacturers say speed when they mean capacity. The other problem is that as far as end-users are concerned, the main thing they want to do is transfer large files more quickly. It may seem to make sense that a high-capacity, slow link would be the best thing for the job. What end users don’t see is that in order to manage that file transfer, their computers are sending dozens of little control messages back and forth. Computer communication differs from television or radio broadcasting in the interactivity of the communication, and interactivity depends on back-and-forth messages.
The phrase "high-capacity, slow link" above probably looks odd to you. It looks odd even to me. We’ve been used to wrong thinking for so long that correct thinking looks odd now. How can a high-capacity link be a slow link? High-capacity means fast, right? It’s odd how that’s not true in other areas. If someone talks about a high-capacity oil tanker, do you immediately assume it’s a fast ship? If someone talks about a large-capacity truck, do you immediately assume it’s faster than a small sports car?
We must start making this distinction again in communications. When someone tells us that a modem has a speed of 28.8 Kbps we have to remember that 28.8 Kbps is its capacity, not its speed. Speed is a measure of distance divided by time, and "bits" is not a measure of distance.
But there’s more to perceived throughput than issues of speed and capacity, namely latency. Many people know that when you buy a hard disk you should check its seek time. The maximum transfer rate is something you might also be concerned with, but seek time is more important. Why does no one think to ask about a modem’s seek time? Latency is the same thing as seek time: the minimum time between asking for a piece of data and getting it, just like the seek time of a disk, and it’s just as important.
Monkey On Your Back — Once you have bad latency you’re stuck with it. If you want to transfer a large file over your modem it might take several minutes. The less data you send, the less time it takes, but there’s a limit. No matter how small the amount of data, for any particular network device there’s always a minimum time that you can never beat. That’s called the latency of the device. For a typical Ethernet connection the latency is usually about 0.3 ms (milliseconds, or thousandths of a second). For a typical modem link, ping and traceroute tests show the latency is typically about 100 ms, about 300 times worse than Ethernet.
If you wanted to send ten characters (at eight bits per character) over your 33 Kbps modem link you might think it would take:
80 bits / 33000 bits per second = 2.4 ms
Unfortunately, it doesn’t. It takes 102.4 ms because of the 100 ms latency introduced by the modems at each end of the link.
If you want to send a large amount of data, say 100K, then that takes 25 seconds, and the 100 ms latency isn’t very noticeable, but for smaller amounts of data, say 100 bytes, the latency overwhelms the transmission time.
Why would you care about this? Why do small pieces of data matter? For most end-users it’s the time it takes to transfer big files that annoys them, not small files, so they don’t even think about latency when buying products. In fact, if you look at the boxes modems come in, they proudly proclaim "28.8 Kbps" and "33.6 Kbps", but they don’t mention latency at all.
What most people don’t realize is that computers must exchange hundreds of little control messages in the process of transferring big files, so the performance of small data packets directly affects the performance of everything else on the network.
Now, imagine you live in a world where the only network connection you can get to your house is a modem running over a telephone line. Your modem has a latency of 100 ms, but you’re doing something that needs lower latency. Maybe you’re trying to do audio over the network. 100 ms may not sound like much, but it’s enough to cause a noticeable delay and echo in voice communications, which makes conversation difficult. Maybe you’re playing an interactive game over the network. The game only sends tiny amounts of data, but that 100 ms delay makes the interactivity of the game decidedly sluggish.
What can you do about this? Absolutely nothing. You could compress the data, but that won’t help: the data was already small, and that 100 ms latency is still there. You could install 80 phone lines in parallel and simultaneously send a single bit over each phone line, but that 100 ms latency is still there.
In other words, once you have a device with bad latency there’s nothing you can do except replace the device with one that has good latency.
Modem Latency — Current consumer devices have appallingly bad latency. A typical Ethernet card has a latency less than 1 ms. The Internet backbone as a whole also has very good latency. Here’s a real example:
- The distance from Stanford in California to MIT in Boston is 4320 km
- The speed of light in vacuum is 300 * 10^6 m/s
- The speed of light in fibre is 60 percent of the speed of light in vacuum
- The speed of light in fibre is 300 * 10^6 m/s * 0.6 = 180 * 10^6 m/s
- The one-way delay to MIT is 4320 km / 180 * 10^6 m/s = 24 ms
- The round-trip time to MIT and back is 48 ms
- The current ping time from Stanford to MIT over today’s Internet is about 85 ms:
- 84.5 ms / 48 ms = 1.76
- The hardware of the Internet can currently achieve speed of light + 76 percent
So the Internet is doing pretty well. It may get better with time, but we know it can never beat the speed of light. In other words, that 85 ms round-trip time to MIT might reduce a bit, but it’s never going to beat 48 ms. The speed can improve a bit, but it isn’t going to double. We’re already within a factor of two of the theoretical optimum. I think that’s pretty good – not many technologies can make that claim.
Compare this with a modem. Suppose you’re 18 km from your Internet service provider. At the speed of light in fibre (or the speed of electricity in copper, which is about the same) the latency should be:
18000 / (180 * 10^6 m/s) = 0.1 ms
Although modems vary, the latency over your modem is anywhere from 75 ms to about 130 ms. Modems are currently operating at a level that’s more than 1,000 times worse than the speed of light. And, of course, latency cuts both ways. If a one-way trip using a typical modem has a latency of about 130 ms, then the round-trip delay is about 260 ms.
Of course no modem link will ever have a latency of 0.1 ms. I’m not expecting that. The important issue is the total end-to-end transmission delay for a packet – the time from the moment the transmitting software sends the packet to the moment the last bit of the packet is delivered to the software at the receiving end. The total end-to-end transmission delay is made up of fixed latency (including the speed-of-light propagation delay), plus the transmission time. For a 36 byte packet the transmission time is 10 ms (the time it takes to send 288 bits at a rate of 28.8 Kbps). When the actual transmission time is only 10 ms, working to make the latency 0.1 ms would be silly. All that’s needed is that the latency should be relatively small compared to the transmission time. About 5 ms would be a sensible latency target for a modem that has a transmission rate of 28.8 Kbps.
Understanding Transmission Delay — At each hop, overall transmission time has two components: per-byte transmission time and fixed overhead. Per-byte transmission time is easy to calculate, since it depends only on the raw transmission rate. The fixed overhead comes from sources like software overhead, hardware overhead, and speed of light delay.
For modems, the distance is typically short, so speed of light delay should be negligible. However, the data rate is low, so it takes a long time to send each byte. The per-byte transmission time should account for most of the time taken to send the packet. To send 100 bytes over a 28.8 Kbps modem should take:
100 bytes * 8 bits per byte / 28800 bits per second = 28 ms
That means the round-trip should be twice that, or 56 ms. In reality it’s often more like 260 ms. What’s going on? Two other factors contribute to the overall time.
First, modems are often connected via serial ports. Many modem users assume that if they connect their 28.8 Kbps modem to their serial port at 38.4 Kbps they won’t limit their performance, because 38.4 is greater than 28.8. It’s true that the serial port won’t limit throughput, but it will add delay, and delay, once added, never goes away. So, sending 100 bytes down the serial port to the modem should take:
100 bytes * 10 bits per byte / 38400 bps = 26 ms
Second, modems try to group data into blocks. The modem will wait for about 50 ms to see if more data is coming that it could add to the block, before it starts to send the data it already has. Let’s see what the total time is now:
26 ms (100 bytes down serial port to modem)
50 ms (modem’s fixed waiting time)
28 ms (transmission time over telephone line at 28.8 Kbps)
26 ms (100 bytes up serial port at receiving end)
Thus, the total time is 130 ms each way, or 260 ms for the round-trip. To make things worse, imagine that the 100 bytes in question are used by an interactive game being played by two players. If both players are connected to their respective Internet service providers by modem, then the total player-to-player round-trip delay is 520 ms, which is hopeless for any tightly-coupled interactivity, and this is reflected in the state of today’s networked computer games. Can we do anything to improve this?
Improving Latency — One thing to notice is that the 38.4 Kbps serial connection between the computer and the modem, which many people don’t think of as being the bottleneck, turns out to be responsible for 52 ms of the delay. In fact, it’s the single biggest contributor – almost twice as much as the actual communication over the telephone line. What can we do about this? If you can connect the modems at both ends at 115.2 Kbps instead of 38.4 Kbps, the serial port delay can be reduced to 9 ms at each end. Better still, if you can use an internal modem on a card instead of one connected through a serial port, the delay can be eliminated entirely, leaving a round-trip delay of only 156 ms.
Having eliminated the serial port delay, the next biggest contributor to delay is the fixed 50 ms overhead built into the modem itself. Why is there a fixed 50 ms overhead? The reason is that modern modems offer lots of "features" – namely, compression and automatic error correction. To get effective compression and error correction, modems must work on blocks of data, which means characters are corralled in a buffer until the modem has received a block big enough to work on efficiently. While the characters accumulate in the modem’s buffer, they’re not being sent over the phone line. Imagine you’re sending a small amount of data, 100 bytes. That’s not enough for the modem to work on effectively, so it would like a bigger block. After you have sent the 100 bytes to the modem, it waits to see if more characters arrive. After some time – about 50 ms – it decides no more characters are coming, so it compresses and ships what it has. That 50 ms the modem spends hoping for more data is unrecoverable, wasted time.
Modems were originally designed with remote terminal access in mind. They were meant to take characters – typed by a user on one end and transmitted by a mainframe on the other – and group them into little blocks to send. The only indication that a user had finished typing (or that the mainframe had finished responding) was a pause in the data stream. No one told the modem when no more characters would be coming for a while, so it had to guess.
This is no longer the case. Most people use modems to connect to the Internet, not old mainframes, and Internet traffic is made up of discrete packets, not a continuous stream of characters.
There’s a simple fix for this problem. We could make modems aware that they are sending Internet packets. When a modem sees the PPP (Point to Point Protocol) End-Of-Packet character (0x7E), it could realize that the packet is complete and immediately begin compressing and sending the block of data it has, without pausing for 50 ms. This simple fix would eliminate the 50 ms fixed overhead, and should allow us to achieve a 56 ms round-trip delay over a modem PPP connection – almost five times better than what typical modems achieve today.
[Tune in next week as Stuart explains how bandwidth and latency interact, and how software can try to cope with the latency problem.]