5 Reserved for Sun Microsystems internal use
4.3.4 Giao thức Hello (The Hello Protocol)
Giao thức HELLO cung cấp một ví dụ của IGP sử dụng một tiêu chuẩn chọn đ−ờng (routing metric) dựa trên độ trễ mạng thay cho dùng số đếm hop. Mặc dù HELLO bây giờ đã cũ nh−ng nó cũng đã có vải trò quan trọng trong lịch sử của Internet bởi vì nó đ−ợc IGP sử dụng giữa các Routers loại “fuzz ball” trong NSFNET backbone khởi đầu. HELLO có ý nghĩa quan trọng đối với chúng ta bởi vì nó cung cấp một ví dụ của một giải thuật vector-distance mà không sử dụng số đếm hop.
HELLO cung cấp 2 chức năng: nó đồng bộ hoá các đồng hồ giữa một bộ các máy và nó cho phép mỗi máy tính toán các con đ−ờng trễ ít nhất tới các đích. Và vì vậy các thông báo HELLO mang thông tin dấu hiệu thời gian (time stamp) cũng nh− thông tin chọn đ−ờng. ý t−ởng căn bản đằng sau
HELLO thì đơn giản là: mỗi máy tham gia trong trao đổi HELLO duy trì một bảng −ớc l−ợng tốt nhất của nó của các đồng hồ ở trong các máy láng giềng. Tr−ớc khi phát một gói tin, một máy bổ xung vào timestamp của nó bằng việc coppy giá trị đồng hồ hiện tại vào trong gói tin. Khi một gói tin tới, bên thu tính toán độ trễ hiện tại dựa vào liên kết. Để làm nh− vậy, bên thu trừ giá trị timestamp trên gói tin đến định kỳ, các máy hỏi ý kiến (poll) của các láng giềng của chúng để thiết lập lại những −ớc l−ợng cho các đồng hồ.
Các thông báo HELLO cũng cho phép các máy thành viên tính toán các tuyến mới..Giải thuật làm việc rất giống RIP nh−ng sử dụng độ trễ thay cho hop counrt. Mỗi máy gửi một cách định kỳ tới các láng giềng của nó một bảng các độ trễ dự tính cho tất cả các máy khác. Giả sử máy A gửi cho máy B một bảng chọn đ−ờng xác định rõ các đích và các độ trễ, B sẽ kiểm tra mỗi điểm vào trong bảng. Nếu độ trễ hiện tại của B để đạt tới một đích D cao hơn so với độ trễ từ A tới D cộng với trễ từ B tới A, thì B thay đổi tuyến của nó và gửi l−u thông tới D thông qua A. Đó là B định tuyến l−u thông tới A với điều kiện là độ trễ cho con đ−ờng đó mất ít nhất.
Nh− trong bất kỳ giải thuật chọn đ−ờng nào, HELLO không thể thay đổi tuyến nhanh chóng, hoặc là nó sẽ trở nên không ổn định.Tính không ổn định trong giải thuật chọn đ−ờng sinh ra hiện t−ợng giao động 2 giai đoạn trong đó l−u thông sẽ chuyển qua chuyển lại giữa những con đ−ờng biến đổi. ở giai đoạn đầu, các máy tìm thấy một con đ−ờng có tải nhẹ và đột ngột chuyển l−u thông của chúng lên con đ−ờng đó,chỉ thấy rằng nó trở nên quá tải hoàn toàn.Trong giai đoạn 2, các máy chuyển l−u thông khỏi tuyến đ−ờng bị quá tải, chỉ thấy rằng nó trở thành tuyến có tải thấp nhất và vòng quay cứ tiếp tục. Những giao động nh− vậy chắc chắn xảy ra. Để tránh chúng, những thực hiện của HELLO đã chọn để thay đổi tuyến chỉ khi sự khác biệt về độ trễ là lớn.
Hình 4-12 mô tả khuôn dạng HELLO message. Giao thức phức tạp hơn so với khuôn dạng thông báo chỉ ra bởi vì nó phân biệt các kết nối mạng cục bộ với những hop, time out làm cũ các lối vào trong bảng chọn đ−ờng và dùng định danh cục bộ cho các host thay vì sử dụng địa chỉ IP đầy đủ.
Tr−ờng CHECKSUM chứa một tổng kiểm tra trên message, tr−ờng DATE chứa ngày tháng của ng−ời gửi cục bộ và tr−ờng TIME chứa thời gian cục bộ phụ thuộc đồng hồ của bên gửi. Tr−ờng TIME STAMP đ−ợc dùng quanh việc tính toán chuyến đI
0 16 31
CHECKSUM DATE TIME
TIMESTAMP LOCAL ENTRY # HOST
DELAY 1 OFFSET 1
... ...
DELAY n OFFSET n
Hình 4-12:Khuôn dạng của Hello Message. Mỗi Message mang một lối vào cho date và time cũng nh− một time stamp cái giao thức sử dụng để −ớc l−ợng độ trễ mạng.
Tr−ờng # HOST xác định rõ có bao nhiêu lối vào sau danh sách các HOST và tr−ờng LOCAL ENTRY chỉ vào danh sách để đánh dấu khối của các điểm vào đ−ợc sử dụng cho mạng cục bộ. Mỗi lối vào chứa 2 tr−ờng: DELAY và OFFSET chỉ ra độ trễ để tới một host và −ớc l−ợng hiện tại của ng−ời gửi về độ lệch (offset) giữa đồng hồ của HOST và đồng hồ của ng−ời gửi.