Tải bản đầy đủ (.pdf) (23 trang)

bài giảng hệ điều hành mạng nâng cao chương v thời gian và đồng bộ hóa thời gian

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.45 MB, 23 trang )

H
H


đi
đi


u h
u h
à
à
nh m
nh m


ng
ng
nâng cao
nâng cao
Gi
Gi


ng viên: Ho
ng viên: Ho
à
à
ng Xuân D
ng Xuân D



u
u
Email:
Email:
Khoa Công ngh
Khoa Công ngh


thông tin 1
thông tin 1
H
H


c vi
c vi


n Công ngh
n Công ngh


BC
BC
-
-
VT
VT
HĐH m

HĐH m


ng nâng cao
ng nâng cao
Th
Th


i gian &
i gian &
đ
đ


ng b
ng b


th
th


i gian
i gian
2
2
V. Th
V. Th



i gian v
i gian v
à
à
đ
đ


ng b
ng b


ho
ho
á
á
th
th


i gian
i gian
HĐH m
HĐH m


ng nâng cao
ng nâng cao
Th

Th


i gian &
i gian &
đ
đ


ng b
ng b


th
th


i gian
i gian
3
3
Th
Th


i gian v
i gian v
à
à
đ

đ


ng b
ng b


ho
ho
á
á
th
th


i gian
i gian
• Dịch vụ thời gian (Time Service)
– Yêu cầu và các vấn đề cần giải quyết
– Các nguồn cung cấp thời gian chính xác
• Các giải thuật đồng bộ hoá thời gian
– Đồng hồ lệch và sai giờ
– Giải thuật Cristian
– Giải thuật Berkerly
– Network Time Protocol - NTP
• Thời gian và đồng hồ logic
HĐH m
HĐH m



ng nâng cao
ng nâng cao
Th
Th


i gian &
i gian &
đ
đ


ng b
ng b


th
th


i gian
i gian
4
4
S
S


c
c



n thi
n thi
ế
ế
t c
t c


a d
a d


ch v
ch v


th
th


i gian
i gian
• Đo độ trễ (delays) giữa các thành phần
phân tán
• Đồng bộ hoá các dòng dữ liệu, như dòng
dữ liệu hình ảnh và âm thanh
• Thiết lập trật tự của các sự kiện
• Cung cấp tem thời gian chính xác cho xác

thực các giao dịch, đồng bộ hoá các
CSDL phân tán,
HĐH m
HĐH m


ng nâng cao
ng nâng cao
Th
Th


i gian &
i gian &
đ
đ


ng b
ng b


th
th


i gian
i gian
5
5

Cơ ch
Cơ ch
ế
ế
đ
đ


ng h
ng h


ph
ph


n c
n c


ng
ng
• Có sẵn trong các thiết bị điện tử
• Đếm số dao động xuất hiện trong tinh thể thạch
anh tại tần số xác định
• Lưu số dao động trong một thanh ghi đếm
• Ngắt được tạo ra định kỳ
• Chương trình xử lý ngắt đọc thanh ghi đếm,
chuyển đổi giá trị đọc được ra đơn vị thời gian
(giây, nanô giây) v à cập nhật đồng hồ phần

mềm.
• VD: thời gian tính bằng số giây kể từ 01/01/1970
HĐH m
HĐH m


ng nâng cao
ng nâng cao
Th
Th


i gian &
i gian &
đ
đ


ng b
ng b


th
th


i gian
i gian
6
6

C
C
á
á
c v
c v


n đ
n đ


v
v


i đ
i đ


ng h
ng h


ph
ph


n c
n c



ng
ng
• Tần số dao động
– Thay đổi theo nhiệt độ
– Không giống nhau trên các máy khác nhau
• Độ chính xác:
– Thường sai 1 giây trong 11.6 ng ày.
• Dịch vụ thời gian tập trung
– Không thích hợp vì độ trễ của các thông điệp
là không đồng đều.
HĐH m
HĐH m


ng nâng cao
ng nâng cao
Th
Th


i gian &
i gian &
đ
đ


ng b
ng b



th
th


i gian
i gian
7
7
Đ
Đ


ng h
ng h


l
l


ch v
ch v
à
à
sai gi
sai gi



• Đồng hồ lệch giờ:
– Thời gian tại hai đồng hồ trong hệ thống lệch nhau
• Đồng hồ sai giờ:
– Khoảng lệch thời gian giữa một đồng hồ so với đồng
hồ chuẩn.
HĐH m
HĐH m


ng nâng cao
ng nâng cao
Th
Th


i gian &
i gian &
đ
đ


ng b
ng b


th
th


i gian

i gian
8
8
C
C
á
á
c ngu
c ngu


n cung c
n cung c


p th
p th


i gian
i gian
ch
ch
í
í
nh x
nh x
á
á
c

c
• Universal Coordinated Time (UTC, from French)
– Dựa trên thời gian nguyên tử
– Phát quảng bá từng giây thông qua c ác trạm truyền
thanh và vệ tinh
• Global Positioning System (GPS)
– Phát quảng bá UTC
• Các trạm thu UTC và GPS: sử dụng cho các
mục đích thương mại và đồng bộ qua đồng hồ
cục bộ.
HĐH m
HĐH m


ng nâng cao
ng nâng cao
Th
Th


i gian &
i gian &
đ
đ


ng b
ng b



th
th


i gian
i gian
9
9
Đ
Đ


ng b
ng b


đ
đ


ng h
ng h


• Giả thiết sai số thời gian cho phép là D
• Đồng bộ đồng hồ ngoài (external) với nguồn thời
gian chuẩn:
– Sai số tuyệt đối giữa đồng hồ và nguồn thời gian
chuẩn phải nhỏ hơn D tại mọi thời điểm trong chu kỳ
đồng bộ hoá;

– Độ chính xác phải trong giới hạn D.
• Đồng bộ các đồng hồ nội bộ (internal) với nhau:
– Sai số tuyệt đối giữa các đồng hồ phải nhỏ hơn D tại
mọi thời điểm trong chu kỳ đồng bộ hoá;
– Các đồng hồ phải cho giá trị thời gian với sai khác
trong giới hạn D.
HĐH m
HĐH m


ng nâng cao
ng nâng cao
Th
Th


i gian &
i gian &
đ
đ


ng b
ng b


th
th



i gian
i gian
10
10
Hi
Hi


u ch
u ch


nh th
nh th


i gian
i gian
• Giả thiết 2 đồng hồ lệch nhau với tần suất
R mili giây / giây:
– Sai khác lớn nhất giữa 2 đồng hồ này là
2R/giây
– Vì thế chúng cần được đồng bộ hoá theo chu
kỳ D/2R, để đạt được sai số cho phép D.
• Hiệu chỉnh đúng đồng hồ:
– Đọc giá trị UTC và chỉnh lại đồng hồ phần
mềm.
HĐH m
HĐH m



ng nâng cao
ng nâng cao
Th
Th


i gian &
i gian &
đ
đ


ng b
ng b


th
th


i gian
i gian
11
11
C
C
á
á
c phương ph

c phương ph
á
á
p đ
p đ


ng b
ng b


th
th


i gian
i gian
• Các hệ thống đồng bộ
– Đơn giản, thường dựa trên các giới hạn thời
gian biết trước.
• Các hệ thống không đồng bộ
– Mạng Intranet:
• Giải thuật Cristian
• Giải thuật Berkerly
– Mạng Internet:
• Network Time Protocol
HĐH m
HĐH m



ng nâng cao
ng nâng cao
Th
Th


i gian &
i gian &
đ
đ


ng b
ng b


th
th


i gian
i gian
12
12
C
C
á
á
c h
c h



th
th


ng đ
ng đ


ng b
ng b


• Đồng bộ hoá nội bộ giữa 2 tiến trình
– Biết trước các giới hạn MAX, MIN của độ trễ thông
điệp
– Độ trễ đồng hồ và tần suất thực thi
• Giả thiết tiến trình 1 gửi thông điệp đến tiến trình
2 với thời gian t:
– Tiến trình 2 có thể hiệu chỉnh đồng hồ của mình theo
thời gian t + (MAX + MIN)/2
– Độ lệch lớn nhất giữa đồng hồ của hai tiến trình là
(MAX - MIN)/2
HĐH m
HĐH m


ng nâng cao
ng nâng cao

Th
Th


i gian &
i gian &
đ
đ


ng b
ng b


th
th


i gian
i gian
13
13
Gi
Gi


i thu
i thu



t Cristian
t Cristian
• Ước lượng thời gian truyền thông điệp là p = (T
1
- T
0
- h)/2 (1/2 của thời gian chu trình request-
reply).
• Hiệu chỉnh đồng hồ đến UTC + p
• Lặp lại chu trình trên và đo khoảng thời gian T
1
-
T
0
. Ghi nhận giá trị T
1
- T
0
nhỏ nhất là thời điểm
cho thời gian chính xác nhất.
HĐH m
HĐH m


ng nâng cao
ng nâng cao
Th
Th



i gian &
i gian &
đ
đ


ng b
ng b


th
th


i gian
i gian
14
14
Gi
Gi


i thu
i thu


t Cristian (ti
t Cristian (ti
ế
ế

p)
p)
• Chỉ đồng bộ hoá được nếu thời gian
round-trip là ngắn so với độ chính xác yêu
cầu
• Chỉ đạt được độ chính xác cao khi thời
gian truyền thông điệp nhỏ nhất.
• Server có thể là nút yếu nhất trong hệ
thống.
HĐH m
HĐH m


ng nâng cao
ng nâng cao
Th
Th


i gian &
i gian &
đ
đ


ng b
ng b


th

th


i gian
i gian
15
15
Gi
Gi


i thu
i thu


t Berkerly
t Berkerly
Đồng bộ hoá thực hiện tốt trong khoảng 20-25ms cho 15 máy tính, với tần
suất lệch là 2 x 10
-5
và thời gian max của chu trình thông điệp là 10ms.
HĐH m
HĐH m


ng nâng cao
ng nâng cao
Th
Th



i gian &
i gian &
đ
đ


ng b
ng b


th
th


i gian
i gian
16
16
Gi
Gi


i thu
i thu


t Berkerly
t Berkerly
• Lựa chọn một điều phối viên master định

kỳ thăm các slaves
• Master ước lượng thời gian cục bộ tại các
slaves dựa trên round-trip
• Master tính thời gian trung bình cho tất cả
slaves, trừ các giá trị không hợp lệ (sai
quá lớn)
• Master gửi thông điệp hiệu chỉnh thời gian
đến từng slave.
HĐH m
HĐH m


ng nâng cao
ng nâng cao
Th
Th


i gian &
i gian &
đ
đ


ng b
ng b


th
th



i gian
i gian
17
17
Gi
Gi


i thu
i thu


t Berkerly
t Berkerly
• Độ chính xác:
– Phụ thuộc vào thời gian round-trip
• Sai số trung bình:
– Loại trừ được các ngoại lệ thời gian
– Thời gian hiệu chỉnh là trung bình của giá trị
thời gian đọc được tại các đồng hồ với độ
lệch nằm trong một giới hạn.
• Trường hợp master gặp trục trặc:
– Bầu chọn ra 1 master mới
HĐH m
HĐH m


ng nâng cao

ng nâng cao
Th
Th


i gian &
i gian &
đ
đ


ng b
ng b


th
th


i gian
i gian
18
18
Net
Net
work Time Protocol
work Time Protocol
• Gồm nhiều máy chủ NTP trên mạng Internet
• Primary servers kết nối trực tiếp với thiết bị tiếp
nhận thông điệp UTC

• Secondary servers đồng bộ hoá thời gian với
primary servers
• Tertiary servers đồng bộ hoá thời gian với
secondary servers,
• Số lượng servers phụ thuộc vào số lượng
clients.
HĐH m
HĐH m


ng nâng cao
ng nâng cao
Th
Th


i gian &
i gian &
đ
đ


ng b
ng b


th
th



i gian
i gian
19
19
T
T


ch
ch


c NTP S
c NTP S
ervers
ervers
HĐH m
HĐH m


ng nâng cao
ng nâng cao
Th
Th


i gian &
i gian &
đ
đ



ng b
ng b


th
th


i gian
i gian
20
20
C
C
á
á
c ch
c ch
ế
ế
đ
đ


đ
đ



ng b
ng b


ho
ho
á
á
NTP
NTP
• Multicast
– Một hoặc một số servers định kỳ multicast đến các servers khác
trên đường truyền LAN tốc độ cao;
– Các servers hiệu chỉnh đồng hồ với giả thiết độ trễ thông điệp rất
nhỏ.
• Chế độ gọi thủ tục (Procedure Call Mode)
– Tương tự giải thuật Cristian: client yêu c ầu thời gian từ một vài
máy chủ
– Thường dùng để có độ chính xác cao hơn hoặc nơi không có
multicast
• Giao thức đối xứng (Symetric Protocol)
– Sử dụng bởi các masters trong LAN v à các lớp servers gần
masters nhất;
– Cho độ chính xác cao nhất, dựa trên việc đồng bộ hoá từng cặp.
HĐH m
HĐH m


ng nâng cao
ng nâng cao

Th
Th


i gian &
i gian &
đ
đ


ng b
ng b


th
th


i gian
i gian
21
21
Th
Th


i gian logic
i gian logic
• Trong nhiều trường hợp, ta chỉ cần thống
nhất về thời gian trong hệ thống (không

nhất thiết là thời gian UTC).
• Nhờ vậy có thể suy ra trật tự của các sự
kiện có tính nhân - quả:
a → b (a xuất hiện trước b)
• Thời gian logic biểu diễn quan hệ nhân -
quả.
HĐH m
HĐH m


ng nâng cao
ng nâng cao
Th
Th


i gian &
i gian &
đ
đ


ng b
ng b


th
th



i gian
i gian
22
22
V
V
í
í
d
d


v
v


tr
tr


t t
t t


nhân
nhân
-
-
qu
qu



HĐH m
HĐH m


ng nâng cao
ng nâng cao
Th
Th


i gian &
i gian &
đ
đ


ng b
ng b


th
th


i gian
i gian
23
23

Đ
Đ


ng h
ng h


logic
logic
• Đồng hồ logic: sử dụng bộ đếm phần mềm
tăng đều (không phải là thời gian thực)
• Mỗi tiến trình có một bộ đếm làm tem thời
gian.
• a → b ám chỉ T(a) < T(b), trong đó T(a) là
tem thời gian logic của a, T(b) là tem thời
gian logic của b.

×