1
课程详述
COURSE SPECIFICATION
以下课程信息可能根据实际授课需要或在课程检讨之后产生变动。如对课程有任何疑问,请联
系授课教师。
The course information as follows may be subject to change, either during the session because of unforeseen
circumstances, or following review of the course at the end of the session. Queries about the course should be
directed to the course instructor.
1.
课程名称 Course Title
分布与云计算 Distributed and Cloud Computing
2.
授课院系
Originating Department
计算机科学与工程系 Department of Computer Science and Engineering
3.
课程编号
Course Code
CS328
4.
课程学分 Credit Value
3
5.
课程类别
Course Type
专业选修课 Major Elective Courses
6.
授课学期
Semester
春季 Spring
7.
授课语言
Teaching Language
英文 English
8.
他授课教师)
Instructor(s), Affiliation&
Contact
For team teaching, please list
all instructors
Georgios Theodoropoulos,讲席教授,计算机科学与工程系,
georgios@sustech.edu.cn
Georgios Theodoropoulos, Chair Professor, Department of Computer Science and
Engineering, georgios@sustech.edu.cn
9.
/教、
方式
Tutor/TA(s), Contact
待公布 To be announced
10.
选课人数限额(不填)
Maximum Enrolment
Optional
授课方式
Delivery Method
习题/辅导/讨论
Tutorials
实验/实习
Lab/Practical
其它(请具体注明)
OtherPlease specify
总学时
Total
11.
学时数
32
64
2
Credit Hours
12.
先修课程、其它学习要求
Pre-requisites or Other
Academic Requirements
CS102A 计算机程序设计基础 A Introduction to Computer Programming A
CS305 计算机网络 Computer Networks
13.
后续课程、其它学习规划
Courses for which this
course is a pre-requisite
None.
14.
其它要求修读本课程的学系
Cross-listing Dept.
教学大纲及教学日历 SYLLABUS
15.
教学目标 Course Objectives
This is an introductory course in the basic concepts, technologies and standards in the area of Distributed and Cloud
Computing. It will cover important elements of distributed systems design such as system models and architectures,
communication mechanisms, consensus algorithms, distributed objects and synchronization. The culmination in the
development of distributed systems is Cloud Computing which is recognized as one of the top five emerging technologies
that will have a major impact on the quality of science and society over the next 20 years. The course will provide an
overview of this strategic field and will discuss the applications challenges and demands that drive developments, current
cloud computing architectures and technologies and some existing industrial platforms.
The aims of this course are to:
Provide an understanding of the fundamental problems, terminology, technologies, standards, architectures,
protocols and models in Distributed Systems
Provide an understanding of the applications challenges and demands that drive developments in cloud
computing, and of the underlying architectures, technologies and service models.
16.
预达学习成果 Learning Outcomes
On successful completion of this module, the student should be able to:
Recognise and appreciate fundamental characteristics and issues of distributed systems such as timing,
coordination and agreement.
Explain the main types of architectures and mechanisms of communication, such as client-server, distributed
object models and communication protocols.
Design and develop distributed systems
Understanding the basic concepts and technologies of cloud computing
17.
课程内容及教学日历 (如授课语言以英文为主,则课程内容介绍可以用英文;如团队教学或模块教学,教学日历须注明
主讲人)
Course Contents (in Parts/Chapters/Sections/Weeks. Please notify name of instructor for course section(s), if
this is a team teaching or module course.)
3
64 hours in total. 2 hours lecture and 2 hours lab for each week. Corresponding to the following sections
LECTURES
Week 1: Characterisation of Distributed Systems 1.1 Introduction 2
o Trends in distributed systems
o Challenges
Week 2: System Models
o Physical models
o Architectural models
o Fundamental models
Week 3: Interprocess Communication
o Networks and Internet Protocols
o The API for the Internet protocols
o Multicast communication
o Overlay networks
Weeks 4-5: Distributed Objects and Remote Invocation
o Distributed objects
o Request-reply protocols
o Remote procedure call
o Remote method invocation
Weeks 6-7: Indirect communications
o Group communication
o Publish-subscribe systems
o Message queues
o Shared memory approaches
Week 8: Operating Systems
o The operating system layer and architecture
o Processes and threads
o Communication and invocation
Weeks 9-10: Time Global States
o Clocks, events and process states
o Synchronizing physical clocks
o Logical time and logical clocks
o Global states
Weeks 11-12: Coordination and Agreement
o Distributed mutual exclusion
o Elections
o Coordination and agreement in group communication
4
o Consensus and related problems
Week 13: Cloud Computing Fundamental Principles and Architecture
o The cloud reference model
o Types of clouds
o Open challenges
Week 14: Cloud Virtualisation
o Characteristics of virtualized environments
o Taxonomy of virtualization techniques
o Examples: Xen, VMware, Microsoft Hyper-V
Week 15: Cloud Computing Advanced topics
o Security
o Energy
o Economics
o Industrial platforms and new developments
Week 16: Summary and Revision
LABS
Week 1: TUTORIAL. Familiarisation with the environment and a simple client-server system
Weeks 2-4: LAB ASSIGNMENT 1. The design and implementation of register and login system using RMI
Weeks 5-6: LAB ASSIGNMENT 2. The design and implementation of a Prototype RMI
Weeks 7-8: LAB ASSIGNMENT 3. Bulk register simulator and optimisation of RMI
Weeks 9-11: LAB ASSIGNMENT 4. Design and realize a publish-subscribe system
Weeks 12-15: LAB ASSIGNMENT 5. Implementation of a SAAS administration system using SPRING.
Week 16: Summary and Review.
18.
教材及其它参考资料 Textbook and Supplementary Readings
Distributed Systems, Concepts and Design, by George Coulouris, Jean Dollimore, Tim Kindberg and Gordon
Blair, Fifth Edition, Addison Wesley, ISBN 0-13-214301-1
Mastering Cloud Computing: Foundations and Applications Programming, by Rajkumar Buyya Christian
Vecchiola S.Thamarai Selvi, Morgan Kaufmann, ISBN: 9780124114548
Distributed and Cloud Computing: From Parallel Processing to the Internet of Things, Kai Hwang, Jack
Dongarra, and Geoffrey C. Fox, Morgan Kaufmann.
课程评估 ASSESSMENT
19.
评估形式
评估时间
占考试总成绩百分比
违纪处罚
备注
5
Type of
Assessment
Time
% of final
score
Penalty
Notes
出勤 Attendance
10%
Lab Attendance only
课堂表现
Class
Performance
小测验
Quiz
课程项目 Projects
平时作业
Assignments
30%
Lab assignments. Detailed marking
scheme provided to the students.
期中考试
Mid-Term Test
期末考试
Final Exam
60%
Unseen exam
期末报告
Final
Presentation
其它(可根据需
改写以上评估方
式)
Others (The
above may be
modified as
necessary)
20.
记分方式 GRADING SYSTEM
A. 十三级等级制 Letter Grading
B. 二级记分制(通/不通过) Pass/Fail Grading
课程审批 REVIEW AND APPROVAL
21.
本课程设置已经过以下责任人/员会审议通过
This Course has been approved by the following person or committee of authority