Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
Cellphones Network Wireless Networking

Mobile Carriers Impose Handicaps On Smartphones 174

Nrbelex writes "A team at the University of Michigan and Microsoft Research has uncovered, for the first time, the frequently suboptimal network practices of more than 100 cellular carriers. By recruiting almost 400 volunteers to run an app on their phones that probes a carrier's networks, the team discovered, for example, that one of the four major U.S. carriers is slowing its network performance by up to 50 percent (PDF). They also found carrier policies that drained users' phone batteries at an accelerated rate, and security vulnerabilities that could leave devices open to complete takeover by hackers."
This discussion has been archived. No new comments can be posted.

Mobile Carriers Impose Handicaps On Smartphones

Comments Filter:
  • What is the world coming to!

  • by ArsenneLupin ( 766289 ) on Friday August 26, 2011 @12:04PM (#37220610)
    Why the hell would they do that?
    • by fuzzyfuzzyfungus ( 1223518 ) on Friday August 26, 2011 @12:07PM (#37220642) Journal
      " Eleven carriers are found to impose a quite aggressive timeout value of less than 10 minutes for idle TCP connections, potentially frequently disrupting long-lived connections maintained by applications such as push-based email. The resulting extra radio activities on a mobile device could use more than 10% of battery per day compared to those under a more conservative timeout value (e.g., 30 minutes)"

      Apparently, the desire is not to drain the battery; but the telco is willing to do so in order to cut down on the number of TCP connections they need to deal with.
      • by redshirt ( 95023 ) on Friday August 26, 2011 @12:21PM (#37220826)

        Another issue is that a lot of developers are writing mobile applications the same way they might for a desktop computer in an office with a significantly more reliable Internet connection. They aren't considering the reality that a connection may be intermittent, or drop off unexpectedly, and the effort the phone goes through to re-establish that connection.

        • by erroneus ( 253617 ) on Friday August 26, 2011 @12:43PM (#37221028) Homepage

          Mod this fella up... or kill him... he's a redshirt and is expendable.

        • by Lumpy ( 12016 )

          OR the fact that a 3G connection is slow as hell at times, unreliable as hell at times, or not really there. This is in backwater places like NYC or Chicago.

          • Most places, including most urban places, are not surrounded by tall buildings. Those few that are shouldn't really expect better radio connectivity than if they were in the forest. The only solution for those backwater glass jungles is going to be lots of wifi hotspots.

        • And they shouldn't. This functionality should be handled at the transport/network/data-link layers of the telecommunications stack, not in the app.
          • Developers should understand the impact that their app has on the device that it runs. Not understanding that your connection constantly polling (such as with a weak signal, or no signal) is killing the device's battery because it takes significantly more effort by the hardware to create the connection in such conditions, simply means that you are writing a bad app almost regardless of its other features.

        • by jo42 ( 227475 ) on Friday August 26, 2011 @01:04PM (#37221250) Homepage

          I've seen 'tard mobile app developers keeping one, two or three continuously open connections back to a server for long poll. Then I ask them what if they get 10,000 or 100,000 simultaneous mobile users. Someone needs to beat them silly with a clue stick.

          • Stop hanging around with "devs" that work for `Tard Mobile. With friends like that, what did you expect?

          • by guruevi ( 827432 )

            By the time they get to that user base (10,000 is easily handled on any modern server, 100,000 not so much) they have either already failed or been bought out leaving someone else with the mess to clean up.

            They might also use Amazon or something similar to host their data and not care about the overhead. Then they'll also complain that it's "expensive" to run a hosted app and that Apple, Google or whoever they distribute through takes too much of their money.

        • by EXrider ( 756168 )
          According to TFA, they know that carriers are buffering traffic and they think that carriers may be doing deep packet inspection, causing TCP timeouts instead of retransmits:

          Surprisingly, packets of data sent across this network are buffered by the carrier itself. This means that when a packet of data fails to make it to its destination—a common occurrence on noisy wireless networks—it cannot be instantly retransmitted, as it would normally be on the Internet. Instead, the sending device mus
      • Yabut... from TFA, instead of 30 minute timeouts, they went to values like 10 minutes. Strikes a perfectly niave person as perfectly reasonable... 10 minutes on a PORTABLE DEVICE which may wander in and out of tower range (I'm looking at YOU AT&T) seems like a good balance.

        Anyone with real network care to answer?

        Or just armchair network engineers?

        • I think we need more of a definition of what constitutes a "time out" - an idle tcp connection consumes practically no bandwidth and should only use resources on the end-points (i.e. the phone and the web server). So I don't see what sort of value the telco would gain by causing idle tcp connections to disconnect faster. If anything, it could lead to extra traffic as the connection gets re-established more frequently which probably means more than just the basic tcp 3-way handshake because it will involve

          • by kwark ( 512736 ) on Friday August 26, 2011 @12:44PM (#37221030)

            My telco uses NAT, idle connection still takes resources from the connection tracker.

          • by jhoegl ( 638955 )
            The point for canceling Idle TCP connections is to free up that port # for that network.
            I will admit that I doubt one node would overload with NAT/PATs because that would be a lot of users. Unless of course their phone had a bunch of stupid useless gadgets that continually need to talk to the internet.

            Frankly, battery life does not concern me, it is more of their IP spoofing vulnerabilities that concern me.
            We have already seen many applications that do some things to cause your phone bill to go up, such
            • by sjames ( 1099 )

              Sounds like they should deploy IPv6. That would reduce the load on the NAT without causing these problems.

              • You've still got to bridge them into the IPv4 network in order for them to access the bulk of the present day internet. For that, you need to multiplex all those IPv6 addresses to a smaller number of IPv4 addresses and for that, you need connection tracking.
                • by sjames ( 1099 )

                  It's not a complete solution, but at least some of the connections can go untracked. As a side benefit, people might actually learn by word of mouth that on a cellphone IPv6=faster. That would finally get the sales and marketing people behind the upgrade for a great many servers.

          • State-tracking hardware would use resources (RAM specifically) accounting for those idle connections.

          • So I don't see what sort of value the telco would gain by causing idle tcp connections to disconnect faster.

            Well, if they're evil enough, they could gain the value of making you dissatisfied with your phone.

            "This piece'a shit! The battery life sucks and the connection is slow as crap. I'm'a go out and buy a Bionic the minute it comes out." ... And with me, if that's their strategy, it worked. -sigh-

        • by Cyberax ( 705495 ) on Friday August 26, 2011 @12:44PM (#37221032)

          I was involved in building a mobile operator network.

          It's typical for operators to run stateful TCP proxies to overcome the bandwidth-delay problem with TCP/IP. Without these proxies a lot of TCP/IP stacks have very poor performance. As far as I remember, we used 20 mins. timeout to conserve translation slots (which were limited by hardware).

          Second, a lot of providers do NAT. Which should be self-explanatory.

          • by tlhIngan ( 30335 ) <slashdot&worf,net> on Friday August 26, 2011 @12:57PM (#37221168)

            It's typical for operators to run stateful TCP proxies to overcome the bandwidth-delay problem with TCP/IP. Without these proxies a lot of TCP/IP stacks have very poor performance. As far as I remember, we used 20 mins. timeout to conserve translation slots (which were limited by hardware).

            Second, a lot of providers do NAT. Which should be self-explanatory.

            It depends on the plan and provider, but you're absolutely right. It's what differentiates a featurephone "social networking" plan from a "blackberry data plan" from a "smartphone data plan" and a "laptop/vpn plan".

            After all, if a "social networking" plan gets you on facebook, why not pay $5/month for that and tether your PC to it? Why do you have to pay the $50/month for 1GB on a "laptop" plan when your smartphone gets 5GB for $20?

            It's all in the differentiation of services - the mobile network LOOKS like IP, but it isn't. Using proxies, firewalls, NAT, NATx2, etc.

            If you want the freest possible Internet connectoin, you've gotta pay for it (the "VPN" tier should get you a real exposed IP, while the "laptop" tier gets you NAT+firewall typically, etc).

            Someone needs to do a comprehensive study of all the tiers available and what they provide - are they NATed (and how many times)? Firewalled? Proxied (transparent or not) (transparent proxies are extremely common on smartphones - small screens don't need full-res images)? etc. What ports allow traffic (80, 443 only are common and most users won't notice).

          • by guruevi ( 827432 )

            Maybe not messing with TCP traffic would incentivize the creators of those stacks (and I know exactly who you're talking about) to update or write better systems. It's never a good idea to mess with someone's TCP traffic no matter what the problem is. TCP does a VERY good job at handling bandwidth issues, routing problems and a host of other problems any type of connection might have.

            IPv6 is being implemented way too late. If you as a carrier didn't implement IPv6 about 5-10 years ago when everybody started

            • by Cyberax ( 705495 )

              Nah, TCP's bandwidth behavior sucks.

              It's limited by latency-bandwidth product, so if you have a fat channel but with big latency (i.e. mobile) you'll get slow connections, even though there's plenty of bandwidth available. TCP window scaling helps, but it often fails miserably if there's a slight packet loss. Also, some older phone models have bugs in its implementation, so we had to force it off on proxy side.

        • by iCEBaLM ( 34905 ) on Friday August 26, 2011 @12:53PM (#37221134)

          Well, ActiveSync (exchange push) is one good use of these idle TCP connections. The thing though is that idle TCP connections use absolutely no bandwidth. ActiveSync will open an HTTP TCP connection and ping every now and then, increasing the time between pings to find out how long the network supports idle connections. Once it stops receiving replies to the pings, it tears down that connection, opens a new one, and keeps the ping interval at the last known successful time. If there's no actual data being processed (new emails being sent/received, calendar entries, etc) then no traffic other than the pings will be passed, and these are small packets. The goal being to find the longest time possible that the connection can stay open between having to send pings, as any data uses bandwidth, battery, etc. Once ActiveSync

          Setting up a TCP connection takes way more bandwidth and battery than leaving an idle connection open. And having to keep doing it, over and over, if the network operator is killing idle TCP connections, will drain a battery extremely quickly, and generate way more network traffic in the long run.

          So why do carriers do it? Shitty NAT implementations. Up here in Canada Rogers, until recently, used NAT and the 10.x.x.x block for all wireless data users. Their NAT router would kill idle connections quickly to keep overload ports available for all it's customers. At one point it got so bad that the battery on my iphone 3G was draining in 2 hours tops if I kept push on for my exchange server.

          • The carriers don't want to spend the money for NAT boxes, firewalls, deep-packet-inspection boxes, etc. with multiple open connections per subscriber--it eats up memory for connection information.

      • by drolli ( 522659 ) on Friday August 26, 2011 @12:32PM (#37220932) Journal

        Every push mail client which will malfunction or only slowly function by this, or the battery consumption of which (see the android battery stats) will drive the customer to turn it off will motivate the customers to use text messages for urgent things.

        If they manage to drive away 10% of the push mail users to sending 2SMS per day, they will already earn more on this than on the data transfer for the rest (lets not forget that in a flatrate they dont earn money on pushmail).

      • by GooberToo ( 74388 ) on Friday August 26, 2011 @12:59PM (#37221186)

        Apparently, the desire is not to drain the battery; but the telco is willing to do so in order to cut down on the number of TCP connections they need to deal with.

        That is exactly right. The issue is, many carriers still have large NAT deployments. This means they must NAT every connection originating from every smart phone in their network. In the old days this wasn't a problem because the number of connections were typically fairly small and limited. Now that smart phones are general purpose computing devices, the number of connections which must be tracked have exploded. In other to more closely guard their finite resources, they lower their timeouts.

        Of course, the proper solution is to migrate all smart phones to IPv6 and completely stop NATing. Its a win-win for everyone at that point.

      • by gl4ss ( 559668 )

        the answer is then sw developers making keepalives smaller than that.

        it sucks for everyone involved.

    • Does it save some resource (maybe electricity) on the tower side by any chance?

    • Dead phones don't poll the network, cutting down on resources needed? (Just a WAG). OTOH, dead phones don't go over text or voice minute limits, either, so maybe it's a case of incompetence rather than malice (so hard to tell with the Telcos)

    • Because at about the one year mark, people start getting itchy to get a new phone. A battery draining faster than it used to will often be the nudge they need to drop the money on a new phone, especially when the batteries in question are a significant fraction of the cost of a new phone.

      IE: cell companies acting like the slime they are.

    • Re: (Score:3, Interesting)

      by firex726 ( 1188453 )

      Yea, they usually tout battery life as a selling point over the competition.
      Plus if the battery goes dead, you cannot use up your data/minutes and get hit for overages.

    • Re: (Score:2, Interesting)

      by geekmux ( 1040042 )

      Why the hell would they do that?

      Willfully slow the network down...on purpose? Why the hell would they do that?

      Willfully charge extra for ring tones or ring-back tones? Why the hell would they do that?

      It's the same answer all around...because they can.

      Oh yeah, and because we let them, and prove it by bending over every month to pay the phone bill and saying, "Thank you, may I have another?" afterwards.

    • Sooner your battery dies the sooner you buy another phone and a phone not on the network isn't using up resources.
    • Sprint for example includes some spyware-y stuff called "CarrierIQ" in all of their phones. It uses battery to log and phone home what you're doing on your phone

    • It's probably just sloppy code. In Europe, you can buy a phone, then choose a carrier. This is the way it should be. Carriers are just dumb pipes.
  • No names? (Score:5, Insightful)

    by XanC ( 644172 ) on Friday August 26, 2011 @12:08PM (#37220652)

    How does this help me without naming names?

  • Can somebody please do this for Orange in the UK, and publish their results? They're unbelievably bad in central London. I can walk around Soho for 15 minutes and find what I'm looking for before maps load on my iPhone4. I had better service using the phone whilst on holiday in Greece last October... problems with network performance and timeouts returning when I was on the Tube from Heathrow.

  • by MindPrison ( 864299 ) on Friday August 26, 2011 @12:17PM (#37220770) Journal

    ...about it either.

    I moved out on the countryside, thinking that Sweden was one of the most developed & connected countries in the world, well...turns out it's something of a fad.
    Tried 3 different operators, Telenor, 3-Sweden and Comviq (essentially Tele2 on the cheap), Turns out that Telenor shares Cellphone-Relay point (antenna) with 3-Sweden, and Comviq has their own (again, owned by Tele2)...getting confusing yet?

    The thing is, I tried all of these without any good results, oh...the signal was at FULL capacity...full power (all 4 bars lit), but the oh-so-known 404 Error turned up every 2nd web page or so, sometimes I had to wait 10 minutes for the 6mbit connection to load one single web page.

    Then I got savy and tried a trick like "Kick-the-other-users-off-the-carrier"...how does that work, you ask? Simple...just disconnect to the network (3G!) and connect again. This logs you on at full speed, well...people found out about this and a storm of complaint came on, denied by all the telecompanies...of course.

    And then I called support, and they finally called back and told me - twice (two different technicians calling each time) - that your cellphone carrier is OVERLOADED.

    Then I asked them, well...will you expand this capacity since it's as you say ...overloaded? The answer was NO. From BOTH of them.
    The town of 13.000 people is too small to add another 1 Mill SEK (Swedish currency) cellphone antenna relay carrier...so we won't do that.
    BUMMER.

    Turns out they solved this by simply "sharing" the speed amongst the users, by limiting it. Not admitting this of course...but the results amongst our neighbors and me tells it's own story.

    Needless to say, I switched to LandLine based internet, good ol'l ADSL (or VDSL...as it's called now) and the speed blazes off a steady 13-14 Mbit without as much as a hickup. Despite this, the door-to-door sellers, claim that we all should DITCH the old wired connection because the new wireless one is MUCH BETTER and MUCH CHEAPER...

    Yeah ...riiight...we've experienced that... O__O

    Furthermore people are actually dumb enough to fall for it, and the masterplan from all the telecompanies is to DITCH the LANDLINES because ...in their own words...are too expensive to maintain.

    Goodbye reliable internet...People...please start protesting against this in YOUR neighborhood!

    • The town of 13.000 people is too small to add another 1 Mill SEK (Swedish currency) cellphone antenna relay carrier...so we won't do that.
      BUMMER.

      For those of us in the US, this works out to slightly over $12 a person.

    • by Kreigaffe ( 765218 ) on Friday August 26, 2011 @01:28PM (#37221518)

      HA! Thank you.
      This is precisely the sort of thing I've tried to argue about in the past and was repeatedly shouted down and told that I'm just an ignorant American and don't know anything.

      The awesome connectivity and speeds has more to do with population concentrations than anything else. America's a huge place, and not a very old place, so our population centers are, er, not very centered or contiguous. New York City is huge, Philly is huge, and the Baltimore/DC metro area is huge, but there's about 2 hours of driving through nothing to get between them (and baltimore/DC are about 30 minute to an hour apart, depending on traffic). Travel a half hour east from any of those places and you're either in affluent suburbs, or straight-up rural areas, with farms, and cows.

      A glance at a population density map is really all anyone needs to figure that out, but some people just don't get it. The cool thing to do is to consider anything Europe or Asia to be better than anything America, and that the sole reason for it is simply American incompetence. So frustrating. Impossible to actually ever discuss or improve anything when you're dealing with people like that, completely divorced from reality.

      'course your landlines are faster, but that's also tied in to land area and population density.. and also WW2 actually. Infrastructure upgrade cycles! 'course we missed out on our last one! Fucking US Gov't gave the telecoms god knows how much money to lay fiber, to build modern high speed backbones across the country. Good luck finding where that money ever went to, that was coming up on 20 years ago now iirc..

      • by hitmark ( 640295 )

        Not quite, as the arument about speed is most often about wired net connections, not wireless.

        Note that while the wireless of his area was saturated, his wired connection in a town of 13000 was 12-14Mbit/s via DSL. My understanding is that even in the densest of US cities your lucky to get 1/100 of that without fios.

        • Err, I frequently get 2MB/s, during the middle of the day, no problem. Cable, not DSL -- the DSL in this area was.... less than reliable.

          The argument carries over, though -- it's infrastructure. Infrastructure is infrastructure, wired or wireless.. more or less.

          In Europe, you've got these INCREDIBLY dense population centers that extend, well.. the whole damned continent, really. The only sparsely inhabited areas of Europe are in the far north, up near the Laplanders. That's roughly analogous to Ameri

          • I live in the US. I have consumer cable and get burst speeds of 30Mbps and sustained 12Mbps down. My upload clocks at 6Mbps sustained.
      • How the hell do you get to DC from NYC in 2 hours?! Just ram all the cars out of the way on I95?

        • 2 hours from NYC to Philly, and then 2 more to DC! Wasn't entirely clear about that was I hehe

          although, I do like this "ramming all the cars on I-95" idea of yours. Do you have a newsletter that I may subscribe to it?

          • But of course! In fact, in the latest issue, I've expanded my driving tactics due to a move to Arizona. Subscribe now to learn such techniques as "Yield-less Yielding," "Causing Traffic Jams On Roads With Empty Lanes," and "Rain on the Road: DRIVE LIKE SHITCOCK!"

      • by wrook ( 134116 )

        There is some truth to what you say, but I think you may be overestimating the population density of Asia. For example, I live in Japan and the other day a nice salesman from NTT (the state run telephone company) showed up to tell me that fibre was available in my town. For less than 5000 yen per month (about $60?) I can get a 200 Meg connection. I live in a small farming town with a population of about 25K. My prefecture (Shizuoka) has a total population of 3.7 million and a population density of 485 pe

        • A ha! And there's the thing.
          Just looking at the numbers, New York state and your prefecture are comparable.. but the numbers don't tell the whole story. That population density for NY is based on the whole state. New York is a *large* state. New York is 1/3 the size of Japan.. with ~1/6 the population. And, as you said, they've got NYC.. which totally skews the numbers so far as population density for the state is concerned.

          Most of NY state is.. well. Here, just take a look..
          http://en.wikipedia.o [wikipedia.org]

      • by sznupi ( 719324 )
        Before "people just don't get it" you should realize the density of "big three" Nordic countries is much lower than the US... (land area not being the same kind of factor, what matters in the end is how many people pay for each proportional part of infrastructure). Sweden has 2/3 the population density of the US, Finland 1/2, Norway 2/5.

        You should realize how different they are from the rest of Europe (not the least because of separation by a sea...); and developing their infrastructure very much indepen
    • by hitmark ( 640295 )

      Technically speaking, the speed sharing happens automatically. This because wireless (and cable broadband, heh) is a shared medium. Each active connection takes up a slice of time nobody else can use.

      Luckily they keep coming up with ways to make the slices thinner and thinner, but once there are enough users on a given cell there will be a drop in speed pr user.

      Then again, the advertized speed for any wireless system is for a single user on the cell under ideal (laboratory?) conditions. No way will you see

  • by geekmux ( 1040042 ) on Friday August 26, 2011 @12:34PM (#37220950)

    "...the team discovered, for example, that one of the four major U.S. carriers is slowing its network performance by up to 50 percent (PDF). They also found carrier policies that drained users' phone batteries at an accelerated rate, and security vulnerabilities that could leave devices open to complete takeover by hackers."

    Uh, a team "discovered" this?

    Telcos are screwing with us and not delivering what they advertise. Yeah, wake me up when there's actual news to report instead of wasting time and money proving the painfully obvious.

    Oh, and where the hell are these "more than 100" carriers?!? I think I can name five off the top of my head. I thought the giants pretty much bought everyone else.

    • Oh, and where the hell are these "more than 100" carriers?!? I think I can name five off the top of my head. I thought the giants pretty much bought everyone else.

      Probably counting resellers and itty-bitty single-city carriers.

      • Oh, and where the hell are these "more than 100" carriers?!? I think I can name five off the top of my head. I thought the giants pretty much bought everyone else.

        Probably counting resellers and itty-bitty single-city carriers.

        You're probably right, but in the case of those "itty-bitty" carriers, would anyone be really surprised to find less-than-stellar performance? I mean c'mon, there's something to be said for finding the gateway router not in a wiring closet, but in an actual closet.

    • The reason to do a study like this is as follows:

      You: My anecdotal evidence is that the carriers are screwing with us their customers
      Politician: They would never do that!

      Scientist: This study shows how the carriers are screwing with their customers
      Politician: I can't ignore scientific evidence

      (at least it should work that way...please no replublitard posts...)

      It is much harder to ignore gathered evidence than what you or I see happening. Maybe now we can get the FCC to go after some of these carriers a lit

      • by Aryden ( 1872756 )
        Right, and as soon as the FCC does, Congress will try to pass a law saying they are overstepping their authority (remember net neutrality?)
    • What you call "painfully obvious" others would rightfully call "zero evidence". These people gathered data, aka evidence, that backs up what we all knew but could never prove - until now. Well, I guess we still can't since they won't tell us who is doing the throttling.

  • by Belial6 ( 794905 ) on Friday August 26, 2011 @12:38PM (#37220982)
    This must be the kind of app that the carriers meant when they said that it would be a problem if they allowed "Unauthorized Applications" on the network. See, they were right all along.
  • They also found carrier policies that drained users' phone batteries at an accelerated rate, and security vulnerabilities that could leave devices open to complete takeover by hackers.

    Could this be interpreted as tampering? I'm fairly certain that AT&T doesn't need to ping my phone every 5 minutes when I'm just sitting still (I know, I can hear the squawk on my radio). Its one thing to throttle your own network (ostensibly to preserve bandwidth), but this sort of behavior goes beyond that. Now, find a state with a law that only requires a "reckless or negligent" act. And one with no minimum monetary loss to qualify as a felony.

    Then, sit back and watch the antics ensue.

    • by Miseph ( 979059 )

      Using the law to go after AT&T or Verizon? That's really fucking funny.

    • They're just shutting down the connection and forcing the phone to re-establish it. Annoying, but I doubt it's illegal since every firewall and NAT box on the net has the same timeout mechanisms...they're just set for longer delays.

  • Prohibit any carrier - wireless or not - from advertising "Internet" unless they mean pure, unfiltered, unadulterated Internet.

    Let them advertise and sell "AT&T Data Access to the parts of the Intertubes we think you'll like at a speed we think you'll pay for" if they want to, just don't let them call it "the Internet."

  • We don't care!

    We don't have to

    We're the phone company.

  • by kheldan ( 1460303 ) on Friday August 26, 2011 @06:46PM (#37224180) Journal
    Everybody providing broadband or wireless internet connectivity does the same thing: overstate the capacity of their network as a selling point, then oversell the capacity to maximize profits. I could go into business as a broadband provider and claim "Up to a TERABIT per second downloads!" and it's not false advertising because I said the two magic words "up to". Never mind that I'm overselling the network capacity by 100 times and that if everybody got on and downloaded high-def movies at the same exact moment, crashing the whole network; I said "up to", I didn't claim a guaranteed minimum throughput, so I'm not lying; tough shit.

    Everybody needs to know this, and understand it. Once that happens then everyone can get together and force them to change. Until then they'll claim whatever they want in order to get our money, and they'll get away with it.

Our policy is, when in doubt, do the right thing. -- Roy L. Ash, ex-president, Litton Industries

Working...