Đồng bộ hóa giữaserver và client

Một phần của tài liệu đồ án mpeg dash – chuẩn công nghệ mới nhất hỗ trợ streaming thích ứng động qua http (Trang 65 - 66)

CHƯƠNG III: MÔ HÌNH KIẾN TRÚC MPEGDASH

3.2.Đồng bộ hóa giữaserver và client

Trong trường hợp nội dung video trực tiếp cụ thể, rất hữu ích nếu cả hai server và client có sự cảm nhận thời gian giống nhau. Đồng bộ hóa trong trường hợp này có nghĩa rằng các nhà cung cấp và phía người sử dụng thông tin với một server thời gian bên ngoài để thiết lập đồng hồ của họ một cơ sở thời gian chính xác như nhau. So với một chương trình không đồng bộ, các client không cần phải thực hiện rất nhiều truy vấn đến server (yêu cầu HTTP) vì các client biết trước khi nội dung mới khả dụng.

Đồng bộ hóa được thực hiện bằng giao thức thời gian mạng đơn giản (SNTP) [56], dựa trên giao thức thời gian mạng (NTP). May thay, nhiều server công cộng NTP miễn phí trên Internet. Dự án NTP Pool đã được lựa chọn cho mục đích này bởi vì nó cung cấp một pool các server NTP miễn phí đang hoạt động trên cơ sở sử dụng hợp lý. Thật vậy, việc thực hiện của mẫu đầu này theo các khuyến nghị [56, sec. 10] để thực hiện việc sử dụng hợp lý các server thời gian, vì thế, các yêu cầu định kỳ không được thực hiện với tần suất nhiều 30 giây một lần. Hình 3.3 (a) mô tả mối quan hệ giữa client, server và NTP Pool.

Hình 3.3. (a) Truyền thông giữa client, server và NTP server pool, (b) Một yêu cầu SNTP đơn giản

Hình 3.4 mô tả tiêu đề của một gói NTP. Có 3 trường cần thiết cho việc đồng bộ hóa đơn giản: Nhãn thời gian của yêu cầu client (trường nhãn thời gian gốc), nhãn thời gian của việc đến yêu cầu của client (trường nhãn thời gian nhận), và một bước thời

gian phản hồi server được phát (nhãn truyền). Phần còn lại của trường tiêu đề (chẳng hạn như Poll, stratum và Precision) cũng tương đối đơn giản.

Hình 3.4. Tiêu đề gói tin NTP và các trường liên quan cho thủ tục đồng bộ

Các thủ tục đồng bộ hóa (Hình 3.3 (b)) được thực hiện trong các mẫu đầu này như sau:

1. Các server NTP nhận yêu cầu và cộng thêm thời gian khi các yêu cầu được nhận (t1) vào trường tiêu đề nhãn thời gian nhận.

2. Phản hồi được gửi với một nhãn thời gian mới (t2) được chỉ trong trường nhãn thời gian truyền.

3. Client nhận các phản hồi và tính toán độ dịch (Toffset) cần được áp dụng cho thời gian cục bộ của nó.

Độ dịch Toffset (giữa thời gian cục bộ của máy và thời gian NTP) và thời gian một vòng (RTT) (Trễ đường giữa máy khách và server NTP) có thể được xác định như sau:

(3.1)(3.2) (3.2)

Cả HTTP client và HTTP server sẽ cộng thêm phần dịch tương ứng đến thời gian cục bộ của chúng. Đặc biệt, thời gian yêu cầu của HTTP client bằng t0 + Toffset. Đối với các hoạt động của HTTP client cần một tham chiếu thời gian tuyệt đối, độ dịch chỉ đơn giản được thêm vào kết quả phương thức Java System.currentTimeMillis .

Một phần của tài liệu đồ án mpeg dash – chuẩn công nghệ mới nhất hỗ trợ streaming thích ứng động qua http (Trang 65 - 66)