Browse By

IDEA #3 – ShareMy.net (”share my internet”)

I’ve written about this idea in the past (here and here). ShareMyWifi (I own ‘ShareMy.net’ — “share my internet”) — Have you ever been somewhere and didn’t have an Internet connection (airport, hotel)? Or maybe you have the Internet connection and want to monetize it a bit (maybe you spent $6.95 for an airport wifi connection and would like to split that cost). Or you live in an area with tons of wifi Internet connections — and you’d rather not pay $50 per month for your own connection (or flip side of that coin).

My idea is that… you would install a piece of software on your computer — on your PC the software would sit in your system tray. The software would display other wifi Internet connections around you that are either free (open, unprotected) or that use ShareMy.net (have this software installed and running). If you need an Internet connection, you are a buyer of wifi — if you have an Internet connection, you are a seller of wifi. There would be a credits/cost setup — if you share your connection, you’d either get paid cash or receive future credits on the system (when you lack an Internet connection) — if you need Internet, you’ll pay money. My business idea acts as the gateway and takes a cut of collected fees.

This is a software solution — there is a hardware solution that is trying to take off, but I think software is the optimal solution — tapping into using user wifi network cards. Apparently from what I’ve researched — typical wifi cards can only connect to one network at a time (or broadcast as a network). However, my research discovered that for Windows PCs — you could create a virtual device that would essentially make your computer appear to have 2 wifi cards in it (even though there’s only one). Thus, the one wifi card could broadcast you to the ShareMy.net network — and the other wifi card would connect to someone’s Internet connection in the ShareMy.net network. Thus, there’s an input and output network connection at this point.

If I need someone’s Internet connection, I connect to the network that person is broadcasting — and much like Wayport Internet connections (found at airport), every website I try to reach simply redirects me to a ‘ShareMy.net’ webpage where I can purchase the Internet connection (maybe it gives me some information on the specific connection’s up-time and bandwidth speed. There would be certain service requirements — specifically up-time and bandwidth speed — or else the user is charged less (and the seller is paid less).

Another feature of this software might be that it bridges Internet connections together — thus, instead of connecting to 1 of the 4 available wifi networks — your connections are bridged to increase your speed from say 100 kbps to 400 kbps. See below:

Risks: Will the world eventually be blanketed by free wifi? Can Linux and Macs emulate a second wifi card?

Revenues: Sellers (“sharers”) of Internet connections get paid for sharing their connection — we collect all money and receive a percentage of the revenue collected on each sale.

More Technical Research Info:
Microsoft Research Link 1

Microsoft Research Link 2

From Corey Hickey, a consultant: Strictly speaking, wireless cards are only designed to handle one connection at a time. Microsoft’s Virtual Wi-Fi is an interesting idea, but it still operates by switching the wireless card back and forth between two networks.

Microsoft Research Link 3 (PDF DOWNLOAD)

They appear to have put a lot of thought into the idea, so it might be a viable approach, but I would be skeptic of its utility for routing until I see the results of such a test. Like the paper above mentioned, the crucial factor is the time it takes to switch between two networks. The paper says that, when using commodity hardware, they were able to achieve 300ms for connecting to an infrastructure network and 170ms for connecting to an ad-hoc network. That might be usable. I really don’t know. The trouble is that Internet communications require a significant amount of two-way negotiation, which would necessitate the wireless card to be constantly switching between the two networks. At best, latency would be like that of a slow dial-up connection, but bandwidth might be decent.

  • http://www.vestedventures.com Steve Poland

    An email I wrote in the past about this…
    Steve Poland wrote:
    > I want to create an application that allows a user to install it on
    > their Windows XP/NT/98/2000 machine. Assume that user (“Andy”) has a
    > wi-fi internet connection (let’s assume they are at Starbucks using
    > T-Mobile’s service). Now let’s say there’s another user at that
    > Starbucks, “Bob”. Bob doesn’t know Andy — but Bob doesn’t want to pay
    > $6.95 for a Starbucks internet connection. Bob opens up his ‘wireless
    > connections’ to see if he can bum an internet connection off anyone. He
    > sees Andy’s …
    >
    > Andy doesn’t want to share his $6.95 Starbucks connection for free. But
    > Andy has my application installed so that he can share his internet
    > connection and earn money off it (or credits). Anyhow, Bob connects to
    > Andy’s wi-fi connection. [NOTE: A MAJOR QUESTION I HAVE IS — CAN ANDY
    > BE CONNECTED TO THE INTERNET WIRELESSLY VIA STARBUCKS, AND ALSO APPEAR
    > TO BROADCAST HIMSELF AS A WIRELESS ACCESS POINT FOR BOB TO CONNECT TO?
    > OR IS A COMPUTER WITH ONLY 1 WIRELESS CARD ONLY ABLE TO CONNECT TO
    > STARBUCKS, BUT NOT ABLE TO ALLOW INCOMING CONNECTIONS TOO?]

    Strictly speaking, the answer to that question is that wireless cards
    are only designed to handle one connection at a time. Microsoft’s
    Virtual Wi-Fi is an interesting idea, but it still operates by switching
    the wireless card back and forth between two networks.

    ftp://ftp.research.microsoft.com/pub/tr/tr-2003-46.pdf

    They appear to have put a lot of thought into the idea, so it might be a
    viable approach, but I would be skeptic of its utility for routing until
    I see the results of such a test. Like the paper above mentioned, the
    crucial factor is the time it takes to switch between two networks. The
    paper says that, when using commodity hardware, they were able to
    achieve 300ms for connecting to an infrastructure network and 170ms for
    connecting to an ad-hoc network. That might be usable. I really don’t
    know. The trouble is that Internet communications require a significant
    amount of two-way negotiation, which would necessitate the wireless card
    to be constantly switching between the two networks. At best, latency
    would be like that of a slow dial-up connection, but bandwidth might be
    decent.

    > So
    > basically Andy is a wi-fi access point now. Bob is connected to Andy;
    > when Bob tries to access ‘ http://www.google.com ‘, he
    > is routed to like ‘www.sharemy.net ‘ [my
    > company] where he must have a user account. We charge him (or work out
    > some kind of ‘credits’ arrangment) and he is now given internet
    > access… so now via Andy’s laptop, he’s able to access the web [but
    > going through Andy’s computer that is connected via Starbucks]. Once
    > Andy shuts down or leaves, Bob loses his internet connection.

    This part is definitely feasible. As you probably know, universities,
    hotels, etc. often redirect their wireless access to an authentication page.

    > In order for this to work, Andy would have my application installed on
    > his machine that would setup all the connectivity needed. He could open
    > it up to see if anyone is connected through him. Also, Bob doesn’t need
    > to have my software installed initially — he needs to be able to just
    > have his ordinary PC and find Andy’s open internet connection, and
    > connect to Andy… maybe once connected to Andy, he is required to
    > download software to run and actually get an internet connection via Andy.
    >
    >
    > I would want this to work with Windows machines; then Macs; then
    > wireless devices; then Linux.
    >
    > I know nothing about serious programming languages, but I assume this is C# or J2EE/JAVA?

    I don’t think the language matters much, as long as it is able to make
    the required system calls for controlling wireless, networking, routing,
    etc.. As far as I know, Windows is written in C++, and so is their
    Virtual Wi-Fi program. That would probably be your best bet. I don’t do
    any Windows programming, though, so I may be off track.

    -Corey

  • Anon

    Hey, don’t forget that the terms of service might prohibit you from being allowed to re-sell the internet connection.

    Not that this should stop you… just one more obstacle.

  • polygon_w

    i don’t know about the US, but in Europe FON is already quite established as a wifi sharing network..

    maybe you should give it a look, especially regarding legislation issues

  • http://www.vestedventures.com Steve Poland
  • freifunk

    This actually exists – for free. In Germany it’s called “Freifunk” (wiki translation: “Wireless community network”) and is relatively wide spread. There exists special software (opensouce) and it works with a normal rooter.