Prof. Yechiam Yemini (YY) Computer Science Department Columbia University (c)Copyrights; Yechiam Yemini; 2004 Lecture 4: The Power of Interoperability Version: /20/04
(c)Copyrights; Yechiam Yemini; Large-Markets Require Interoperability Supply-chain requires horizontal standardization Cost/value Time Market size
(c)Copyrights; Yechiam Yemini; The PostScript/PCL Example History (~ ) PostScript: PCL: The problem: #adptrs=(m apps)x[(n tech)x(k vndrs)] An API solution: #adptrs=(m apps) x (n tech) API for each printer technology (e.g., printing boldface) A language solution: #adptrs=1 per app Common page description languages abstract printing DisplayLaser Word MatrixInkjet Sprd Sht Prsntn ClndrDBEditor Line printerImpactPressThermal
(c)Copyrights; Yechiam Yemini; Formation of Abstractions Hourglass Top: apps requiring common infrastructure services Bottom: infrastructures delivering common services Belt: a platform of common abstractions Generalizes and abstracts infrastructure functions Empowers competitive diversity & evolution of apps & infrastructures Matrix Word Sprd Sht Prsntn Clndr DB Editor Display Laser Inkjet Postscript Language Abstractions Prsntn Clndr DBEditor Display Laser Printer Word Matrix Inkjet Sprd Sht Any Printer Any doc creating App
(c)Copyrights; Yechiam Yemini; Abstractions Empower Horizontal Markets Stimulate competitive horizontal expansion Create supply chains to deliver solutions Interoperability Hourglass CPU Display Memory Word Prcssr Storage NIC Sprd Sht Prsntn Clndr OS DB File System HW Components vendors App vendors Platform vendors Any Component Any App
(c)Copyrights; Yechiam Yemini; Cellphone Java Sample Hourglass Platforms CPU Display Memory Word Prcssr Storage NIC Sprd Sht Prsntn Clndr OS DB File System ATM Ethrnt TCP PPT DSL SONET WDM WiFi UDP DNS FTP HTTP SMTP IP NFSSOAP Unix, BSD, Linux… DOS, Windows… Palm OS… Matrix Word Sprd Sht Prsntn Clndr DB Editor Display Laser Inkjet Postscript Printer Auction Weather News Travel Shopping AnyServer Video Display Audio HTML/HTTP Video PDA Any Device Any Printer Any Device Any App
(c)Copyrights; Yechiam Yemini; Formation of Backplane Platforms The problem: #interfaces =[(n cmpnts)x(k vndrs)] 2 The fabric solution: #interfaces = 1 per component Backplane ~ bus~ fabric HW Examples: I/O bus: abstracts I/O access (e.g., PCI) Processor bus: abstracts CPU-memory access Storage bus: abstracts drive access (e.g., SCSI, ATA…) Floppy Hd Drv Cache CD drv CPU Memory Display Net Intrfc Keyboard Mouse Bus Abstractions Floppy Hd Drv Cache CD drv CPU Memory DisplayNet IntrfcKeyboardMouse PCI
(c)Copyrights; Yechiam Yemini; Sample SW Backplane Platforms File System: abstraction of access to persistent objects Naming directory Control plane: create/delete, mount, open/close, read/write... Data plane: stream of bytes with and tags; bit stream.. BSD sockets: abstraction of network communications Publish/subscribe: abstract asynchronous communications File System Abstractions DisplayKeyboard Mouse APP1 NIC APP2 Storage Socket Abstractions Peer1Client2Peer1Server2 Publish Subscribe APP1APP2APP3APP4 SOAP Abstractions Client1Client2Server1Server2 SQL DB Abstraction APP1APP2APP3APP4
(c)Copyrights; Yechiam Yemini; Platforms Define Market Paradigms Provide organizing abstractions & standards Hourglass or backplane architecture Enable interoperability & economies of scale Create efficient supply chains Stimulate competitive opportunities for components & apps CPU Display Memory Word Prcssr Storage NIC Sprd Sht Prsntn Clndr OS DB File System File System Abstractions DisplayKeyboardMouse APP1 NIC APP2 Storage ATM Ethrnt TCP PPT DSL SONET WDM WiFi UDP DNS FTP HTTP SMTP IP NFSSOAP SOAP Abstractions Client1Client2Server1Server2
(c)Copyrights; Yechiam Yemini; HW & SW Markets Pursue Different Foci HW platforms stimulate specialization in components Compete over cost-efficient delivery of component types Manufacturing, distribution and operations dominate SW platforms stimulate specialization in need-segments Compete over dominance of need-segment Dominance stabilizes competitive threat of platform & app providers CPU Display Memory Word Prcssr Storage NIC Sprd Sht Prsntn Clndr OS DB File System HW vendors specialize in component-segments App vendors specialize in need-segments
(c)Copyrights; Yechiam Yemini; SW: Platform vs. App Providers SW economics are substantially different from HW Fixed production costs Competitive barriers: initially very low, later very high App and platform vendors are mutually threatened App vendor wants platform independence creates private platform Platform vendor wants to gain share of app $ value create apps Problem is best solved through open platforms Open platforms create competitive level field (e.g., PDF,Linux, Web, Java, J2EE..) Level fields still need leaders (e.g., Cisco IETF, SUN/NFS/Java…) Platforms stimulate segment consolidation Create economies of scale in need-segments (e.g., office suites, CAD suites, ERM suites, CRM suites, security suites…)
(c)Copyrights; Yechiam Yemini; The Rise of Network Interoperability HW VLSI (low cost CPU, Mem) SW File-centric OS; GUI Desktop apps Net PC to file-server LAN App Desktop computing Mrkt SMB, SOHO, consumers TCO $10 3 per year Max connectivity Ethernet Token Ring FDDI Directory SDH Netware IPX Mail Interoperability: Single stack islands Decnet StackSNA StackOSI StackAppletalkBanyan Novell
(c)Copyrights; Yechiam Yemini; Interoperability: Bridging Bridge – translate between two representations Link-layer bridge: translate packet headers & transmission App-layer bridge wrapper Scaling for diversity (handling n components) Bridge: O(n 2 ) adapters, one for each pair of media EthernetToken Ring Bridge FDDI SNA StackOSI Stack Bridge
(c)Copyrights; Yechiam Yemini; Router vs. Bridge: 1990 Both provide LAN interconnection & routing Both provide interoperability Bridge: via conversion among interfaces Router: via tunneling Router involved unclear value proposition Much higher HW costs; complexity Lower performance; interoperability support The leading LAN companies pursued bridging Ethernet Token Ring FDDI Directory SDH Netware IPX Mail Decnet StackSNA StackOSI StackAppletalkBanyanATM Stack
(c)Copyrights; Yechiam Yemini; Ethrnt TCP HTTP Bridge vs. Router Hourglass : 1995 It was bridge vs. hourglass not bridge vs. router Most stacks were eliminated by the IP hourglass Bridges vanished into Ethernet switches The LAN market consolidated; key players vanished ATM PPT DSL SONET WDM WiFi UDP DNS FTP SMTP IP NFS Protocol Abstractions SOAP
(c)Copyrights; Yechiam Yemini; The Transformations of The File System File System Abstractions DisplayKeyboard Mouse APP1 NIC APP2 Storage Ethernet Token Ring FDDI Directory SDH Netware IPX Mail File Server Abstractions Client1Client2Client3Server Repository Abstractions ClientServer1Server2Server3 Unify apps access to persistent resources Unify apps access to persistent local resources Unify apps access to persistent global resources WEB Netware, NFS
(c)Copyrights; Yechiam Yemini; Principle 3: Interoperability Requires Platforms Platforms define technology/market paradigms Provide common abstractions to compose solutions API, language or protocol abstractions; Hourglass or backplane Mass markets organize around platforms Define segments, positions and supply chains Technology leaders deliver the abstractions E.g., DEC; MS; Intel; Novell; SUN; CISCO… Platforms define foci for specialization HW vendors focus on dominating component-segment SW vendors focus on dominating need-segment HW vendors: dominate component-segments App vendors: dominate need-segments
(c)Copyrights; Yechiam Yemini; Pursuing A Platform Opportunity Identify new growing interoperability need Growing market Diversifying app needs and components supply Novel abstractions needed Identify the hourglass structure and participants Design initial platform Occam’s design: minimally sufficient abstractions Design for extensibility Pursue partnership to capture market Open platform is best; but needs a solid business model
(c)Copyrights; Yechiam Yemini; Example: Bioinformatics Industry Market: users who need bioinformatics services Researchers; pharmaceuticals; health-care… Diversification: growing range of databases + apps Databases: genomics, proteomics, experiments… App tools: analysis; statistical search/classify… Novel interoperability needs How is this different from SQL databases and apps? What new abstractions are needed? Platform: ?common repository language? ?Build on Digital Library Repositories (e.g., Fedora)? ?Next generation content-scalable distributed file system?
(c)Copyrights; Yechiam Yemini; Example: Personal Storage (PS) Market: users with 40GB cell-phone/PDA (?and 5TB DVR?) Diversification: PS could deliver any app/content better than client-server Lots of cell-phone/PDA HW providers Novel interoperability need Distribute massive diversified content and apps to PS Synchronize PS with PC/notebook/servers storage Platform: ?CDN protocol? ?Distributed mobile file system? Unleash our Digivorous appetite: zero-access-time to any-service/content anytime, anywhere using any-client