Trong cách tiếp cận cây đa luồng (hình 2.11), một cơ cấu xây dựng cấu trúc các
peer tham gia trong cây đa luồng. Mỗi peer xác định một cây để tham gia dựa trên liên kết băng thông truy cập. Mỗi peer được đặt như một nút nội bộ trong một cây đơn luồng và nút lá trong cây khác mà nó tham gia. Khi một peer tham gia hệ thống, nó
Lê Ngọc Anh – D09VT2 36
tiếp xúc với nút khởi động (bootstrapping) để xác định một nút cha trong cây. Trong cây đa luồng dựa trên hệ thống P2P luồng trực tuyến, đoạn video được mã hóa thành nhiều luồng và mỗi luồng được truyền qua một cây. Chất lượng video nhận được tại các peer phụ thuộc vào số lượng luồng tin mà nó nhận được. Khi một nút bên trong của một cây tách ra, các nút con của nó cũng như các cây có gốc là nút tách ra được phân chia lại và chúng tham gia lại các cây. Việc cung cấp nội dung là một cơ chế đơn giản, các nút nội bộ trong mỗi cây chỉ đơn giản là chuyển tiếp bất kỳ gói tin nhận được cho tất cả các nút con tương ứng của nó. Do đó, thành phần chính của các luồng P2P dựa trên phương pháp tiếp cận cây là các thuật tốn xây dựng cây.
Có hai lợi thế quan trọng cho các giải pháp cây đa luồng. Đầu tiên, nếu một mạng ngang hàng bị phá hoặc bỏ đi, tất cả các nút con của nó mất đi luồng gửi từ các peer, nhưng nó vẫn nhận được các luồng phân phối dữ liệu qua các cây khác. Do đó, tất cả các nút con của nó sẽ nhận được luồng video trong trường hợp mất đi luồng gửi từ một luồng. Thứ hai, một peer đóng vai trị khác nhau như nút nội bộ cũng như các nút lá trong cây khác nhau.
Nếu các peer không thay đổi quá thường xuyên, hệ thống cây đa luồng trực tuyến địi hỏi ít chi phí, vì các gói tin được chuyển tiếp từ nút tới nút mà không cần thông báo thêm. Tuy nhiên, trong môi trường biến động cao, cây liên tục bị thay đổi và xây dựng lại. Q trình này địi hỏi đáng kể bản tin quản l q trình trên. Do đó, các nút phải đệm dữ liệu ít nhất là thời gian cần thiết để cây sửa chữa, để tránh mất gói tin.
2.3.4 C c hệ thống luồng trực truyến dựa trên cây đa luồng
Vài ứng dụng được xây dựng trên khái niệm cây đa luồng phổ biến ngày nay. Ví dụ như SplitStream and Coopnet. Ở đây ta chỉ xem xét tới hệ thống CoopNet
2.3.4.1 CoopNet
CoopNet (Cooperative Networking) kết hợp các khía cạnh của cơ sở hạ tầng dựa trên hạ tầng mạng P2P. Nó sử dụng nhiều mã hóa để thực hiện truyền nội dung trên lớp xử l , sau đó truyền nội dung trong các lớp khác nhau theo những con đường khác nhau. Một máy chủ giàu tài ngun đóng vai trị trung tâm trong việc xây dựng và quản l các cây phân phối nội dung, tuy nhiên băng thông cho việc gửi các luồng dữ liệu nội dung được đóng góp bởi tập hợp các peer (hình 2.12). Hệ thống xây dựng nhiều cây phân phối mở rộng nguồn và tất cả người thu. Khi một nút muốn tham gia, nó liên lạc với máy chủ trung tâm nếu đáp ứng yêu cầu thì một nút cha trong cây được chỉ định cho nó. CoopNet hỗ trợ cả luồng trực tuyến cũng như các dịch vụ theo yêu cầu. Cách tiếp cận CoopNet là tốt, ở đây các peer thu được nội dung chất lượng thấp được ưu tiên hơn. Tuy nhiên, các máy chủ trung tâm cần phải duy trì kiến thức đầy đủ của tất cả các cây phân phối, nó sẽ tạo ra chi phí kiểm sốt nặng trên máy chủ. Vì vậy khả năng mở rộng của CoopNet không tốt. Một vấn đề khác là các máy chủ trung tâm trở thành một điểm thất bại trên hệ thống.
Lê Ngọc Anh – D09VT2 37