Slide 1

Slide 1 text

oueees-201806 talks Part 3/3: Centralized and distributed systems Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 1

Slide 2

Slide 2 text

Kenji Rikitake 17-JUL-2018 School of Engineering Science Osaka University Toyonaka, Osaka, Japan @jj1bdx Copyright ©2018 Kenji Rikitake. This work is licensed under a Creative Commons Attribution 4.0 International License. Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 2

Slide 3

Slide 3 text

Lecture notes —https://github.com/jj1bdx/ oueees-201806-public/ —Check out the README.md file and the issues! Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 3

Slide 4

Slide 4 text

Reporting —Keyword at the end of the talk —URL for submitting the report at the end of the talk Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 4

Slide 5

Slide 5 text

Today's topic: centralized and distributed systems Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 5

Slide 6

Slide 6 text

Modern computing is cloud computing Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 6

Slide 7

Slide 7 text

Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 7

Slide 8

Slide 8 text

Is cloud really a uniform and single entity? Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 8

Slide 9

Slide 9 text

Absolutely not: it's an intertwined network of computers Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 9

Slide 10

Slide 10 text

Web services are clusters of computers and networks Thousands or millions of servers connected together A physical server is separated into multiple virtual machines Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 10

Slide 11

Slide 11 text

Cloud computing: centralization Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 11

Slide 12

Slide 12 text

An example of cloud computing: Internet of Things (IoT) and telemetering Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 12

Slide 13

Slide 13 text

Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 13

Slide 14

Slide 14 text

Telemetering —Mostly unidirectional (not really the true and genuine internet) —Sensors/devices gathering data through internet and feed them to the servers in the cloud computing platforms —The servers compute —Extremely centralized Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 14

Slide 15

Slide 15 text

Cloud computing: social implication Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 15

Slide 16

Slide 16 text

Centralized social behavior accerelated by cloud computing —Sharing everything - no privacy —Panopticon 1 style of governance, filtering, censorship, or autocracy —Complete externalization of resources, leading to no personal control 1 n. a circular prison with cells arranged around a central well, from which prisoners could at all times be observed. (New Oxford American Dictionary, Apple macOS 10.13.6) Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 16

Slide 17

Slide 17 text

Presidio Modelo: a panopticon prison Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 17

Slide 18

Slide 18 text

Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 18

Slide 19

Slide 19 text

INGSOC: the slogans 2 —War is peace —Freedom is slavery —Ignorance is strength —Independent thinking = thoughtcrime NOTE: this is a fiction! 2 George Orwell, "Nineteen Eighty-Four", 1949. Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 19

Slide 20

Slide 20 text

Why cloud computing has become so dystopian? -- because we have sold freedom for convenience —Ubiquitous/global accessibility —Concentrated data for easy analysis —Easy control of the information flow —No extra cost for sharing —No need to think about where the information locates Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 20

Slide 21

Slide 21 text

The inconvenient truth of centralized systems: what if the core/cloud fails? Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 21

Slide 22

Slide 22 text

Inconvenience of centralized systems —Ubiquity or no accessibility —When the core fails, no alternative —When the core loses data, no backup —The system performance is restricted by the capability of the core —Endpoint systems will lost all capabilities Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 22

Slide 23

Slide 23 text

Centralized systems are not sustainable —...then how cloud computing systems manages the sustainability? Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 23

Slide 24

Slide 24 text

Distributed systems provide sustainability and resilience against failures Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 24

Slide 25

Slide 25 text

Networks Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 25

Slide 26

Slide 26 text

Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 26

Slide 27

Slide 27 text

Networks split Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 27

Slide 28

Slide 28 text

Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 28

Slide 29

Slide 29 text

Partition/fault tolerance: distributed systems should not stop working even if netsplit occurs Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 29

Slide 30

Slide 30 text

Real-world challenges —Natural disasters —Device failures —Human operation errors —Political impediments —Social resentments Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 30

Slide 31

Slide 31 text

Handling failures —Redundancy: keeping backup units ready —Fault tolerance: keeping systems running even the components fail —Resilience by failing fast: early detection of failures and invocation of the recovery procedu res Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 31

Slide 32

Slide 32 text

Why fault tolerance? —Hard disk MTBF ~= 1 million hours —1000 hard disks running 24 hours x 365 days = 8.76 million hours —If you're running a system with 1000 hard disks, 9 out of 1000 will fail in a year —Recovery of a disk content takes often a day; you can't stop a system for a day, can you? Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 32

Slide 33

Slide 33 text

Requirement to keep the systems fault tolerant —Redundancy: two or more resources for each unit of processing —Supervising the failure of the units by an independent supervisor —Rollback capability: undo the incomplete operations and retry Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 33

Slide 34

Slide 34 text

Consistency issues of distributed systems —Locking/synchronization: waiting all data to be ready to compute or proceed to next step —Choosing the right data: which data is correct? —Supervision: fault detection and restarting Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 34

Slide 35

Slide 35 text

Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 35

Slide 36

Slide 36 text

Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 36

Slide 37

Slide 37 text

Eight Fallacies of Distributed Computing3 (1/2) —The network is reliable —Latency is zero —Bandwidth is infinite —The network is secure 3 https://blog.fogcreek.com/eight-fallacies-of-distributed-computing-tech-talk/ Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 37

Slide 38

Slide 38 text

Eight Fallacies of Distributed Computing (2/2) —Topology doesn't change —There is one administrator —Transport cost is zero —The network is homogeneous Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 38

Slide 39

Slide 39 text

Summary: centralized computing is fragile; distributed computing is fault tolerant but hard Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 39

Slide 40

Slide 40 text

Appendix 1: references for further study Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 40

Slide 41

Slide 41 text

جૅ͔ΒΘ͔ΔTCP/IP ωοτϫʔΫίϯϐϡʔ ςΟϯάೖ໳ ୈ3൛ —ΦʔϜࣾ ISBN 9784274050732 —ୡਓग़൛ձͷిࢠॻ੶ Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 41

Slide 42

Slide 42 text

ϓϩϑΣογϣφϧIPv6 —ϥϜμϊʔτͷࢴͷຊ +ిࢠॻ੶ —Boothͷແྉ൛ Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 42

Slide 43

Slide 43 text

Appendix 2: on choosing your career and professionality Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 43

Slide 44

Slide 44 text

When I chose my career and professionality? —Age 9: computers and English —Age 10 ham radio and electronics —Age 14: writing commercial software —Age 23: finally decided to make my living on my computer software professionality, with my English proficiency Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 44

Slide 45

Slide 45 text

If I were at age 22, what I would do after getting a Bachelor's degree? —Get out of Japan ASAP —Explore the computer skills —Do something unpopular Go abroad Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 45

Slide 46

Slide 46 text

What are the most important things to pursue engineering/scientist career? —Physical strength —Mental strength —Curiosity Curiosity matters Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 46

Slide 47

Slide 47 text

Photo credits —All photos are modified and edited by Kenji Rikitake —Photos are from Unsplash.com unless otherwise noted —Title: NASA —Modern Computing is Cloud Computing: Rayi Christian Wicaksono —Cloud Computing: https://commons.wikimedia.org/wiki/File:Cloud_applications_SVG.svg, licensed under Creative Commons CC0 1.0 Universal Public Domain Dedication —Intertwined network of computers: https://en.wikipedia.org/wiki/ File:Cloud_Computing.jpg, licensed under Creative Commons CC0 1.0 Universal Public Domain Dedication —Web services are clusters of computers: Kenji Rikitake, at Kyoto University ACCMS, April 2017 —Presidio Modelo Prison: By Friman [Public domain], from Wikimedia Commons —Panopticon: Jeremy Bentham, Public domain, via Wikimedia Commons —Contrasted Residences for The Poor: By Augustus Pugin [Public domain], via Wikimedia Commons —Networks: Irina Blok —Networks Split: Pietro De Grandi —Netsplit: https://commons.wikimedia.org/wiki/File:Netsplit_split.svg, in public domain Kenji Rikitake / oueees 201806 part 3 17-JUL-2018 47