100 likes | 213 Views
LRDP: The Lightweight Remote Display Protocol. draft-stirbu-lrdp-00 Vlad Stirbu <vlad.stirbu@nokia.com> RUI BoF, IETF 63, Paris August 2 nd , 2005. MVC* Architecture Overview. Interactive application divided into three components Model, View, Controller
E N D
LRDP: The Lightweight Remote Display Protocol draft-stirbu-lrdp-00 Vlad Stirbu <vlad.stirbu@nokia.com> RUI BoF, IETF 63, Paris August 2nd , 2005 1 IETF 63, Remote UI BoF
MVC* Architecture Overview • Interactive application divided into three components • Model, View, Controller • Views and Controllers comprise the user interface • A change-propagation mechanism ensures consistency between the user interface and the model (*) "Pattern-Oriented Software Architecture, Volume 1: A System of Patterns", F. Buschmann, John Wiley & Sons , August 1996. 2 IETF 63, Remote UI BoF
MVC Elements • Model: • Encapsulates the core data and functionality • Independent of specific output representations or input behaviour • View: • Displays information to the user • Multiple views of the model • Controller: • Handle user input received usually as events 3 IETF 63, Remote UI BoF
UI Remoting Concept • A mechanism that enables user interfaces to be rendered on other devices than those that have the application logic Remote UI Server Remote UI Client UI Semantics Application logic Processed Input Information 4 IETF 63, Remote UI BoF
MVC Architecture Over the Network • MVC Architecture • Model is separated from the user interface • UI remoting • Application logic runs on UI Server • User interface is rendered by the UI Client • “Networked” MVC Architecture • Model hosted on UI Server • View hosted by the UI Client 5 IETF 63, Remote UI BoF
WiDeX Framework Overview 6 IETF 63, Remote UI BoF
WiDeX Interaction Model • Session setup • Client discovers URI for the server • Exchange patterns • Initialisation • Updates, Events • Session recovery • Reconnect 7 IETF 63, Remote UI BoF
LRDP Protocol Components • Two unidirectional channels • UI Updates from UI Server • UI Events from UI Client • Three UI Update messages • UI Initialisation • UI Fragment • UI Update • Two UI Event messages • Widget event • Action event 8 IETF 63, Remote UI BoF
Conclusions • UI description independent • Discovery mechanism independent • Lightweight protocol • Bandwidth friendly • Inherits the advantages of the MVC architecture • Multiple views of the same model • Pluggable views and controllers • Exchangeability of “look and feel” 9 IETF 63, Remote UI BoF
Questions • Is the MVC architecture the right one for WiDeX to work on? • Do we need more fine-grained UI exchange messages? • Is BEEP the right transport protocol? 10 IETF 63, Remote UI BoF