CP4P_ClientsServersClouds.pptx
Document Details
Uploaded by VibrantSwamp
Tags
Full Transcript
COMPUTER PRINCIPLES FOR PROGRAMMERS Clients, Servers, and Clouds as a Service (thank you networks) News of the Week i Agenda Lecture: Networks, Clients, Servers, and Services Cloud Computing: IaaS, PaaS, and SaaS. Infrastructure | Platform | Software as a Service "OMG...
COMPUTER PRINCIPLES FOR PROGRAMMERS Clients, Servers, and Clouds as a Service (thank you networks) News of the Week i Agenda Lecture: Networks, Clients, Servers, and Services Cloud Computing: IaaS, PaaS, and SaaS. Infrastructure | Platform | Software as a Service "OMG, I have no internet!" What tech & organization are needed to make the internet work for delivery of the many things we get? Activity 1. Using Microsoft 365 cloud-based collaboration tools 2. What Microsoft 365 features can be considered Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS)? 3. If Everything is a Service, then what do we have? What have you got when you have subscriptions? Does it matter when you don't have the hardware, the software, or the files? Is the medium now the only message? World's Top Websites Monthly Traffic Rank Website Traffic Share of Category (billions) Top 25 Monthly Traffic 4 twitter.com 6.4 3% Social Media Networks Rank Website Traffic Share of 5 instagram.com 6.3 3% Social Media Networks (billions) Top 25 6 baidu.com 4.7 2% Search Engines (China) 7 wikipedia.org 4.5 2% Dictionaries and Encyclopaedias 11 whatsapp.com 2.8 1% Social Media Networks 1 google.com 83.9 44% 14 amazon.com 2.2 1% Marketplace 15 tiktok.com 2 1% Social Media Networks 16 live.com 2 1% Email (Microsoft 365 - 2 youtube.com 32.7 17% Outlook) 17 openai.com 1.8 1% Technology - AI 18 reddit.com 1.7 1% Social Media Networks 3 facebook.com 16.8 9% 20 linkedin.com 1.6 1% Social Media Networks 21 netflix.com 1.4 1% Streaming & Online TV 22 office.com 1.4 1% Microsoft 365 Top Three 69% 25 bing.com 1.3 1% Search Engines Total visits 192 24 visits/month/human Computer Networks? Network: a set of computers connected together for the purpose of sharing resources. Internet: a network of peer networks. Types of Computer Networks WAN = Wide Area Network, e.g. public Internet Intranet = inside a private network. PCs, BYOD, servers for file + print + storage + data sharing. LAN = high speed Local Area Network for an Intranet VPN = Virtual Private Network – remote connection to a private intranet across a public network via IP tunnelling. MAN = Metropolitan Area Network, TTC subway station WiFi is on a MAN from BAI Communications Success of the Internet Open Standards: TCP/IP, HTTP, HTML, WWW browser Sir Tim Berners-Lee 1990. Marc Andreessen 1993. W3C 1994. Open Source: GNU/Linux 1991, Apache Web Server 1995 World-wide networking from glass fibre & telecom goldrush Affordable bandwidth: speed + capacity grows for same $ Decentralized, cooperative infrastructure. e.g. peering Growth by cooperation. Innovation by competition. Net neutrality: all packets are created equal Tier 1 / 2 IXP – Internet Exchange Point Tier 3 ISP – Internet Service Provider IXP IXP Peer transit $ IXP Peer Peer transit $ ISP transit $ 2B PCs 1B tablets 5B smartphones 151 Front St W 905 King St W TorIX carrier hotels Tier 1 & 2 connect at Internet eXchange Points (IXP) for peering and transit. 45 Parliament St 151 Front St. West not a normal commercial building's rooftop cooling towers, diesel generators, chillers, and condensers Tier 1 & 2 Internet Exchanges IXPs connected through the oceans The Internet is brought to you by… Browsers (Firefox, Chrome) process JavaScript and render Internet content into a consumable form for end users Search engines (Startpage, DuckDuckGo, Google, Bing) help you discover online content Content creators author the content you see online. (Human beings who need to eat just like you do.) App Platforms & Stacks (Facebook, Shopify, Wordpress, Drupal, LAMP, ASP.NET) content deployment and dev. Hosts (matrix, Amazon Web Services, WHC.ca, Rackspace) provide infrastructure where the platforms live Internet Service Providers (ISPs) (Teksavvy, Bell, Rogers) connecting end users to the Internet (Tier 3) Transit Providers connect you from the last mile (Tier3 ISPs) to the rest of the Internet (Tier 2 & 1) Reverse Proxy/CDN (Akamai, Cloudflare, AWS) provide networks to cache content and protect from attack Recursive DNS providers (CIRA, Quad9, OpenDNS) cache info to resolve end users' DNS queries quickly Authoritative & Root DNS (Dyn, Cloudflare) official reference of domains, names, and related IP addresses Registrars (e.g. Tucows) registers domain names. ICANN governs internationally. https://whois.icann.org/en Registries (cira.ca, Verisign) administer top level domains (TLD).ca,.com IANA & RIR govern the TLDs CDN = Content Delivery Network distributes traffic better than a single server and protects from DDoS attack DNS = Domain Name System/Services translates human usable domain names into IP addresses ICANN = Internet Corporation for Assigned Names and Numbers sets rules for Registrars and Registries IANA = Internet Assigned Numbers Authority & RIR = Regional Internet Registries provide IP addresses used by Registries and Registrars. What are the issues of shared i computing and networking? Downasaur How do you feel when this happens? “Dumb” Terminals & Single-Tier design The server does all computing, processing, storing. Terminal / Thin client interacts with user as directed by the server. DEC VT-100, 1978 IBM 3270, 1971 Thin Client HTML5 + CSS3 + JS Two-Tier design & Client–Server Model user's transactions submitted to server Protocol state of user's data received by client Server/Host Business Server Thick Client Client is User Facing centralized: multi-user Streaming | Client App distributed: advanced processing, data store, presentation, user communication with App Server | s-phone App data management; other systems Exchange | Outlook tells server what to do Progressive Web Apps Back-end | Front-end FTP needs Client–Server applications Client authenticates and makes a connection Client navigates to directories on both sides Client requests, Server sends or accepts data FTP Server Local FTP interacts with local Operating System. FTP Client OS Each OS maintains its own file system. File OS File System attributes/metadata are not necessarily transferred. File System Filename Only data is exchanged between platforms. Filename data data Cloud Computing Cloud Computing – thanks, Internet. Remote server systems store, manage, and process data for small local servers, PCs, mobile devices, web apps. Hosted infrastructure, development stacks, applications. On demand resources rapidly provisioned and released. Fast start up, easy mgmt, low initial cost, scalable / elastic. Distributed Computing: independent systems running processes as part of a larger application controlled by messages passing between those systems. Climate Prediction, Distributed Compute Labs, BitTorrent, block chain Clouds …as a Service Software: SaaS Platform: PaaS Infrastructure: IaaS end-user applications development of remote servers, end-user applications storage, networking Cloud Computing Services Software as a Pizza: food court pizza Platform as a Pizza: pizzeria delivery Infrastructure as a Pizza: pizzeria Service your own car lease / rent taxi, uber public transit Transportation _aaS Cloud as a Full Stack Cloud Computing – IaaS Infrastructure as a Service Infrastructure as a Service provides servers, and/or secondary storage, and/or networking services. “Lift-and-Shift” on-premises computing to the cloud. High range of scalability and elasticity Amazon Web Services (AWS). Google Compute Engine (GCP) e.g. your ISP is your IaaS for wide area networking. Cloud Computing – PaaS Platform as a Service PaaS provides hosted software development stacks to create web applications. Frameworks to build, debug, deploy, scale up/down. Windows Azure runs ASP.NET web applications Red Hat OpenShift on Red Hat OpenStack Platform Google App Engine, Box.com PaaS does intelligent things with things you put there. File serving: share, version, replicate, cache, synch. Cloud hosted database platforms: you configure and populate. APIs for web services you provide to other developers. Cloud Computing – SaaS Software as a Service Software as a Service is an application delivered over a network / Internet. Companies run (a part of) their business on the service’s software. Users access the application remotely on smartphones, tablets, browsers. SalesForce CRM – the original SaaS for the front-office Back office SaaS – Payroll, Purchasing, Accounts Payable, Inventory and Billing, Accounts Receivable, General Ledger. Google Apps, Microsoft Office 365, BigBlueButton Streaming services for consumers eLearning: Cloud Computing Types eLearning Tutorials Login needs Seneca and LinkedIn accounts Peer to Peer and Blockchain need networks A peer-to-peer (P2P) network is two or more systems sharing resources without using a central server (no central authority). BitTorrent protocol for file sharing Advantages: low cost, easy to install, and no need for skilled staff, expensive servers, high bandwidth Disadvantages: difficulty of administration, issues of security + trust, performance, scalability, reliability Blockchain addresses security + trust What is the impact of technology? Technology disrupts the ecology of space and time, even human relationships. When you move bits instead of atoms, things change. A high bandwidth, generally reliable Internet enabling streaming services & subscription software are examples. Notes – not on the quiz background info in following notes ~ not on the quiz ~ ICT has a great many languages and countless ways to do things. 100 ICT has a great many languages and countless ways to do things. This is partly why. 110 Why does ICT have many languages and countless ways to do things? This is the other part. 110 Most programmers rate themselves above average. Cloud Organization: Virtual Machines and Containers Seneca's Open Source Technology for Emerging Platforms ( OSTEP) and Centre for Innovation in AI Technology (CIAIT) hyperscale ARM™ servers DevOps (integrated Development and Operations) Data Lake for smart buildings analytics Intelligent Radio Signal Processing and AI-based spectrum analyzer AI/ML Content-based Tagging to categorize video for Vubble cybersecurity and regulatory compliance AI/ML Fintech algo trading framework Super-Embedded Systems OSTEP & CIAIT are supported by the Natural Sciences and Engineering Research AI/ML on the Edge Council of Canada (NSERC) Una Pizza pizza pizza pizza Pizza Tech Stack Napoletana frozen delivered food court Pizza as a Service Net Neutrality (Tim Wu, 2003) i Principle of an open, neutral Internet: Internet providers do not use their privileged position to favour some applications and services over others. All packets are equal. Is sharing music/video files illegal? i © Copyright in Canada as of 2012: Bill C-11, the Copyright Modernization Act, allows for private and personal use of time shifting, format shifting, and backup copies as long as no digital locks are involved. online infringement of © — “notice-and-notice” “notice-and-takedown” in USA and EU File Sharing File Sharing is the practice of or ability to transmit files from one computer to another over a network or the Internet. File sharing is the public or private sharing of computer data on a network, so that multiple people can access the data to their level of access privilege. File sharing makes collaboration easier, but is also used for the illegal distribution of music, movies, software, and pornography. File Sharing: Napster vs BitTorrent