Nôị dung Mục tiêu Giải thuật LeLann để lập trình cho các hệ phân tán gắn bó yếu Server có khả năng phát/nhận thông điệp.. Giải thuật LeLann để lập trình cho các hệ phân tán gắn b
Trang 1Áp dụng phương án (thuật toán)
Le Lann đảm bảo gắn bó dữ liệu
trong CSDL phân tán
GVHD: PGS.TS Lê Văn Sơn
Học viên : Mai Văn Tùng
Trang 2Nôị dung
Mục tiêu
Giải thuật LeLann để lập trình cho các
hệ phân tán gắn bó yếu
Server có khả năng phát/nhận thông điệp.
Xây dựng giải pháp gắn bó yếu trên CSDL.
Kết luận
Trang 3Mục tiêu
Trình bày giải pháp đồng bộ dữ liêu bằng thuật toán
Xây dựng mô hình mô phỏng
Trang 4Giải thuật LeLann để lập trình cho các hệ phân tán
gắn bó yếu
Gắn bó thông tin trong hệ phân tán
Trang 5Giải thuật LeLann để lập
trình cho các hệ phân tán
gắn bó yếu (tt)
thời điểm mà nó chỉ đồng bộ theo 1 chu
kỳ nhất định (có thể là chu kỳ thời gian)
các Routers trong một hệ thống viễn thông có một số trường hợp cũng không cần thiết phải gắn bó mạnh mà nó chỉ được cập nhật bảng định tuyến với nhau theo một chu kỳ thời gian
Trang 6Giải thuật LeLann để lập
trình cho các hệ phân tán
gắn bó yếu (tt)
Bài toán đặt ra
Cho tập hợp gồm các nút phần tử mạng được kết nối với nhau theo vòng Ring Độ
ưu tiên của các phần tử mạng ban đầu là chưa có và không có phần tử nào đảm nhận chức năng là bộ điều khiển trung tâm Vấn đề đặt ra là tìm phần tử trên vòng Ring có độ ưu tiên là cao nhất (hoặc thấp nhất) Không mất tính tổng quát, bài toán yêu cầu tìm phần tử có độ ưu tiên cao nhất
Trang 7Giải thuật LeLann để lập trình cho các hệ phân tán
gắn bó yếu (tt)
Giải thuật LeLann
ưu tiên khác nhau:
- Nếu độ ưu tiên của thông điệp nhận được cao hơn độ ưu tiên của chính
nó, thông điệp này sẽ được chuyển tiếp trên vòng Ring
- Nếu độ ưu tiên của thông điệp nhận được thấp hơn độ ưu tiên của chính
nó, không chuyển tiếp thông điệp nữa
- Nếu độ ưu tiên của thông điệp bằng nhau, đó chính là độ ưu tiên cao nhất cần tìm trên vòng Ring
Chú ý: giải thuật này chỉ xác định một và chỉ một độ ưu tiên cao nhất trên mạng
Mô hình node mạng nối theo dạng vòng
Trang 8Giải thuật LeLann để lập
trình cho các hệ phân tán
gắn bó yếu (tt)
Ví du ̣: Áp dụng giải thuật LeLann để đồng bộ dữ liệu cho các Routers trên vòng Ring theo chu kỳ thời gian
T=30s
Repeat send(nid); //Gửi thông tin theo chiều kim đồng hồ trên vòng Ring
receive(nid);
update(information); //Cập nhật thông tin
Delay(30s); //Tạm dừng 30s trước phát/nhận thông điệp
Until disconect
Mô hình node mạng
Trang 9Xây dựng hệ thống phân tán với
một số Server có khả năng
phát/nhận thông điệp.
Bài toán
Xây dựng hệ thống đa server có khả năng phát/nhận thông điệp theo hình vẽ dưới đây
Nội dung thông điệp ở đây giả sử mang thông tin về độ ưu tiên của các Server, thông điệp sẽ được phát/nhận theo chiều kim đồng hồ như giải thuật LeLann.
Trang 10Xây dựng hệ thống phân tán với
một số Server có khả năng phát/nhận thông điệp(tt).
Trước tiên ta xây dựng bảng định tuyến để căn
cứ vào bảng này, server sẽ chuyển các thông điệp trên mạng đi theo chiều kim đồng hồ.
Ví dụ:
Server 01 -> Server 02
Server 02 -> Server 03
Server 03 -> Server 04
…
Server N-1 -> Server N
Server N -> Server 01
Như vậy, các thông điệp phát đi trên mạng từ Server(i) đến Server(i+1) Ngược lại, Server(i) chỉ nhận được gói tin từ Server(i-1) gửi đến.
Trang 11Xây dựng hệ thống phân tán với
một số Server có khả năng phát/nhận thông điệp(tt).
Xây dựng thủ tục cho các Servers
Server 1
Server 3
Server 2
Vòng 1: Thực hiện Khóa trường dữ liệu
Vòng 2: Thực hiện Cập nhật bảng tạm
Vòng 3: Thực hiện Cập nhật bảng chính
Vòng 4: các tiến trìnhThực hiện Kiểm tra quá trình đồng bộ
Trang 12Xây dựng hệ thống phân tán với
một số Server có khả năng phát/nhận thông điệp(tt).
Xây dựng thủ tục phát/nhận thông điệp
Vòng thông tin đăng ký trong hệ thống Đa Server Các trạng thái hành động trong hệ thống Đa Server Nội dung tương ứng với hành động trong hệ thống Tên Server được cập nhật khi di chuyển trong hệ thống
Số đồng hồ logic thiết lập chế độ ưu tiên thông điệp Jeton hiển thị cập nhật thông tin các Server trong hệ thống Thông tin Server bắt đầu vòng tròn ảo trong hệ thống
Các biến cờ phân biệt thông điệp và các trường thông điệp trong hệ thống
Cấu trúc thông điệp
Trang 13Xây dựng giải pháp gắn bó
yếu trên CSDL
Một số thuật toán khác giải quyết
vấn đề gắn bó CSDL.
Thuật toán đảm bảo sự gắn bó yếu nhờ dấu
Thuật toán đảm bảo sự gắn bó yếu nhờ
bộ tuần tự tuần hoàn
Trang 14Xây dựng giải pháp gắn bó yếu
trên CSDL
Bài toán gắn bó trên CSDL
Router 3
192.168.1.4/30 192.168.1.0/30
192.168.1.8/30
192.168.1.12/30
192.168.1.16/30
192.168.1.20/30 192.168.1.24/30
192.168.1.28/30
- Giả sử trên một hệ thống mạng viễn thông có các thiết bị định tuyến (router), mỗi thiết bị ban đầu chứa bảng (dữ liệu) định tuyến của mình Lúc này các bảng định tuyến chỉ chứa các địa chỉ mạng của các phần tử kế nối trực tiếp (connected) với chính nó
Yêu cầu : Xây dựng chương trình mô phỏng việc cập nhật dữ liệu của các bảng định
tuyến trên các router, cụ thể như sau:
Dữ liệu đầu vào: thông tin các bảng định tuyến của các router được lưu ở file
connected routerX.txt Trên router 1 có các mạng như sau:
192.168.1.0/30, 192.168.1.4/30, 192.168.1.8/30
Trên router 2 có các mạng như sau:
192.168.1.24/30, 192.168.1.28/30 Trên router 3 có các mạng như sau:
192.168.1.12/30, 192.168.1.16/30, 192.168.1.18/30
Dữ liệu đầu ra: thông tin định tuyến sau khi các router đã trao đổi thông tin với nhau và được lưu ở file: routing table.txt
Mô hình kết nối
Trang 15Xây dựng giải pháp gắn bó
yếu trên CSDL
dựng ở trên cho các Server gửi/nhận thông
điệp đã xây dựng ở phần 1 và 2.
cho router kế nó trên vòng Ring Thông tin định tuyến được đọc từ các file connected routerX.txt và routing table.txt
nhận sẽ ghi kết quả lên file routing table.txt và tiếp tục chuyển (forward) đến router kế tiếp theo thứ tự.
các router trên hệ thống mạng sẽ có thông tin định tuyến hoàn chỉnh
Trang 16Kết luận
nắm bắt được nhiều kiến thức về lập trình mạng và ngôn ngữ Java Chương trình ứng dụng xây dựng về cơ bản đã đạt được mục tiêu bài toán đặt ra.
gửi để tối ưu về mặt đường truyền.