Building the Plumbing for the Wireless Internet

Building the Plumbing for the Wireless Internet

When we developed the Microsoft Mobile Explorer (MME), a dual-mode browser for use in mobile handsets, we wanted it to work with over-the-air Internet-standard HTTP and HTML protocols, as well as read content delivered via the Wireless Application Protocol. Microbrowser products should be small, so a principal challenge when designing MME was to build a parallel stack to the existing HTML and HTTP code that would handle WAP without duplicating a lot of code and taking space we didn't have.

There's little standardization between phone manufacturers, and we wanted MME to be flexible across different hardware. For instance, one phone has a screen that may allow only four lines, others have larger screens, and some now have color. We wanted to design MME so it could be customized easily to serve the graphic capacities of different handsets - again, without increasing the size of the program.

One reality of developing technology for advanced wireless devices is that to a great extent manufacturers drive the technical specifications. We ask our original equipment manufacturers how much space and processor power we have rather than telling them what we need. We're riding the technology curves that the cell phone manufacturers are creating, not dictating them. This is fundamentally different from the relationship between software developers and PC manufacturers.

Why a Dual-Mode Browser?

Most microbrowsers read content using the WAP-standard language of WML, which is optimized for low bandwidth wireless connections. In the current phase of wireless Internet apps, the industry is focused on WAP as the standard to carry and encode information from the Internet.

The WAP standard was created by a consortium of carriers, cell phone manufacturers, and the company. In many ways they created an architecture that supports the goals of this group. Data flow using a WAP system is analogous to the flow of information over the Internet, but it differs in several important ways. WAP operates by inserting a gateway between the handset and the carrier, which tokenizes and optimizes the data stream so fewer bytes go back and forth between the handset and the carrier. The gateway is also a point of control - the carrier installs the gateway and can control the end-user experience.

On the traditional Internet you log on with your PC through your ISP to the Internet and can go anywhere you wish. In contrast, a carrier using WAP is able to offer what's termed a closed system: the gateway can limit you to a home page that gives access only to certain sites. The closed system is common in Europe where WAP was developed. The good news is that the gateway ensures that users will interface only with sites that are graphically optimized for viewing on a wireless device. The bad news is that you're often limited to sites that have a business relationship with your carrier. In this sense WAP is quite different from the Internet.

Unlike other microbrowsers, Microsoft's Mobile Explorer is "dual mode," meaning it can read content encoded in either WML or HTML, the lingua franca of today's Internet. MME allows handheld wireless devices to access regular PC-based Internet sites, though you won't receive images the way you can on a nice big PC screen. You do have access to the same Internet servers and can access the same information, of course.

At Microsoft we support WAP 100%.  However, we've listened to our customers who are saying they also want access to HTML sites. They want the flexibility to access Internet sites as well as compatibility with WAP standards. We want our browser to work with every gateway.

Developing MME

One of the challenges in creating this dual-mode browser was to build a parallel stack that supports both Internet and WAP protocols. We wanted to achieve that without duplicating a lot of code.

The code base for Microsoft Mobile Explorer came from a company called STNC Ltd., which Microsoft acquired in July 1999. With this company we also acquired a code base that comprised a small HTML/WAP browser, a TCP/IP stack, a number of graphics libraries, and some other components.

To develop what is now Microsoft Mobile Explorer, we chose a subset of HTML 3.2 as our Internet standard. We think of it as the essence of HTML that's relevant for a cell phone. We don't support frames, for example, and there's no Java scripting. The decision not to support frames was due to screen size - it just doesn't make sense on a tiny cell phone interface - while the decision not to include scripting was due to memory constraints. This may change as mobile device memory increases. We also chose not to implement certain optional features in WAP due, in part, to space considerations. To build Microsoft Mobile Explorer, we used Microsoft Visual Studio, but we wrote our code in pure ANSI since it needs to be portable across different hardware platforms. We used processors that have a speed almost equivalent to the speed of an original IBM PC; in some cases we didn't even have full ANSI support on the devices. It was a challenge to fit our software on the constrained hardware memory requirements of existing handsets.

Future of the Wireless Internet

In general, the wireless mobile device industry is moving from voice-only mobile phones to handheld Internet-access devices with voice as a component. According to Herschel Shosteck Associates Ltd., by the year 2003 approximately 90% of mobile phones manufactured will include microbrowsers. There's no doubt that wireless subscribers will want access to time-critical information and services from the Internet.

The industry is in the earliest stages of understanding how to craft applications that address this kind of user expectation. In year 2000 we began to figure out what kind of applications and content in which formats are of value to people as they operate in this very different mode. What we're doing is building the plumbing for the wireless Internet - the mobile Internet world. Given that future services to be delivered by mobile phones are mostly speculative at this point, the most logical path for manufacturers is to use software platforms that offer a flexible strategy for the long term. OEMs need a strategy not just for the next phone model to come out of the factory, but for a solution that can "future proof" manufacturers as standards and platforms evolve. The interoperable and independent building block approach of Microsoft Mobile Explorer, combined with its support of different standards, provides the flexibility required.


Be on the Watch for... Mobile Information Server, a platform for extending .NET enterprise applications and data as well as intranet content into the realm of the mobile user. It's expected to be publicly available later this year. The server is intended to bring the power of the corporate intranet to the latest generation of wireless phones so users can securely access their e-mail, contacts, calendar, tasks, or any intranet line-of-business application in real time wherever they are.

More Stories By Kevin Dallas

Kevin Dallas, director of the Mobile Phones Group
at Microsoft, is responsible for the marketing
and business development of software for
mobile phone products.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.