SlideShare a Scribd company logo
1 of 51
Basic Computer Systems Design
& Architecture
01418114 – Introduction to Computer Science
Prasertsak U., Ph.D
Computer Architecture
• Von Neumann Architecture
2
The input unit - moves
data from the outside
into the computer.
The output unit -
moves results from
inside the computer
to the outside
The control unit -acts
as the stage unit to
ensure that all the
other components act
in concert.
The arithmetic/logic
gate unit - performing
arithmetic and logic
operations on data
The memory unit - holds
both data and instructions
Memory
Address Contents
00000000 11100011
00000001 01010101
… …
11111100 00000000
11111101 11111111
11111110 10101010
11111111 00110011
3
Memory is a collection of cells, each with a unique physical
address. For example, if the addressibility is 8, and there are 256 cells of
memory, the cells would be addressed as follows:
The bits in address 1111110 are
numbered as follows:
Memory Hierarchy
4
Picture from: http://people.nas.nasa.gov/
Memory Access Time
5
Picture from: http://www.embedded.com/
Control Unit
6
There are two special registers in the control unit.
• Program Counter (PR)
• Instruction Register (IR)
BUS
7
A communication system that transfers data between components inside a
computer, or between computers
Multi-core processor
8
In consumer technologies, multi-core is usually the term used to describe two
or more CPUs working together on the same chip.
Parallelism and Performance in Multi-
Core CPUs
9
สถาปัตยกรรมคอมพิวเตอร์แบบ Centralized System
• บางครั้งเรียกว่า Host Based System หรือแบบรวมศูนย์เป็นสถาปัตยกรรมแบบ
รองรับผู้ใช้หลายคน โดยทุกคนจะใช้ทรัพยากรต่าง ๆ ร่วมกัน แบบ Time Sharing
เครื่องคอมพิวเตอร์ ณ ส่วนกลางจะเป็นเครื่องขนาดใหญ่ เช่น Server Computer
หรือ Mainframe Computer
10
ข้อดี / ข้อเสีย ของการประมวลผลแบบรวมศูนย์
• ข้อดี
▫ การติดตั้งระบบ หรือโปรแกรมต่าง ๆ ทาได้ง่าย เนื่องจากสามารถติดตั้ง ณ ศูนย์กลาง
เพียงจุดเดียว
▫ การควบคุมต่าง ๆ ทาได้ง่าย
▫ สะดวกในการจัดการข้อมูลและเรียกใช้ข้อมูล เช่น การรวบรวมข้อมูลเพื่อออกรายงาน
หรือติดตามความเคลื่อนไหวต่าง ๆ ทาได้รวดเร็ว เนื่องจากข้อมูลพร้อมอยู่แล้ว ณ
ส่วนกลาง
▫ การรักษาความปลอดภัยทาได้ง่าย
11
ข้อดี / ข้อเสีย ของการประมวลผลแบบรวมศูนย์
• ข้อเสีย
▫ อาจเกิดปัญหา Single point of Failure (ความล้มเหลวของจุดเดียว) เนื่องจาก
หากระบบส่วนกลางล่ม จะทาให้ระบบโดยรวมล่มทั้งหมด จึงมีความเสี่ยงสูง
▫ ทางานได้ช้าลงเมื่อมีจานวนผู้ใช้เพิ่มมากขึ้น เนื่องจากอาจเกิดจากปัญหาคอขวด
(Bottle Neck) ของระบบ
▫ ค่าใช้จ่าย ในการดาเนินการสูง
▫ การปรับเปลี่ยนหรือเพิ่มเติมศักยภาพของระบบ เป็นเรื่องใหญ่และใช้ทุนสูง
12
สถาปัตยกรรมคอมพิวเตอร์แบบ Decentralized System
• มีลักษณะการทางานคล้ายกับแบบรวมศูนย์แต่ศูนย์รวมไม่ได้มีจุดเดียวเกิดจากการแยกตัว
ของหน่วยงานออกเป็น เขตหรือภาคทาให้เกิดความต้องการในการกระจายระบบการ
ทางานออกไป แต่ยังคงเชื่อมต่อข้อมูลระหว่างกัน
13
สถาปัตยกรรมคอมพิวเตอร์แบบ Distributed System
• สถาปัตยกรรมแบบกระจายเกิดขึ้น
เนื่องจากต้องการลดขนาดของการทางาน
ณ ศูนย์กลางให้เล็กลง เพื่อประหยัด
ค่าใช้จ่าย และเนื่องจากการสื่อสารทาได้
รวดเร็วขึ้น เครื่องคอมพิวเตอร์มีประสิทธ
ภาพมากขึ้น การกระจายการทางาน
ออกไปยังส่วนต่าง ๆ จึงสามารถทาได้โดย
ไม่ทาให้งานเกิดปัญหา และยังเป็นการ
ช่วยกันทางานไปพร้อมกันได้
14
ข้อดี / ข้อเสีย ของการประมวลผลแบบกระจาย
• ข้อดี
▫ ใช้เวลาในการตอบสนองเร็ว เนื่องจากไม่ต้องรอการประมวลผลจากศูนย์กลาง
▫ ลดต้นทุนตัวประมวลผลกลาง
▫ ระบบน่าเชื่อถือมากขึ้น เนื่องจากทนต่อความผิดพลาดได้ดี เมื่อหน่วยใดไม่สามารถ
ทางานได้หน่วยอื่น ๆ จะไม่กระทบ สามารถทางานต่อไปได้
▫ แบ่งปันทรัพยากรร่วมกัน ได้มีประสิทธิภาพมากขึ้น เนื่องจากระบบมีขนาดเล็กลง
• ข้อเสีย
▫ การดูแลรักษาทาได้ยากขึ้น เนื่องจากมีการกระจายตัวของระบบไปตามจุดต่าง ๆ
▫ ความถูกต้องของข้อมูล อาจเกิดผลกระทบเนื่องจากข้อมูลกระจายอยู่หลายจุด
▫ การรักษาความปลอดภัยข้อมูลทาได้ยากมากขึ้น
15
สถาปัตยกรรมการทางานแบบ Client-Server
• เป็นการแบ่งการทางานออกเป็น2 ส่วน ได้แก่ ส่วนให้บริการ (Server) และส่วนขอใช้บริการ
(Client) ซึ่งกระบวนการประมวลผลจะเน้นหนักในส่วนของ Server จากนั้นจึงส่งผลลัพธ์ที่
ได้กลับไปยังผู้ขอใช้บริการ ซึ่งโดยส่วนมากจะต้องมีการร้องขอใช้บริการมาจากฝ่าย Client
ก่อนจากนั้น Server จึงตอบสนองความต้องการนั้นกลับไป (Response)
16
สถาปัตยกรรมการทางานแบบ Cluster-Server
• เป็นการแบ่งการทางานในส่วนให้บริการ(Server) เพิ่มขึ้นมากกว่า 1 จุด โดยในแต่ละจุด
ทางานเหมือนกัน เนื่องจากต้องการ1) รองรับการขอใช้บริการจานวนมาก 2) เพื่อให้ทนต่อ
ความผิดพลาดที่เกิดขึ้น เช่น
17
สถาปัตยกรรมการทางานแบบ Cluster-Server (ต่อ)
• แนวทางการติดตั้งเครื่องให้บริการ (Server) เพื่อให้ทนต่อความผิดพลาดที่เกิดขึ้น และเพื่อ
แบ่งการทางานไม่ให้หนักมากเกินไป
18
สถาปัตยกรรมคอมพิวเตอร์แบบ Peer-to-Peer (P2P)
• P2P คืออะไร - “Peer-to-Peer เป็นระบบ Self organizing โดยปราศจากการควบคุม
จากศูนย์กลาง และประกอบไปด้วยเพียร์ (Peer) ที่สามารถแชร์ทรัพยากร (resource) ให้
กับเพียร์อื่นๆเข้ามาใช้งานได้”
19
นาเสนอโดย http://javaboom.wordpress.com/ อ้างอิงจาก: A. Oram et al., Peer-to-Peer:Hardnessing the Power of
Disruptive Technologies, Oreilly, 2001
สถาปัตยกรรมคอมพิวเตอร์แบบ Peer-to-Peer (P2P)
• Robust - คงทน ไม่ล่มง่าย ๆ เมื่อมี Peer ใดออกจากการเชื่อมต่อ ระบบโดยรวมยังคงทางาน
ต่อไปได้
• High Availability - ระบบจะใช้การทาซ้าข้อมูล (Redundancy) เพื่อช่วยให้ข้อมูล
กระจายตัวอยู่ในเครือข่าย และสามารถใช้แทนกันได้เมื่อต้องการ จึงทาให้ความพร้อมในการใช้งาน
สูง
• Load Balancing - ระบบสามารถช่วยแบ่งภาระการทางานออกไปได้ดี เมื่อมีคนต้องการ
ข้อมูลเดียวกันมาก ๆ ข้อมูลที่กระจายอยู่ใน Peer ต่าง ๆ จะถูกนามาใช้เพื่อช่วยกันแบ่งปันให้กับ
ผู้ที่ต้องการ จึงเป็นการช่วยแบ่งเบาภาระการทางานได้อย่างดี
• มีความเป็นอิสระสูง(High Freedom) เนื่องจากไม่มี Admin ในระบบ ไม่มีศูนย์กลางใน
การควบคุม การเข้าออกจากระบบสามารถทาได้โดยอิสระ ซึ่งไม่ทาให้ระบบล่ม ดังนั้นจึงมีความ
ยืดหยุ่นและอิสระสูง
20
อ้างอิงจาก http://javaboom.wordpress.com/
Peer-to-Peer Example in Network
• Napster Architecture
▫ Centralized Indexing
▫ Centralized Searching
21
Peer-to-Peer Example in Network
• Gnutella & BitTorrent
22
สถาปัตยกรรมการทางานแบบ Client-Server ใน
ลักษณะ Web Based
• การทางานแบบ Web Based นั้นมีลักษณะการทางานแบบ Client-Server
แบ่งออกเป็น 3 ลักษณะ ได้แก่
▫ 2-Tier Architecture – Application Server + DB
Server รวมอยู่ที่เดียวกัน
▫ 3-Tier Architecture – Application Server และ DB
Server แยกกันอยู่คนละระบบ
▫ n-Tier Architecture - หรือ multi-tier ลักษณะนี้ Application
Server และ DB Server แยกกันอยู่คนละระบบ รวมทั้งมี Frontend
Server เพื่อให้บริการในการจ่ายงานไปยังจุดต่าง ๆ ในลักษณะแบ่งภาระงาน
(Load Balancing) หรือมี Server ให้บริการหลายตัวทางานร่วมกัน
23
สถาปัตยกรรมการทางานแบบ Web Based
• 2-Tier Architecture – Application Server + DB Server
รวมอยู่ที่เดียวกัน
24
สถาปัตยกรรมการทางานแบบ Web Based
• 3-Tier Architecture – Application Server และ DB
Server แยกกันอยู่คนละระบบ
25
สถาปัตยกรรมการทางานแบบ Web Based
• n-Tier Architecture - หรือ multi-tier มี Server ให้บริการ
หลายตัว ( > 3 ระดับ) ทางานร่วมกัน
26
Virtualization Technology & Cloud
Computing
• เมื่อระบบเครือข่ายมีประสิทธิภาพมากขึ้น เมื่ออุปกรณ์คอมพิวเตอร์มีสมรรถนะเพิ่มขึ้น การใช้
งานอุปกรณ์ให้เกิดประโยชน์สูงสุด ย่อมนามาซึ่งความคุ้มค่าในการลงทุน ฉะนั้นจะทาอย่างไร
ให้อุปกรณ์ที่มีอยู่ในระดับเทพ..!! ถูกใช้ให้เกิดประโยชน์สูงสุด
• Virtualization Technology คืออะไร ใช่คาตอบหรือไม่ และเกี่ยวอะไรกับคาว่า
Cloud Computing
27
Data center implementation
28
Total Cost of Ownership
• .
29
Purchasing cost
20-25%
Post purchase/Maintenance cost
75-80%
Data center implementation on Cloud
30
Introduction to Cloud Computing
(cont.)
• Overview Concept
▫ Package of computing resources, such as computation and
storage
▫ Service individual homes and offices across the country via
the network
▫ Readily available on demand
31
Computing Facilities
(SW/HW/Network)
Access Provide
ProvidersConsumers
Pay for Accessing
IT Platform Evolution
• IT Platform Evolution
32
Picture from: Cloud Computing for Dummies
by John Hamrick
Introduction to Cloud Computing
(cont.)
• Mobility of Contents
33
Your Desktop
on a Thin Client
Your Desktop
on a SmartPhone
Your Desktop
on an iMac
Your Desktop
on a PC
As you move between devices, your desktop follows
you!
*This slide from: Andre Coetzee in the presentation name “The Future of Technology”
Some of the key providers
• .
34
From: Courtesy Gravitant, Inc from Cloud Technology Spectrum
Hosted Instances
• Host Instances is the physical representation
of a computer for running on a virtualization
environment.
▫ H/W Configuration on demand (RAM, CPU, HD
space, Network, etc.)
▫ Any OS, Applications
▫ Pay as you use
35
Sample of Instances Request
• .
36
Virtualization
• Virtualization, Why?
37
Optimized Resources
Virtualization (cont.)
• Virtualization is the ability to run multiple
operating systems on a single physical system
and share the underlying hardware
resources.*
▫ A Virtual machine (VM) is an isolated runtime
environment (guest OS and applications)
▫ Multiple virtual systems (VMs) can run on a single
physical system
38
*VMware white paper, Virtualization Overview
Virtualization Architecture (cont.)
• .
39
*VMware white paper, Virtualization Overview
Virtualization (cont.)
• Hypervisor - A hypervisor, a.k.a. a virtual machine
manager/monitor (VMM), or virtualization manager, is a
program that allows multiple operating systems to share
a single hardware host.
▫ Controlling the host processor and resources, allocating
▫ To make sure that the guest operating systems (called virtual
machines) cannot disrupt each other.
40
Type of Hypervisor
• Hypervisors in Virtualization
41
Picture from: http://www.cisco.com
Virtualization infrastructure
• .
42
Benefits of Virtualization in Cloud
Computing
• Consumers don’t need to own hardware
• Resources are rented as needed from Cloud
providers
• The providers allow creating virtual servers
▫ Choose the OS and software to run on each instance
▫ The VM will run on a large server farm
▫ Virtual server can initiate within a minute
• Pay per use
43
Software in the Cloud
• Two perspective of software in the cloud*
44
*Source: Software Architecture and the Cloud, Grace A. Lewis, Research, Technology and Systems Solutions
(RTSS) Program, SASI 2012
Services Models
• .
45
From : Cloud Security and Privacy by Mather and Kumaraswamy
Services Models (cont.)
• Data Privacy
46
*Source: Software Architecture and the Cloud, Grace A. Lewis, Research, Technology and Systems Solutions
(RTSS) Program, SASI 2012
What are the services?
• .
47
Picture from: http://info.apps.gov
Deployment Models
• .
48
Why isn’t everyone to use cloud?
• The cloud acts as a big black box, nothing inside
the cloud is visible to the clients
• Clients have no idea or control over what
happens inside a cloud
• Clouds are still subject to traditional data
confidentiality, integrity, availability, and
privacy issues, plus some additional attacks
49
Why isn’t everyone to use cloud? (cont.)
• .
50
Disadvantage of Cloud Computing
• Technical Issues
▫ Possible downtime
▫ Lack of support
▫ Inflexibility – Locking into their proprietary application
and format of services
• Security Issues
▫ Prone to attack
▫ How safe is your data?
• Long-running cost – Does the cloud application
have all the features that the software does and if
not, are the missing features important to you?
51

More Related Content

Similar to Computer systemarchitecture (20)

Operating System Chapter 1
Operating System Chapter 1Operating System Chapter 1
Operating System Chapter 1
 
Work1
Work1Work1
Work1
 
Work1
Work1Work1
Work1
 
Work1
Work1Work1
Work1
 
Work1
Work1Work1
Work1
 
Work1
Work1Work1
Work1
 
Work1
Work1Work1
Work1
 
Work1
Work1Work1
Work1
 
Work1
Work1Work1
Work1
 
SA Chapter 11
SA Chapter 11SA Chapter 11
SA Chapter 11
 
Microsoft Azure day 1
Microsoft Azure day 1Microsoft Azure day 1
Microsoft Azure day 1
 
Proposal
ProposalProposal
Proposal
 
650 1
650 1650 1
650 1
 
MySQL Multi-Master Replication Using Tungsten Replicator 2.0.5
MySQL Multi-Master Replication Using Tungsten Replicator 2.0.5MySQL Multi-Master Replication Using Tungsten Replicator 2.0.5
MySQL Multi-Master Replication Using Tungsten Replicator 2.0.5
 
Lernning 07
Lernning 07Lernning 07
Lernning 07
 
61 sql server 2008 complete
61 sql server 2008 complete61 sql server 2008 complete
61 sql server 2008 complete
 
Tu153 บทที่ 7 2/2560
Tu153 บทที่ 7 2/2560Tu153 บทที่ 7 2/2560
Tu153 บทที่ 7 2/2560
 
หลักการทำงานของคอมพิวเตอร์
หลักการทำงานของคอมพิวเตอร์หลักการทำงานของคอมพิวเตอร์
หลักการทำงานของคอมพิวเตอร์
 
Hardware
HardwareHardware
Hardware
 
ภารกิจการเรียนรู้ที่ 5.1
ภารกิจการเรียนรู้ที่ 5.1ภารกิจการเรียนรู้ที่ 5.1
ภารกิจการเรียนรู้ที่ 5.1
 

More from Saranyu Srisrontong

More from Saranyu Srisrontong (13)

Computer Programming 1
Computer Programming 1Computer Programming 1
Computer Programming 1
 
Lab Computer Programming 1
Lab Computer Programming 1Lab Computer Programming 1
Lab Computer Programming 1
 
Computer Programming 4
Computer Programming 4Computer Programming 4
Computer Programming 4
 
Computer Programming 3
Computer Programming 3 Computer Programming 3
Computer Programming 3
 
Computer Programming 2.2
Computer Programming 2.2Computer Programming 2.2
Computer Programming 2.2
 
Computer Programming 2.1
Computer Programming 2.1Computer Programming 2.1
Computer Programming 2.1
 
Ac current46
Ac current46Ac current46
Ac current46
 
electric potential
electric potentialelectric potential
electric potential
 
พลังงานไฟฟ้า
พลังงานไฟฟ้าพลังงานไฟฟ้า
พลังงานไฟฟ้า
 
Physics2 1
Physics2 1Physics2 1
Physics2 1
 
Intellec.pro for final exam
Intellec.pro for final examIntellec.pro for final exam
Intellec.pro for final exam
 
การแก้ปัญหาการออกแบบและพัฒนาขั้นตอนวิธี
การแก้ปัญหาการออกแบบและพัฒนาขั้นตอนวิธีการแก้ปัญหาการออกแบบและพัฒนาขั้นตอนวิธี
การแก้ปัญหาการออกแบบและพัฒนาขั้นตอนวิธี
 
Network fundamental
Network fundamentalNetwork fundamental
Network fundamental
 

Computer systemarchitecture

  • 1. Basic Computer Systems Design & Architecture 01418114 – Introduction to Computer Science Prasertsak U., Ph.D
  • 2. Computer Architecture • Von Neumann Architecture 2 The input unit - moves data from the outside into the computer. The output unit - moves results from inside the computer to the outside The control unit -acts as the stage unit to ensure that all the other components act in concert. The arithmetic/logic gate unit - performing arithmetic and logic operations on data The memory unit - holds both data and instructions
  • 3. Memory Address Contents 00000000 11100011 00000001 01010101 … … 11111100 00000000 11111101 11111111 11111110 10101010 11111111 00110011 3 Memory is a collection of cells, each with a unique physical address. For example, if the addressibility is 8, and there are 256 cells of memory, the cells would be addressed as follows: The bits in address 1111110 are numbered as follows:
  • 4. Memory Hierarchy 4 Picture from: http://people.nas.nasa.gov/
  • 5. Memory Access Time 5 Picture from: http://www.embedded.com/
  • 6. Control Unit 6 There are two special registers in the control unit. • Program Counter (PR) • Instruction Register (IR)
  • 7. BUS 7 A communication system that transfers data between components inside a computer, or between computers
  • 8. Multi-core processor 8 In consumer technologies, multi-core is usually the term used to describe two or more CPUs working together on the same chip.
  • 9. Parallelism and Performance in Multi- Core CPUs 9
  • 10. สถาปัตยกรรมคอมพิวเตอร์แบบ Centralized System • บางครั้งเรียกว่า Host Based System หรือแบบรวมศูนย์เป็นสถาปัตยกรรมแบบ รองรับผู้ใช้หลายคน โดยทุกคนจะใช้ทรัพยากรต่าง ๆ ร่วมกัน แบบ Time Sharing เครื่องคอมพิวเตอร์ ณ ส่วนกลางจะเป็นเครื่องขนาดใหญ่ เช่น Server Computer หรือ Mainframe Computer 10
  • 11. ข้อดี / ข้อเสีย ของการประมวลผลแบบรวมศูนย์ • ข้อดี ▫ การติดตั้งระบบ หรือโปรแกรมต่าง ๆ ทาได้ง่าย เนื่องจากสามารถติดตั้ง ณ ศูนย์กลาง เพียงจุดเดียว ▫ การควบคุมต่าง ๆ ทาได้ง่าย ▫ สะดวกในการจัดการข้อมูลและเรียกใช้ข้อมูล เช่น การรวบรวมข้อมูลเพื่อออกรายงาน หรือติดตามความเคลื่อนไหวต่าง ๆ ทาได้รวดเร็ว เนื่องจากข้อมูลพร้อมอยู่แล้ว ณ ส่วนกลาง ▫ การรักษาความปลอดภัยทาได้ง่าย 11
  • 12. ข้อดี / ข้อเสีย ของการประมวลผลแบบรวมศูนย์ • ข้อเสีย ▫ อาจเกิดปัญหา Single point of Failure (ความล้มเหลวของจุดเดียว) เนื่องจาก หากระบบส่วนกลางล่ม จะทาให้ระบบโดยรวมล่มทั้งหมด จึงมีความเสี่ยงสูง ▫ ทางานได้ช้าลงเมื่อมีจานวนผู้ใช้เพิ่มมากขึ้น เนื่องจากอาจเกิดจากปัญหาคอขวด (Bottle Neck) ของระบบ ▫ ค่าใช้จ่าย ในการดาเนินการสูง ▫ การปรับเปลี่ยนหรือเพิ่มเติมศักยภาพของระบบ เป็นเรื่องใหญ่และใช้ทุนสูง 12
  • 13. สถาปัตยกรรมคอมพิวเตอร์แบบ Decentralized System • มีลักษณะการทางานคล้ายกับแบบรวมศูนย์แต่ศูนย์รวมไม่ได้มีจุดเดียวเกิดจากการแยกตัว ของหน่วยงานออกเป็น เขตหรือภาคทาให้เกิดความต้องการในการกระจายระบบการ ทางานออกไป แต่ยังคงเชื่อมต่อข้อมูลระหว่างกัน 13
  • 14. สถาปัตยกรรมคอมพิวเตอร์แบบ Distributed System • สถาปัตยกรรมแบบกระจายเกิดขึ้น เนื่องจากต้องการลดขนาดของการทางาน ณ ศูนย์กลางให้เล็กลง เพื่อประหยัด ค่าใช้จ่าย และเนื่องจากการสื่อสารทาได้ รวดเร็วขึ้น เครื่องคอมพิวเตอร์มีประสิทธ ภาพมากขึ้น การกระจายการทางาน ออกไปยังส่วนต่าง ๆ จึงสามารถทาได้โดย ไม่ทาให้งานเกิดปัญหา และยังเป็นการ ช่วยกันทางานไปพร้อมกันได้ 14
  • 15. ข้อดี / ข้อเสีย ของการประมวลผลแบบกระจาย • ข้อดี ▫ ใช้เวลาในการตอบสนองเร็ว เนื่องจากไม่ต้องรอการประมวลผลจากศูนย์กลาง ▫ ลดต้นทุนตัวประมวลผลกลาง ▫ ระบบน่าเชื่อถือมากขึ้น เนื่องจากทนต่อความผิดพลาดได้ดี เมื่อหน่วยใดไม่สามารถ ทางานได้หน่วยอื่น ๆ จะไม่กระทบ สามารถทางานต่อไปได้ ▫ แบ่งปันทรัพยากรร่วมกัน ได้มีประสิทธิภาพมากขึ้น เนื่องจากระบบมีขนาดเล็กลง • ข้อเสีย ▫ การดูแลรักษาทาได้ยากขึ้น เนื่องจากมีการกระจายตัวของระบบไปตามจุดต่าง ๆ ▫ ความถูกต้องของข้อมูล อาจเกิดผลกระทบเนื่องจากข้อมูลกระจายอยู่หลายจุด ▫ การรักษาความปลอดภัยข้อมูลทาได้ยากมากขึ้น 15
  • 16. สถาปัตยกรรมการทางานแบบ Client-Server • เป็นการแบ่งการทางานออกเป็น2 ส่วน ได้แก่ ส่วนให้บริการ (Server) และส่วนขอใช้บริการ (Client) ซึ่งกระบวนการประมวลผลจะเน้นหนักในส่วนของ Server จากนั้นจึงส่งผลลัพธ์ที่ ได้กลับไปยังผู้ขอใช้บริการ ซึ่งโดยส่วนมากจะต้องมีการร้องขอใช้บริการมาจากฝ่าย Client ก่อนจากนั้น Server จึงตอบสนองความต้องการนั้นกลับไป (Response) 16
  • 17. สถาปัตยกรรมการทางานแบบ Cluster-Server • เป็นการแบ่งการทางานในส่วนให้บริการ(Server) เพิ่มขึ้นมากกว่า 1 จุด โดยในแต่ละจุด ทางานเหมือนกัน เนื่องจากต้องการ1) รองรับการขอใช้บริการจานวนมาก 2) เพื่อให้ทนต่อ ความผิดพลาดที่เกิดขึ้น เช่น 17
  • 18. สถาปัตยกรรมการทางานแบบ Cluster-Server (ต่อ) • แนวทางการติดตั้งเครื่องให้บริการ (Server) เพื่อให้ทนต่อความผิดพลาดที่เกิดขึ้น และเพื่อ แบ่งการทางานไม่ให้หนักมากเกินไป 18
  • 19. สถาปัตยกรรมคอมพิวเตอร์แบบ Peer-to-Peer (P2P) • P2P คืออะไร - “Peer-to-Peer เป็นระบบ Self organizing โดยปราศจากการควบคุม จากศูนย์กลาง และประกอบไปด้วยเพียร์ (Peer) ที่สามารถแชร์ทรัพยากร (resource) ให้ กับเพียร์อื่นๆเข้ามาใช้งานได้” 19 นาเสนอโดย http://javaboom.wordpress.com/ อ้างอิงจาก: A. Oram et al., Peer-to-Peer:Hardnessing the Power of Disruptive Technologies, Oreilly, 2001
  • 20. สถาปัตยกรรมคอมพิวเตอร์แบบ Peer-to-Peer (P2P) • Robust - คงทน ไม่ล่มง่าย ๆ เมื่อมี Peer ใดออกจากการเชื่อมต่อ ระบบโดยรวมยังคงทางาน ต่อไปได้ • High Availability - ระบบจะใช้การทาซ้าข้อมูล (Redundancy) เพื่อช่วยให้ข้อมูล กระจายตัวอยู่ในเครือข่าย และสามารถใช้แทนกันได้เมื่อต้องการ จึงทาให้ความพร้อมในการใช้งาน สูง • Load Balancing - ระบบสามารถช่วยแบ่งภาระการทางานออกไปได้ดี เมื่อมีคนต้องการ ข้อมูลเดียวกันมาก ๆ ข้อมูลที่กระจายอยู่ใน Peer ต่าง ๆ จะถูกนามาใช้เพื่อช่วยกันแบ่งปันให้กับ ผู้ที่ต้องการ จึงเป็นการช่วยแบ่งเบาภาระการทางานได้อย่างดี • มีความเป็นอิสระสูง(High Freedom) เนื่องจากไม่มี Admin ในระบบ ไม่มีศูนย์กลางใน การควบคุม การเข้าออกจากระบบสามารถทาได้โดยอิสระ ซึ่งไม่ทาให้ระบบล่ม ดังนั้นจึงมีความ ยืดหยุ่นและอิสระสูง 20 อ้างอิงจาก http://javaboom.wordpress.com/
  • 21. Peer-to-Peer Example in Network • Napster Architecture ▫ Centralized Indexing ▫ Centralized Searching 21
  • 22. Peer-to-Peer Example in Network • Gnutella & BitTorrent 22
  • 23. สถาปัตยกรรมการทางานแบบ Client-Server ใน ลักษณะ Web Based • การทางานแบบ Web Based นั้นมีลักษณะการทางานแบบ Client-Server แบ่งออกเป็น 3 ลักษณะ ได้แก่ ▫ 2-Tier Architecture – Application Server + DB Server รวมอยู่ที่เดียวกัน ▫ 3-Tier Architecture – Application Server และ DB Server แยกกันอยู่คนละระบบ ▫ n-Tier Architecture - หรือ multi-tier ลักษณะนี้ Application Server และ DB Server แยกกันอยู่คนละระบบ รวมทั้งมี Frontend Server เพื่อให้บริการในการจ่ายงานไปยังจุดต่าง ๆ ในลักษณะแบ่งภาระงาน (Load Balancing) หรือมี Server ให้บริการหลายตัวทางานร่วมกัน 23
  • 24. สถาปัตยกรรมการทางานแบบ Web Based • 2-Tier Architecture – Application Server + DB Server รวมอยู่ที่เดียวกัน 24
  • 25. สถาปัตยกรรมการทางานแบบ Web Based • 3-Tier Architecture – Application Server และ DB Server แยกกันอยู่คนละระบบ 25
  • 26. สถาปัตยกรรมการทางานแบบ Web Based • n-Tier Architecture - หรือ multi-tier มี Server ให้บริการ หลายตัว ( > 3 ระดับ) ทางานร่วมกัน 26
  • 27. Virtualization Technology & Cloud Computing • เมื่อระบบเครือข่ายมีประสิทธิภาพมากขึ้น เมื่ออุปกรณ์คอมพิวเตอร์มีสมรรถนะเพิ่มขึ้น การใช้ งานอุปกรณ์ให้เกิดประโยชน์สูงสุด ย่อมนามาซึ่งความคุ้มค่าในการลงทุน ฉะนั้นจะทาอย่างไร ให้อุปกรณ์ที่มีอยู่ในระดับเทพ..!! ถูกใช้ให้เกิดประโยชน์สูงสุด • Virtualization Technology คืออะไร ใช่คาตอบหรือไม่ และเกี่ยวอะไรกับคาว่า Cloud Computing 27
  • 29. Total Cost of Ownership • . 29 Purchasing cost 20-25% Post purchase/Maintenance cost 75-80%
  • 31. Introduction to Cloud Computing (cont.) • Overview Concept ▫ Package of computing resources, such as computation and storage ▫ Service individual homes and offices across the country via the network ▫ Readily available on demand 31 Computing Facilities (SW/HW/Network) Access Provide ProvidersConsumers Pay for Accessing
  • 32. IT Platform Evolution • IT Platform Evolution 32 Picture from: Cloud Computing for Dummies by John Hamrick
  • 33. Introduction to Cloud Computing (cont.) • Mobility of Contents 33 Your Desktop on a Thin Client Your Desktop on a SmartPhone Your Desktop on an iMac Your Desktop on a PC As you move between devices, your desktop follows you! *This slide from: Andre Coetzee in the presentation name “The Future of Technology”
  • 34. Some of the key providers • . 34 From: Courtesy Gravitant, Inc from Cloud Technology Spectrum
  • 35. Hosted Instances • Host Instances is the physical representation of a computer for running on a virtualization environment. ▫ H/W Configuration on demand (RAM, CPU, HD space, Network, etc.) ▫ Any OS, Applications ▫ Pay as you use 35
  • 36. Sample of Instances Request • . 36
  • 38. Virtualization (cont.) • Virtualization is the ability to run multiple operating systems on a single physical system and share the underlying hardware resources.* ▫ A Virtual machine (VM) is an isolated runtime environment (guest OS and applications) ▫ Multiple virtual systems (VMs) can run on a single physical system 38 *VMware white paper, Virtualization Overview
  • 39. Virtualization Architecture (cont.) • . 39 *VMware white paper, Virtualization Overview
  • 40. Virtualization (cont.) • Hypervisor - A hypervisor, a.k.a. a virtual machine manager/monitor (VMM), or virtualization manager, is a program that allows multiple operating systems to share a single hardware host. ▫ Controlling the host processor and resources, allocating ▫ To make sure that the guest operating systems (called virtual machines) cannot disrupt each other. 40
  • 41. Type of Hypervisor • Hypervisors in Virtualization 41 Picture from: http://www.cisco.com
  • 43. Benefits of Virtualization in Cloud Computing • Consumers don’t need to own hardware • Resources are rented as needed from Cloud providers • The providers allow creating virtual servers ▫ Choose the OS and software to run on each instance ▫ The VM will run on a large server farm ▫ Virtual server can initiate within a minute • Pay per use 43
  • 44. Software in the Cloud • Two perspective of software in the cloud* 44 *Source: Software Architecture and the Cloud, Grace A. Lewis, Research, Technology and Systems Solutions (RTSS) Program, SASI 2012
  • 45. Services Models • . 45 From : Cloud Security and Privacy by Mather and Kumaraswamy
  • 46. Services Models (cont.) • Data Privacy 46 *Source: Software Architecture and the Cloud, Grace A. Lewis, Research, Technology and Systems Solutions (RTSS) Program, SASI 2012
  • 47. What are the services? • . 47 Picture from: http://info.apps.gov
  • 49. Why isn’t everyone to use cloud? • The cloud acts as a big black box, nothing inside the cloud is visible to the clients • Clients have no idea or control over what happens inside a cloud • Clouds are still subject to traditional data confidentiality, integrity, availability, and privacy issues, plus some additional attacks 49
  • 50. Why isn’t everyone to use cloud? (cont.) • . 50
  • 51. Disadvantage of Cloud Computing • Technical Issues ▫ Possible downtime ▫ Lack of support ▫ Inflexibility – Locking into their proprietary application and format of services • Security Issues ▫ Prone to attack ▫ How safe is your data? • Long-running cost – Does the cloud application have all the features that the software does and if not, are the missing features important to you? 51