Upload
duongnhu
View
233
Download
7
Embed Size (px)
Citation preview
HỌC VIỆN KỸ THUẬT QUÂN SỰKHOA CÔNG NGHỆ THÔNG TIN
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAMĐộc lập – Tự do – Hạnh phúc
ĐỀ CƯƠNG CHI TIẾT HỌC PHẦNCÁC HỆ THỐNG PHÂN TÁN – DISTRIBUTED SYSTEMS
1. Thông tin về giáo viênTT Họ tên giáo viên Học hàm Học vị Đơn vị công tác (Bộ môn)1 Hoa Tất Thắng Giảng viên Tiến sỹ Hệ thống thông tin2 Nguyễn Bá Tường PGS Tiến sỹ Hệ thống thông tin
Thời gian, địa điểm làm việc: Các ngày trong tuần tại phòng làm việc bộ môn A1505
Địa chỉ liên hệ: Bộ môn Hệ thống Thông tin, Khoa Công nghệ Thông tin, Học viện Kỹ thuật Quân sự.
Điện thoại: 01233936886. Email: [email protected] Các hướng nghiên cứu chính: Công nghệ web, Khai phá dữ liệu, các hệ
thống phân tán.2. Thông tin chung về học phần
Tên học phần: Các hệ thống phân tán. Mã học phần: 12467151 Số tín chỉ: 03 Cấu trúc học phần: 60 tiết (30 lý thuyết, 30 thảo luận) Học phần bắt buộc. Các học phần tiên quyết: Mạng máy tính, công nghệ client server. Các yêu cầu đối với học phần. Nghe giảng trên lớp. Nghiên cứu tài liệu ở
nhà. Tích cực tham gia thảo luận. Giờ tín chỉ đối với các hoạt động:
o Nghe giảng lý thuyết:o Làm bài tập trên lớp:o Thảo luận:o Thực hành, thực tập (ở PTN, nhà máy, thực tập...):o Hoạt động theo nhóm:o Tự học:
Khoa/Bộ môn phụ trách học phần, địa chỉ: Bộ môn Hệ thống Thông tin, Khoa Công nghệ Thông tin, Học viện Kỹ thuật Quân sự.
3. Mục tiêu của học phần Kiến thức: Có kiến thức về lý thuyết các hệ phân tán, hiểu biết các
nguyên lý cơ bản của hệ phân tán. Kỹ năng: Triển khai các hệ thống phân tán đơn giản dựa trên kiến thức
thu được. Thái độ, chuyên cần: Yêu cầu chú ý nghe giảng trên lớp, tích cực nghiên
cứu tài liệu ở nhà và tham gia thảo luận.4. Tóm tắt nội dung
Cùng với sự phát triển của mạng máy tính, việc tính toán, quản lý ngày nay không chỉ đơn giản tập trung trong máy tính đơn như trước nữa. Nó đòi hỏi các hệ thống tính toán phải được kết hợp từ một số lượng lớn các máy tính hay còn có tên khác là các Hệ phân tán, nhằm ám chỉ tương phản với hệ tập trung trước đây.Ngày nay, hệ phân tán phát triển rất nhanh và được ứng dụng rộng khắp. Đó có thể là dịch vụ thông tin phân tán, như các dịch vụ trên Internet chẳng hạn. Đó cũng có thể là các cơ sở dữ liệu phân tán như các hệ thống đặt vé máy bay, xe lửa...hoặc các hệ thống tính toán phân tán.Mục đích môn học nhằm nêu ra một cách khái quát nhất những khái niệm, những nguyên lý cơ bản của một hệ phân tán nói chung. Đồng thời phân tích nghiên cứu sâu trong một số hệ phân tán cụ thể (Hệ thống Web phân tán, hệ thống file phân tán hay hệ thống phân tán tương hỗ...).
5. Nội dung chi tiết học phần
Bài Nội dungSố tiết
Giáo trình, Tài liệu
tham khảo(TT của TL
ở mục 6) Ghi chúBài 1 Giới thiệu chung về hệ phân tán 8 1Bài 2 Kiến trúc trong các hệ phân tán 4 1Bài 3 Truyền thông trong các hệ phân tán 4 1Bài 4 Tiến trình trong các hệ phân tán 4 1
Bài 5 Định danh trong các hệ phân tán 4 1Bài 6 Đồng bộ hóa trong các hệ phân tán. 4 1Bài 7 Nhất quán và nhân bản trong các hệ
phân tán4 1
Bài 8 Tính chịu lỗi trong các hệ phân tán 4 1Bài 9 An toàn, an ninh trong các hệ phân
tán.4 1
Bài 10 Hệ thống file phân tán 4 1Bài 11 Hệ thống tài liệu phân tán 4 1Bài 12 Giới thiệu công nghệ điện toán đám
mây4
Bài 13 Thảo luận và bài tập 8 16. Giáo trình, tài liệu tham khảo
TT
Tên giáo trình, tài liệu Tình trạng
1 Distributed system, Principles and Paradigms, Andrew S. Tanebaum, Maarten Van Steen, Pearson Education. Inc., 2007
Tài liệu điện tử
27. Hình thức tổ chức dạy học
7.1. Lịch trình chung: (Ghi tổng số giờ cho mỗi cột)Nội dung Hình thức tổ chức dạy học học phần Tổng
Lên lớp Thực hành, thí nghiệm, thực tập
Tự học, tự nghiên cứu
Lý thuyết
Bài tập
Thảo luận
Giới thiệu chung về hệ phân tán
8 8
Kiến trúc trong các hệ phân tán
2 2 4
Truyền thông trong các hệ phân tán
2 2 4
Tiến trình trong các hệ phân tán
2 2 4
Xây dựng ứng dụng phân tán Network Load Balancing cho máy chủ web
4 4
Định danh trong các hệ phân tán
2 2 4
Đồng bộ hóa trong các hệ phân tán.
2 2 4
Nhất quán và nhân bản trong các hệ phân tán
2 2 4
Tính chịu lỗi trong các hệ phân tán
2 2 4
An toàn, an ninh trong các hệ phân tán.
2 2 4
Hệ thống file phân tán 2 2 4Hệ thống tài liệu phân tán 4 4Giới thiệu công nghệ điện toán đám mây
4 4
Thảo luận và bài tập 2 2 4Tổng 30 2 22 6 60
7.2. Lịch trình tổ chức dạy học cụ thể:Nội dung 1: Giới thiệu chung về hệ phân tán
Hình thức tổ chức dạy học
Thời gian, địa điểm
Nội dung chính Yêu cầu SV chuẩn bị
Ghi chú
Lý thuyết 4 tiết Giới thiệu chung về hệ phân tánMục tiêu và đặc trưng của hệ phân tánCác nguyên lý của hệ phân tán
Đọc trước tài liệu ở nhà
Bài tậpThảo luận -Thực hành, thí nghiệm, thực tập,...
Tự học, tự nghiên cứu
Nội dung 2: Giới thiệu chung về hệ phân tánHình thức tổ chức dạy học
Thời gian, địa điểm
Nội dung chính Yêu cầu SV chuẩn bị
Ghi chú
Lý thuyết 4 tiết Giới thiệu về một số hệ phân tán tiêu biểu:
- Hê thống web dựa trên kiến trúc nhiều tầng
- Hệ thống file phân tán.
Hệ thống hỗ trợ file download bittorent
Đọc trước tài liệu ở nhà
Bài tậpThảo luận -Thực hành, thí nghiệm, thực tập,...Tự học, tự nghiên cứu
Nội dung 3: Kiến trúc các hệ phân tánHình thức tổ chức dạy học
Thời gian, địa điểm
Nội dung chính Yêu cầu SV chuẩn bị
Ghi chú
Lý thuyết 2 tiết Các loại kiến trúc- Kiến trúc phân
tầng- Kiến trúc
hướng đối tượng
- Kiến trúc
Đọc trước tài liệu ở nhà
hướng dữ liệu- Kiến trúc
hướng sự kiệnKiến trúc hệ thống
- Kiến trúc tập trung
- Kiến trúc phi tập trung
- Kiến trúc hỗn hợp
Phần mềm trung gian và phần mềm thích nghi trong các hệ phân tán
Bài tậpThảo luận 2 tiết Nội dung thảo luận
1. Xem xét mô hình kiến trúc của một số hệ phân tán (hệ thống file phân tán NFS, skype, bittorrents.
Thực hành, thí nghiệm, thực tập,...Tự học, tự nghiên cứu
Nội dung 4: Truyền thông trong các hệ phân tánHình thức tổ chức dạy học
Thời gian, địa điểm
Nội dung chính Yêu cầu SV chuẩn bị
Ghi chú
Lý thuyết 2 tiết Khái niệmTruyền thông ở mức mạng máy tínhTruyền thông ở mức midleware Gọi thủ tục từ xa (RPC)
Đọc trước tài liệu ở nhà
o RPC cơ bảno Truyền tham số
trong RPCo Một số mô hình
RPC mở rộng Triệu gọi đối tượng từ
xa (ROI)o Các đối tượng phân
táno Kết nối client với
đối tượngo Truyền tham số.
Truyền thông hướng thông điệp (MOC)
Truyền thông hướng dòng (SOC)o Hỗ trợ môi trường
toàn vẹn dữ liệu trong truyền thông hướng dòng.
o Luồng dữ liệu và chất lượng phục vụ
o Đồng bộ hóa các luồng dữ liệu
Bài tập 2 tiết 1. Xem xét thủ tục incr với hai tham số. Thủ tục cho phép thêm vào mỗi tham số một đơn vị. Hình dung thay vì hai tham số ta chỉ sử dụng một tham số - incr(i,i). Giả sử ban đầu i = 0. i sẽ nhận giá trị nào nếu:1 gọi liên kết?;2 Sử dụng phương pháp copy, khôi phục?
2. Hãy mô tả liên kết không cần kết nối giữa client và server khi sử dụng socket.
3. Hãy cho một số ví dụ khi truyền thông nhóm có lợi khi làm việc với cac luồng dữ liệu rời rạc.
Thảo luậnThực hành, thí nghiệm, thực tập,...Tự học, tự nghiên cứu
Nội dung 5: Tiến trình trong các hệ phân tánHình thức tổ chức dạy học
Thời gian, địa điểm
Nội dung chính Yêu cầu SV chuẩn bị
Ghi chú
Lý thuyết 2 tiết Tiến trình (Process) Một số khái niệm cơ bảnCác hệ thống đa luồng (Client/Server)Di trú mã Ý tưởng Các mô hình di trúẢo hóa Tổng quan ảo hóa Tiếp cận ảo hóa
Đọc trước tài liệu ở nhà
Bài tậpThảo luận 2 tiết Một số câu hỏi thảo
luận1. Trong bài học chúng
ta nghiên cứu các mô hình
file server đa luồng và thấy được lợi thế của mô hình đa luồng so với mô hình đơn luồng. Có trường hợp nào mô hình đơn luồng làm việc hiệu quả hơn? Cho một số ví dụ cụ thể?
2. Có nên hạn chế số luồng làm việc trên server? Trường hợp nào (nếu có)?
3. Thành lập các server song song bằng việc sinh ra các tiến trình lồng có hiệu quả nhưng cũng có những hạn chế nhất định so với mô hình server đa luồng. Hãy làm rõ điều này.
Thực hành, thí nghiệm, thực tập,...Tự học, tự nghiên cứu
Nội dung 6: Xây dựng ứng dụng phân tán Network Load Balancing cho máy chủ web
Hình thức tổ chức dạy học
Thời gian, địa điểm
Nội dung chính Yêu cầu SV chuẩn bị
Ghi chú
Lý thuyết Đọc trước tài liệu ở nhà
Bài tậpThảo luậnThực hành, thí nghiệm, thực
4 tiết Xây dựng ứng dụng phân tán Network Load
tập,... Balancing cho máy chủ webTự học, tự nghiên cứu
Nội dung 7: Định danh trong các hệ phân tánHình thức tổ chức dạy học
Thời gian, địa điểm
Nội dung chính Yêu cầu SV chuẩn bị
Ghi chú
Lý thuyết 2 tiết Định danh các thực thể Tên, định danh và địa chỉ Phân giải tên Thực thi không gian tênĐịnh vị các thực thể di động Tên và việc định vị các
thực thể Các giải pháp định vị
thực thểXóa bỏ các thực thể không còn tham chiếu
Đọc trước tài liệu ở nhà
Bài tậpThảo luận 2 tiết Một số câu hỏi thảo
luận1. Hãy cho biết ví dụ ở
đó để truy cập vào thực thể E thì địa chỉ của nó lại được phân giải đến địa chỉ khác.
2. Cùng nhau xem ví dụ thực thể chuyển từ vị trí A sang vị trí B khi nó đã đi qua một số vị trí trung gian, nơi mà ở đó chúng xuất
hiện không lâu. Khi đến vị trí B thì nó dừng lại. Sự thay đổi địa chỉ ở dịch vụ cây định vị có thể đòi hỏi tương đối nhiều thời gian. Do vậy nếu chỉ xuất hiện tạm thời ở một nơi nào đó thì không nên thực hiện sự thay đổi đó. Làm thế nào để phát hiện thực thể tại những vị trí tạm thời?
Thực hành, thí nghiệm, thực tập,...Tự học, tự nghiên cứu
Nội dung 8: Đồng bộ hóa trong các hệ phân tán.Hình thức tổ chức dạy học
Thời gian, địa điểm
Nội dung chính Yêu cầu SV chuẩn bị
Ghi chú
Lý thuyết 2 tiết Đồng bộ hóa đồng hồ vật lý
Đồng hồ vật lýCác giải thuật đồng bộ hóa đồng hồ vật lý.Đồng bộ hóa đồng hồ logic
Tem thời gian Lamport Giải thuật vector tem
thời gianTrạng thái tổng thể và các giải thuật bầu chọn
Giải thuật áp đảo Giải thuật vòng
Đọc trước tài liệu ở nhà
Bài tậpThảo luận 2 tiết Một số câu hỏi thảo
luận1. Hãy cho biết ít nhất 3
nguồn cản trở giữa trạm phát sóng thời gian chuẩn WWV và tiến trình trong các hệ phân tán, nơi có các đồng hồ nội bộ của mình.
2. Trong rất nhiều thuật toán phân tán đòi hỏi phải có tiến trình điều phối. Trong chừng mực nào thì những thuật toán đó có thể gọi là “phân tán”?
3. Hãy cho biết thuật toán đầy đủ khi khóa file thành công và không thành công. Xem xét với ví dụ khóa file để đọc và để ghi và với cả trường hợp file không bị khóa, bị khóa để đọc và bị khóa để ghi.
Thực hành, thí nghiệm, thực tập,...Tự học, tự nghiên cứu
Nội dung 9: Nhất quán và nhân bản trong các hệ phân tán.Hình thức tổ chức dạy học
Thời gian, địa điểm
Nội dung chính Yêu cầu SV chuẩn bị
Ghi chú
Lý thuyết 2 tiết Mô hình nhất quán lấy dữ liệu làm trung tâm
Đọc trước tài liệu ở nhà
Mô hình nhất quán chặt Mô hình nhất quán tuần
tự và mô hình nhất quán tuyến tính
Mô hình nhất quán nhân quả
Mô hình nhất quán FIFO Mô hình nhất quán yếuCác mô hình nhất quán lấy client làm trung tâm
Nhất quán cuối cùng Nhất quán đọc đều Nhất quán ghi đều Nhất quán đọc thao tác
ghi Nhất quán ghi theo sau
đọcCác giai thức phân phối và cập nhật bản sao
Bài tậpThảo luận 2 tiết Một số câu hỏi thảo
luận1. Hãy nêu các nguyên
nhân tạo ra model với tính nhất quán yếu?
2. Hãy cho biết trên thực tế hệ thống tên miền DNS nhân bản thế nào? Tại sao nó có thể làm việc tốt trên thực tế?
3. Hệ thống multiprocessor có một bus chung duy nhất. Liệu có thể thành lập ở hệ thống trên bộ
nhớ với tính nhất quán toàn diện?
4. Hãy cho biết việc đảm bảo nhất quán đối với nội dung được lưu trong bộ nhớ đệm của máy nội bộ khi mở một trang web vừa được làm mới?
Thực hành, thí nghiệm, thực tập,...Tự học, tự nghiên cứu
Nội dung 10: Tính chịu lỗi trong các hệ phân tánHình thức tổ chức dạy học
Thời gian, địa điểm
Nội dung chính Yêu cầu SV chuẩn bị
Ghi chú
Lý thuyết 2 tiết Giới thiệu tổng quan về tính chịu lỗi- Tính sẵn sàng- Tính tin cậy- Tính an toàn- Khả năng bảo trìCác phương pháp che dấu lỗi.- Một số mô hình lỗi
thường gặp- Che dấu lỗi bằng dư
thừa+ Dư thừa thông tin+ Dư thừa thời gian+ Dư thừa vật lý
Đọc trước tài liệu ở nhà
- Khôi phục tiến trình- Che dấu lỗi trong truyền
thông client server tin cậy
- Che dấu lỗi trong truyền thông nhóm tin cậy
Phục hồi lỗi- Phục hồi lỗi lùi
(backward recovery)- Phục hồi lỗi tiến
(forward recovery)Bài tậpThảo luận 2 tiết Một số câu hỏi thảo
luận1. Xét ví dụ browser trả
về một trang web với nội dung cũ từ bộ nhớ đệm của mình. Điều này có bị xem là lỗi? Nếu có thì lỗi đó thuộc loại lỗi nào?2. Hãy cho biết cơ chế
phục hồi sử dụng log.3. Việc ghi lại nhật ký
thông điệp của bên nhận thông thường được cho là cần thiết hơn so với ghi lại nhật ký bên nhận. Tại sao?
Thực hành, thí nghiệm, thực tập,...Tự học, tự nghiên cứu
Nội dung 11: An toàn an ninh trong các hệ phân tánHình thức tổ chức Thời Nội dung chính Yêu cầu Ghi
dạy học gian, địa điểm
SV chuẩn bị
chú
Lý thuyết 2 tiết Các vấn đề về an toàn an ninh trong các hệ thống phân tán- Các mối đe dọa, chính
sách và cơ chế an toàn, an ninh
- Các vấn đề khi thiết kế- Mật mãKênh an toàn- Xác thực- Tính toàn vẹn và tính
mật của thông điệp- Truyền thông nhóm an
toànKiểm soát truy cập- Các khía cạnh tổng quát
trong kiểm soát truy cập- Tường lửaQuản trị an toàn, an ninh- Quản trị khóa- Quản trị nhóm an toàn- Quản trị ủy quyềnAn toàn an ninh với hệ phân tán đối tượng
Đọc trước tài liệu ở nhà
Bài tậpThảo luận 2 tiết Câu hỏi thảo luận
1. Giả sử rằng bạn được yêu cầu làm phần mềm hỗ trợ giáo viên tổ chức thi kiểm tra. Hãy cho biết ít nhất 3 điều kiện để đảm bảo
cho sự an toàn phần mềm của bạn.
2. Cách thức để thay đổi vai trò trong ma trận kiểm soát truy cập.
3. Hãy cho biết một vài điểm mạnh và điểm yếu của server quản lý khóa tập trung
Thực hành, thí nghiệm, thực tập,...Tự học, tự nghiên cứu
Nội dung 12: Hệ thống file phân tánHình thức tổ chức dạy học
Thời gian, địa điểm
Nội dung chính Yêu cầu SV chuẩn bị
Ghi chú
Lý thuyết 2 tiết Hệ thống file mạng của SUN
Các nguyên lý của hệ thống file mạng của SUN
Hệ thống file mạng của Coda
Các nguyên lý của hệ thống file mạng của Coda
Một số hệ thống file phân tán khác
Đọc trước tài liệu ở nhà
Bài tậpThảo luận 2 tiết Câu hỏi thảo luận:
1. Có nhất thiết các fileserver trên đó có hệ thống NFS phiên bản 3 không lưu thông tin về trạng thái.
2. Giả sử tại thời điểm hiện tại trong hệ thống NFS cấm WRITE. Liệu có xảy ra trường hợp đầu tiên client mở file thành công sau đó yêu cầu khóa file đối với các thao tác READ?
3. Ngữ nghĩa lời gọi nào sử dụng đối với RPC2 với điều kiện tồn tại từ chối thao tác.
4. Điều gì cần phải đảm bảo để các file trên hệ thống server Vice có danh sách kiểm soát truy cập của mình
Thực hành, thí nghiệm, thực tập,...Tự học, tự nghiên cứu
Nội dung 13: Hệ thống tài liệu phân tánHình thức tổ chức dạy học
Thời gian, địa điểm
Nội dung chính Yêu cầu SV chuẩn bị
Ghi chú
Lý thuyết Đọc trước tài liệu ở nhà
Bài tập
Thảo luận 4 tiết World Wide WebLotus Notes
Tổng kết về hệ thống tài liệu phân tán
Một số câu hỏi thảo luận1. Giải thích tại sao hiệu
năng khi có các kết nối được lưu sẵn lại cao hơn so với trường hợp các kết nối không được lưu sẵn.
2. Hãy mô tả sơ đồ đơn giản khi server CDN Akamai không cần kiểm tra tài liệu gốc trên server cũng phát hiện ra rằng cache trên máy local đã hết hạn sử dụng.
Thực hành, thí nghiệm, thực tập,...Tự học, tự nghiên cứu
Nội dung 14: Giới thiệu công nghệ điện toán đám mâyHình thức tổ chức dạy học
Thời gian, địa điểm
Nội dung chính Yêu cầu SV chuẩn bị
Ghi chú
Lý thuyết Đọc trước tài liệu ở nhà
Bài tậpThảo luận 4 tiết Mô hình điện toán đám mây
- Mô hình dịch vụ
+ Dịch vụ phần mềm SaaS
(Software as a Service)
+ Dịch vụ nền tảng
PaaS(Platform as a Service)
+ Dịch vụ hạ tầng IaaS
(Infrastructure as a Service)
- Mô hình triển khai
+ Đám mây “doanh
nghiệp”(Private cloud)
+ Đám mây “chung”
(Community cloud)
+ Đám mây “công cộng”
(Public cloud)
+ Đám mây “lai” (Hybrid
cloud)Thực hành, thí nghiệm, thực tập,...Tự học, tự nghiên cứu
Nội dung15: Thảo luận và bài tậpHình thức tổ chức dạy học
Thời gian, địa điểm
Nội dung chính Yêu cầu SV chuẩn bị
Ghi chú
Lý thuyết Đọc trước tài liệu ở nhà
Bài tậpThảo luận 2 tiết - Ôn tậpThực hành, thí nghiệm, thực tập,...
2 tiết Ứng dụng platform as a service (PaaS) của Google App engine xây dựng ứng dụng trên nền điện toán đám may
Tự học, tự nghiên cứu
8. Chính sách đối với học phần và các yêu cầu khác của giáo viênYêu cầu và cách thức đánh giá, sự hiện diện trên lớp, mức độ tích cực tham gia các hoạt động trên lớp, các quy định về thời gian, chất lượng các bài tập, bài kiểm tra...
9. Phương pháp, hình thức kiểm tra - đánh giá kết quả học tập học phầnPhân chia các mục tiêu cho từng hình thức kiểm tra - đánh giá
9.1. Điểm chuyên cần: 10%Mục đích: Nhằm hỗ trợ thúc đẩy việc học tập đầy đủ của sinh viên, rèn luyện
cho sinh viên ý thức học tập tốt.Các kỹ thuật đánh giá:Điểm danh các buổi lên lớpGọi lên bảng làm bài tập tại các buổi giảng bài9.2. Điểm thường xuyên: 20%Mục đích: Nhằm hỗ trợ thúc đẩy việc học tập thường xuyên của sinh viên,
đồng thời qua đó có được những thông tin phản hồi giúp giảng viên, sinh viên điều chỉnh cách dạy, cách học, thay đổi phương pháp dạy, học cho phù hợp.
Các kỹ thuật đánh giá:Đọc phần tài liệu đã hướng dẫn theo từng phần; Bài tập theo từng nội dung môn học; Kiểm tra giữa kỳ
9.3. Thi kết thúc học phần: 70%
STTNội dung thi, kiểm
traLịch thi Lịch kiểm tra Ghi chú
1. Theo toàn bộ chương trình môn học
Thi cuối kỳ
Theo lịch chung của Học viện
2. Thi lại Theo lịch chung của Học viên
Chủ nhiệm Khoa
(Ký và ghi rõ họ tên)Chủ nhiệm Bộ môn(Ký và ghi rõ họ tên)
Giảng viên biên soạn(Ký và ghi rõ họ tên)