1 The Future of Web Applications or How to Move into the Post Standardization Area Bernard Aboba * , Jon Peterson , Henning Schulrzinne , Hannes Tschofenig § * Microsoft, Email: bernarda@microsoft.com Neustar, Email: jon.peterson@neustar.biz Columbia University, Email: hgs@cs.columbia.edu § Nokia Siemens Networks, Email: Hannes.Tschofenig@nsn.com I. I NTRODUCTION The generic nature of the desktop PC has enabled the entire Information Technology community to develop applications that move functionality available in the offline world into the digital world. This flexibility has introduced security issues, since it is difficult for end users to judge the trustworthiness of downloaded programs in any reasonable way. Consequently, many users are very suspicious about any download they are asked to accept. However, an important aspect for ensuring speed of innovation is to reach widespread deployment of a new technology, which to a large extent requires the ability to run new code on end devices. With operating system updates happening less frequently and the acceptance for software downloads decreasing the browser with its limited capabilities was seen by many as an ideal platform for running code that could not cause harm. In particular, JavaScript has found widespread deployment in browsers ’under the radar’ of many companies and is now referred as the ’assembly language of the Internet’. JavaScript was initially perceived as being quite limited in functionality. This perception has changed over the last couple of years when it became the only scripting language implemented in the majority of browsers. For application developers writing code running on Web servers as well as for applications that are downloaded to the end device the desire was always to develop the ap- plication once without having to consider all the different runtimes (operating systems or browsers). Now, with the PC and the cellular phone segments getting increasingly blurry this desire is stronger than ever considering the increased number of obstacles that have to be dealt with. For example, it is highly unlikely that an application will work on various different devices even if all the devices were produced by a single mobile phone vendor. As a consequence, writing cross-platform applications that can be deployed on a variety of target devices has always been difficult. Getting users to download new applications, and to install software updates also leaves software developers in a difficult situation. How can software be developed so that it can (1) be updated instantly when a new version becomes available, (2) be used POSITION PAPER FOR THE ’REAL-TIME COMMUNICATION IN THE BROWSERWORKSHOP,OCTOBER 6 2010, MOUNTAIN VIEW,CALIFOR- NIA.J ON,HANNES, AND BERNARD ARE CURRENTLY MEMBERS OF THE I NTERNET ARCHITECTURE BOARD (IAB) AND HENNING SERVED AS A MEMBER OF THE IAB IN THE PAST. across a wide range of devices, and (3) be as powerful as regular desktop applications? This sounds almost impossible but with the increased capabilities of Web browsers and in particular JavaScript it seems that the Internet community is some steps closer in achieving these goals. User experience has changed largely due to global coverage of high speed cellular networks, a range of new end devices (such as netbooks, smart phones, and Internet tablets), lower costs for Internet access (often bundled with flatrate tariffs), and the shift of the industry towards moving storage and computation into the network. The younger generation of Internet users today has a very different Internet experience than users 10 years ago. They just click to a Web page of an application service provider and let the browser execute JavaScript without any need to install new applications. A positive side effect is that lower configuration requirements are imposed on the user. Today, many of the features previously available only with dedicated browser plugins, such as Adobe Flash [1] and Microsoft’s Silverlight [2], are universally available as stan- dardized versions with HTML5 [3]. The expectation therefore is that new versions of browsers will be shipped with these increased functionalities, thereby empowering Web application developers. This position paper focuses on the impact for the standard- ization community, and to analyses the challenges in the near future. II. I MPACT FOR THE STANDARDIZATION COMMUNITY In the application area communication protocols often fol- low the pattern where an end host utilizes some application service provider for communication setup and sometimes also for message routing towards the other communication end point. In this article we call this communication legs, or legs for short. This is true for the Post Office Protocol (POP) [4] and for the Internet Message Access Protocol (IMAP) [5], as well as for real-time communication protocols like the Session Initiation Protocol (SIP) [6] and the Extensible Messaging and Presence Protocol (XMPP) [7]. The same can be observed also at lower layers in the protocol stack, such as in various tunneling and mobility protocols where the ’rendezvous ser- vice’ provides the initial contact point for communication (and may even remain on the end-to-end communication path for