Công bố nội dung cơ bản trên hệ thống thuê bao

Chương 1: Mạng ngang hàng và các ứng dụng của nó: Nội dung và hướng nghiên cứu 1.1. Giới thiệu 1.1.1. Ý nghĩa & vấn đề nổi bật 1.1.2. Ứng dụng chính 1.1.3. Định nghĩa & thuộc tính hệ thống ngang hàng 1.1.4. Mô hình thương mại 1.1.5. Định hướng công nghệ 1.1.6. Cấu trúc chương 1.2. Cơ sở về sự bao phủ 1.2.1. Sự phân loại & nguyên tắc 1.2.2. Phi kết cấu bao phủ. 1.2.3. Kết cấu bao phủ 1.2.4. Thứ bậc & liên hợp bao phủ 1.2.5. Dịch vụ 1.2.6. Ý nghĩa lớp bao phủ 1.2.7. Bao phủ nhạy 1.2.8. Hướng nghiên cứu 1.3. Bao phủ động, tính không đồng nhất và tính linh động 1.3.1. Duy trì bao phủ & trộn 1.3.2. Bao phủ động ngang hàng 1.3.3. Bao phủ cho mạng MANET và Ad Hoc 1.3.4. Tính thay đổi & không đồng nhất trong bao phủ 1.3.5. Hướng nghiên cứu 1.4. Tính phân bổ và truy nhập nội dung ngang hàng 1.4.1. Nội dung. 1.4.2. P2P Streaming and Multicasting 1.4.3. Sự tái tạo & nắm bắt 1.4.4. Tổng kết về thiết kế sản phẩm 1.4.5. Nghiên cứu sản phẩm 1.5. Bảo mật 1.5.1. Vấn đề bảo mật trong mạng ngang hàng 1.5.2. Sự phân loại cơ bản về các mối nguy hiểm trong mạng ngang hàng 1.5.3. Biện pháp sử lý. 1.5.4. Độ tin tưởng và tính bảo mật 1.5.5. Mạng ngang hàng bảo mật tốt hơn 1.6. Kết luận. Chương 2: Công bố nội dung cơ bản trên hệ thống thuê bao 2.1. Giới thiệu 2.2. Mô hình thuê bao 2.2.1. Các chủ đề cơ bản của hệ thống 2.2.2. Nội dung cơ bản của hệ thống 2.2.3. Các dạng cơ bản của hệ thống 2.3. Bộ lọc cơ bản và hệ thống công bố/thuê bao cơ bản 2.4. Hệ thống tập trung & phân bổ thuê bao 2.4.1. Hệ thống thuê bao tập trung 2.4.2. Phân bổ hệ thống thuê bao Broker-Based 2.4.3. Phân bổ hệ thống thuê bao DHT-Based 2.5. Kết luận

docx51 trang | Chia sẻ: lvcdongnoi | Lượt xem: 2459 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Công bố nội dung cơ bản trên hệ thống thuê bao, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
6], LeSubscribe [80], Hermes [77, 78], Elvin [88], Rebeca [48, 49, 70], và CPAS [9]. Trong hệ thống content-based pub/sub, kết nối giữa thuê bao và nhà phát hành thì dựa trên nội dung và sự ưu tiên là không cần thiết. Thuê bao trong hệ thống content-based pub/sub thì có nhiều tính linh hoạt hơn. Thuê bao thể hiện mối quan tâm của họ bằng cách xác định các điều kiện trên nội dung của sự kiện chúng được quan tâm. Nói cách khác, thuê bao trả trước là một yêu cầu hình thành bởi một tập các ràng buộc bao gồm sự tách rời hoặc kết hợp nhà khai thác. Có thể hạn chế sự phụ thuộc dựa trên loại thuộc tính và ngôn ngữ của các thuê bao. Hầu hết các ngôn ngữ thuê bao bao gồm sự bình đẳng và được các nhà khai thác so sánh như các biểu thức thông thường. Do đó các hệ thống này linh hoạt và hữu ích hơn kể từ khi thuê bao có thể xác định chính xác hơn quyền lợi của họ bằng cách sử dụng một tập hợp các thuộc tính. Các thuê bao không cần phải biết tên các chủ đề và nội dung của chúng trước khi đăng kí. Thử thách lớn nhất trong quá trình xây dựng một hệ thống như vậy là phát triển một cách hiệu quả phù hợp với thuật toán quy mô đến hàng triệu ấn phẩm và thuê bao trả trước. Sự phức tạp của ngôn ngữ thuê bao ảnh hưởng phức tạp đến thích ứng hoạt động. Vì vậy, nó không phải là một ngôn ngữ được thiết kế chung cho thuê bao để thực hiện các yêu cầu phức tạp hơn để tiếp tục giống như trong mục [20, 23]. Trong mục [70] trình bày đầy đủ một số kỹ thuật của các mô hình thuê bao content-based. Trong hệ thống content-based pub/sub, các sự kiện được phân biệt bởi các tính chất của các sự kiện thay vì tiêu chí xác định trước (tức là tên chủ đề). Do đó, sự tương ứng giữa các nhà xuất bản và các thuê bao hiện có trên cơ sở mỗi sự kiện. Sự khác biệt với một mô hình filtered-topic là sự kiện không phù hợp với một thuê bao có thể được lọc ra ở bất kỳ điểm nào trong hệ thống hơn là bên nhận. Đối với những lý do này, cao hơn ý nghĩa sức mạnh của content-based pub/sub đi kèm với giá của một chi phí cao hơn cho tính toán các thiết lập của người quan tâm cho mỗi sự kiện [26, 45]. 2.2.3 Hệ thống Type-Based Trong các hệ thống type-based như Echo [41], XMessage [92] và làm việc trong [43, 44, 46], pub / sub sự kiện biến thể là các đối tượng thuộc về một loại hình cụ thể, mà có thể gói gọn các thuộc tính cũng như các phương pháp. Trong một thuê bao type-based, việc khai báo của một loại mong muốn là các thuộc tính phân biệt đối xử chính. Đó là, các hệ thống type-based pub/sub chiếm mặt đất trung bình giữa các hạt thô dựa trên hệ thống chủ đề hạt mịn và nội dung dựa trên hệ thống. Trong điều kiện của các mô hình đã nói ở trên, một hệ thống type - based pub/sub là ở giữa, bằng cách đưa ra một cấu trúc hạt thô trên các sự kiện (như trong chủ đề dựa trên) mà hạn chế hạt mịn có thể được thể hiện qua các thuộc tính (như trong nội dung trên). Ví dụ, trong XMessages [92], một nhà xuất bản và một thuê bao có thể tương tác trực tiếp với nhau, các sự kiện khác trao đổi hoặc sử dụng một kênh cho phép các nhà xuất bản XMessage nhiều và lắng nghe để giao tiếp không đồng bộ. Các nhà xuất bản và các thuê bao ban đầu sử dụng bảng tra cứu để có được những tài liệu tham khảo của XMessage kênh để xây dựng các kết nối. Sau đó, họ sử dụng truy vấn SQL như để lọc tin nhắn từ kênh này dựa trên nội dung của tin nhắn. Vì vậy, XMessage là type-based. Tin nhắn trong XMessage có thể được định nghĩa là bất kỳ nội dung XML mà cần phải được truyền đi giữa nguồn và chìm trong khi các sự kiện cũng được chuỗi XML, nhưng có các trường types. 2.3. Hệ thống Filter-Based and Multicast-Based Pub/Sub Một khía cạnh chính trong hệ thống pub/sub là sự điều phối, trong đó sự kiện xuất hiện được định tuyến cho các thuê bao. Theo các giải pháp định tuyến, hệ thống pub/sub có thể được phần lớn phân thành hai loại [24]: các bộ lọc dựa trên cách tiếp cận [8, 26, 27, 36, 73, 90] và các phương pháp tiếp cận multicast-based [8, 73, 83, 104]. Trong phương pháp tiếp cận filter-based, các quyết định định tuyến được thực hiện liên tục dựa trên nội dung lọc tại tất cả các nút dọc theo con đường từ nguồn tới đích. Mỗi máy chủ pub / sub trong con đường kết nối sự kiện với các thuê bao từ xa từ các máy chủ khác, và sau đó chuyển tiếp nó theo hướng dẫn để đăng ký phù hợp. Cách tiếp cận này có thể đạt được hiệu quả cao, nhưng chi phí quản lý thông tin thuê bao đắt tiền và gánh nặng xử lý tại các máy chủ. Trong cách tiếp cận multicast-based, các nhóm multicast nhất định phải được xác định trước khi truyền sự kiện. Đối với mỗi sự kiện, một nhóm được xác định ở nhà xuất bản, và sau multicasted vào nhóm đó. Trong phương pháp này, một số nút trong con đường định tuyến nhận được những sự kiện họ không quan tâm. Hiệu quả của phương pháp này thường rất nhạy cảm với các kiểu dữ liệu và các phân phối của các sự kiện và các thuê bao trong ứng dụng. Gần đây, nhiều nỗ lực nghiên cứu đã được dành cho các hệ thống phân phối pub/sub. Các mẫu thiết kế kiến trúc bao gồm SIENA [26, 27], Gryphon [8, 73, 95] JEDI [36], Rebeca [48, 49, 70], Elvin [89], Ready [55], và Herald [22]. Hầu hết các hệ thống này thông qua các phương pháp lọc dựa trên định tuyến. Ví dụ, trong JEDI, một cấu trúc liên kết nối phân cấp được đề xuất trong đó chỉ có một máy chủ am hiểu mục đăng kí từ các máy chủ trong sub-tree của nó . Sự kiện luôn luôn được chuyển tiếp lên hệ thống phân cấp bất kể lợi ích trong các phần khác của mạng. Hệ thống pub/sub dựa trên multicast cho sự kiện điều phối kết hợp cần kết nối content-based để phát hiện các sự kiện và đăng ký. Sự kiện gửi đi trong một hệ thống pub / sub tương tự như multicasting truyền thống. Sự khác biệt duy nhất là địa chỉ của người nhận tin nhắn được biết đến ở nhiều hướng, trong khi ở hệ thống pub / sub các máy thu cần phải được xác định bằng cách kết hợp nội dung trên. Vấn đề kết hợp đã được nghiên cứu nhiều loại dữ liệu và các chương trình sự kiện [8, 10, 47, 93]. Nhiều hệ thống pub / sub dựa trên multicast cho dịch vụ thông báo. Đó là, một nhà xuất bản chuyển tiếp các sự kiện cho thuê bao nhiều người đăng ký với nhà xuất bản. Nhiều hệ thống multicast dựa trên lớp phủ được đề xuất trong những năm gần đây, chẳng hạn như Narada [87], Bayeux [116], NICE [16] và Scribe [39]. Giao thức multicast có thể được phân loại dựa vào tập trung và dựa trên phân phối. Ví dụ về các phương pháp tập trung bao gồm HBM [84] và ALMI [74]. Việc triển khai multicast phân phối có thể được phân loại theo một số tiêu chuẩn. Chúng tôi sẽ đưa danh sách các tiêu chuẩn và phân loại trong các phần sau. Hợp tác kỹ thuật. Có hai kiến trúc multicast: kiến trúc P2P và kiến trúc proxy (i.e., broker)-based [35]. Một kiến trúc P2P đẩy các nút chức năng để tham gia vào các nhóm multicast để mỗi node duy trì trạng thái của những nhóm mà nó đang tham gia, trong khi một kiến trúc proxy-based cho phép một tổ chức cung cấp dịch vụ giá trị và triển khai nhiều proxy tại những điểm chiến lược trên Internet. Nút cuối tự gắn nó với proxy gần họ, và nhận dữ liệu bằng cách sử dụng unicast bình thường, hoặc phương tiện truyền thông multicast có sẵn. Phân phối. Hai loại multicast theo phân phối thông tin tree-based và tràn lụt [31] (bao gồm cả tăng cường các phương pháp tràn lụt như gossip và random walking). Cách tiếp cận tràn lụt như CAN-based multi-cast [82] tạo ra một mạng riêng biệt che phủ mỗi nhóm mạng multicast và thúc đẩy các thông tin định tuyến đã được duy trì bởi nhóm của lớp che phủ tới những tin quảng bá bên trong lớp che phủ. Cách tiếp cận hình cây, chẳng hạn như Scribe [39] và Bayeux [116], sử dụng một lớp phủ duy nhất và xây dựng một cây bao trùm cho mỗi nhóm, trên đó các thông điệp multicast cho nhóm thì được quảng bá. Xây dựng mạng xếp chồng. Hiện nay đề xuất các giao thức multicast là xây dựng từ đầu hoặc dựa trên một mạng lưới che phủ bề mặt như: Pastry [85], CAN [81] hoặc Tapestry [113]. Ví dụ về các loại khuôn dạng sử dụng bao gồm Narada [35] và NICE [16] và sau này bao gồm Scribe [39] dựa trên Pastry, Bayuex [116] dựa trên Tapestry và CAN-based multicast [82] dựa trên CAN. Theo phân loại lớp phủ multicast quy định tại [42], các thể loại cũ có thể được tiếp tục phân thành hai lớp. (1) Xây dựng cây trực tiếp. Thành viên chọn cha mẹ của họ từ các thành viên mà họ biết. Các giao thức như Yoid [51], BTP [59], Overcast [61] TBCP [68], HMTP [109], NICE [16] và ZigZag [99] sử dụng cách này để xây dựng cây. (2) Đầu tiên là xây dựng lưới, tiếp theo là xây dựng cây. Đó là, mắt lưới hiệu quả đầu tiên được xây dựng, sau đó cây được xây dựng trong các mắt lưới bởi một số thuật toán định tuyến. Ví dụ như vậy bao gồm Narada [35], sa [32] và tam giác Delaunay [63]. Các loại lớp phủ bề mặt mạng lưới có thể được tiếp tục phân thành hypercube tổng quát như Scribe [39] và Bayuex [116], và Descartes Hyperspace như CAN-based multicast [82] theo xây dựng mạng che phủ. Những đề xuất sử dụng hai kỹ thuật khác nhau để thiết kế self-organizing multi-cast để nâng cao khả năng mở rộng của multicast. (1) dựa trên bản đồ hàng xóm về địa chỉ của các thành viên được phân công. Ví dụ, CAN-based multicast [82] được gán địa chỉ logic từ tọa độ Cartesian trên một hình xuyến n-chiều. Delaunary Triangulations [63] được gán các điểm tới một mặt phẳng và xác định ánh xạ hàng xóm tương ứng với tam giác đạc Delaunay của tập các điểm. (2) Tổ chức thành viên vào hệ thống phân cấp của các cụm. Nice [16] và Kudos [60] là trường hợp như vậy. Kudos xây dựng một hệ thống cấp hai với một Narada như giao thức ở mỗi cấp trong hệ thống. Banerjee et al. [16] xây dựng một hệ thống đa cấp, mà không liên quan đến việc sử dụng một giao thức định tuyến truyền thống. Xây dựng một mạng lưới broker – based, cách tiếp cận phổ biến nhất để thiết kế một dịch vụ thông báo phân phối. Mỗi broker giao tiếp với người hàng xóm của mình bằng cách sử dụng thuê bao trả trước và tài liệu xuất bản. Một mạng che phủ P2P cho multicast là một ứng dụng mạng lưới hợp lý mà được xây dựng trên đỉnh của một lớp mạng chung như IP unicast. Các nút đó là một phần của mạng che phủ có thể định tuyến gói tin giữa những nút khác thông qua mạng che phủ. Có một sự liên đới với sử dụng một mạng logic cho việc định tuyến từ các cấu trúc liên kết hợp lý không nhất thiết phản ánh các cấu trúc liên kết vật lý. Tuy nhiên, các thuật toán định tuyến thì phức tạp hơn để có thể được sử dụng và triển khai kể từ khi định tuyến được thực hiện ở mức ứng dụng. 2.4. Hệ thống tập trung và phân bổ thuê bao: Nội dung dựa trên hệ thống tập trung và phân bổ hoạt động một cách tập trung, hoặc theo cách phân cấp. Trong một hệ thống tập trung và phân bổ, một máy chủ lưu trữ tập trung tất cả các mục đăng ký, sơ đồ sự việc cho các thuê bao, và cung cấp các sự việc để các thuê xuất hiện. Các thành phần chính của kiến ​​trúc này là điều phối sự việc. Thành phần này ghi lại tất cả các thuê bao trong hệ thống. Khi một sự kiện nào đó được công bố, sự kiện phân phối phù hợp cho tất cả các thuê bao trong hệ thống. Khi sự kiện đến xác minh một thuê bao, các điều phối sự kiện sẽ gửi một thông báo cho các thuê bao tương ứng. Giữ một hình ảnh toàn cục của các mục đăng ký làm cho nó dễ dàng cho các sever để tìm các thuê bao xuất hiện, tránh cung cấp không cần thiết. Tuy nhiên, máy chủ có thể dễ dàng bị quá tải trong một hệ thống quy mô lớn với hàng ngàn, thậm chí hàng triệu khách hàng. Ngoài ra, hệ thống này bị các vấn đề thất bại của đơn điêm. Do đó, hệ thống tập trung và phân bổ không thể cung cấp khả năng mở rộng và độ tin cậy cao, ngăn ngừa nó được áp dụng cho các ứng dụng quy mô lớn như hội nghị truyên hình toàn cầu. Một hệ thống phân bổ [26, 101] là sự lựa chọn đầy hứa hẹn được thúc đẩy bởi một loạt các ứng dụng truyền thông quy mô lớn. Khó khăn chính trong việc xây dựng hệ thống phân phối nội dung dựa trên thiết kế của một thuật toán phân phối kết hợp hiệu quả. Hệ thống phân phối nội dung dựa trên có thể được tiếp tục phân thành broker - based và dựa trên DHT. Hệ thống broker – base như SIENA [26] phụ thuộc vào một số nhỏ các broker đáng tin cậy kết nối bởi một mạng lưới băng thông cao [96]. Các hệ thống broker dựa trên khả năng mở rộng và nâng cao độ tin cậy của hệ thống tập trung vào một số mở rộng bằng cách phân phối tải trong một số môi giới. Tuy nhiên, một thất bại của broker có thể dẫn đến một số lượng lớn trạng thái truyền dẫn các tác dụng trong quá trình khôi phục. Như vậy, hệ thống cũng không thể cung cấp khả năng mở rộng cao và độ tin cậy trong một môi trường quy mô lớn. Để giải quyết vấn đề, ngày càng nhiều hệ thống phân bổ và tập trung dùng tới các DHT [81, 85, 94, 113] do khả năng mở rộng độ tin cậy cao, linh động, khả năng chịu lỗi và tự tổ chức. DHT đã thành công trong sử dụng một số lĩnh vực ứng dụng, chẳng hạn như hệ thống tập tin phân phối [7, 37, 71, 86]. Hầu hết các hệ thống phân bổ và tập trung, chẳng hạn như Scribe [39], dựa vào DHT là chủ đề cơ sở trên vì nguyên tắc phân bổ DHT giữa dữ liệu và các nút. Gần đây, nhiều nghiên cứu đã được tiến hành xây dựng nội dung dựa trên hệ thống phân bổ tập trung trên đầu trang của hệ thống P2P [9, 77, 78, 96, 97, 106-108, 111, 114, 115] 2.4.1. Hệ thống phân bổ và tập trung: Hệ thống tập trung truyền thông [3, 7, 21, 33, 54, 57, 58, 64, 76, 88] sử dụng một máy chủ trung tâm lưu trữ tất cả các thuê bao trong hệ thống. Các máy chủ sắp xếp tập trung các sự kiện để các thuê bao, và cung cấp các sự kiện để các thuê bao xuất hiện tại các trường hợp này. Như đã nêu trong [96], hệ thống tập trung có lợi thế là giữ lại hình ảnh toàn cục của hệ thống này vào mọi lúc, cho phép tối ưu hóa thông minh trong quá trình kết hợp [11, 21, 47, 64, 76]. Ví dụ, Fabret et al. [47] đề xuất các chính sách cấu trúc dữ liệu và bộ nhớ đệm ứng dụng cụ thể và xử lý truy vấn để hỗ trợ tốc độ cao của thuê bao và các sự kiện trong hệ thống. Cụ thể, họ sử dụng những cấu trúc dữ liệu bao gồm một tập hợp các chỉ số, một vài bit vector và tập hợp vector để đạt được hiệu quả phù hợp với sự kiện đó là dựa trên nhóm và tối đa hóa thời gian và không gian khu vực. Tuy nhiên, hạn chế phải được đặt trên các mục đăng ký như vậy mà họ phải có ít nhất một vị bình đẳng, hy sinh sự linh hoạt và biểu cảm của các mục đăng ký. Chính nhược điểm của hệ thống tập trung là sự thiếu khả năng mở rộng và khả năng chịu lỗi. Elvin [50, 88] là một dịch vụ chỉ bao gồm thông báo, trong đó nhà sản xuất gửi thông báo đến các dịch vụ, từ đó gửi chúng cho người tiêu dùng. Các thông báo mô tả sự kiện bằng cách sử dụng một tập các thuộc tính có tên của các loại dữ liệu đơn giản và người tiêu dùng đăng ký vào một "lớp" các sự kiện bằng cách sử dụng một biểu thức boolean đăng ký. Khi nhận được một thông báo tại các dịch vụ từ nhà sản xuất, đó là so với các biểu thức đăng ký thuê bao của người tiêu dùng và gửi cho những người có biểu thức đầy đủ. Nhà cung cấp được thoát khỏi trách nhiệm sẽ thông báo trực tiêp, việc xác định ý nghĩa của sự thay đổi trạng thái trở nên ít quan trọng: họ có thể thông báo bất kỳ thông tin có khả năng, và dựa vào các dịch vụ thông báo để loại bỏ các thông báo không được quan tâm (hiện hành) cho người tiêu dùng. Trong khi số lượng lớn các thông báo không sử dụng có thể hữu ích từ quan điểm của người dùng, họ tiêu tốn băng thông mạng. Để khắc phục vấn đề này, Elvin bao gồm một cơ chế dập tắt cho phép sản xuất để loại bỏ các thông báo không cần thiết mà không gửi chúng tới server. Để hỗ trợ thông báo mở rộng cho các tổ chức, việc thực hiện các dịch vụ thông báo phải phục vụ cho các ứng dụng rất nhiều khách hàng. Một Elvin máy chủ duy nhất có hiệu quả có thể phục vụ hàng ngàn khách hàng (nhà sản xuất hoặc người tiêu dùng) và đánh giá hàng trăm ngàn thông báo mỗi giây trên nền tảng phần cứng vừa phải. Hơn nữa, các máy chủ khác có thể được cấu hình trong liên bang một, chia sẻ tải của giao thông báo, cung cấp khả năng mở rộng diện rộng và lỗi bảo đảm, dung sai khi đối mặt với các lỗi máy chủ cá nhân. Hanson et al. [58] đã giới thiệu một thuật toán cho việc tìm kiếm các vị phù hợp với đó là hiệu quả hơn các thuật toán tiêu chuẩn khi số lượng các vị là lớn. Các tác giả tập trung vào các đẳng thức và bất đẳng thức về các bậc của chúng. Thuật toán này rất phù hợp cho các hệ thống cai trị cơ sở dữ liệu, nơi thuộc tính kiểm tra tốc độ là rất quan trọng. Một thành phần quan trọng của thuật toán là khoảng cây nhị phân tìm kiếm. Nó được thiết kế để cho phép thu hồi hiệu quả của tất cả các khoảng thời gian như các thuộc tính phạm vi đó bao phủ một điểm, trong khi cho phép chèn động và xóa các khoảng thời gian. Sau đó, Hanson et al. [57] đề xuất một cách để phát triển một hệ thống kích hoạt khả năng mở rộng. Nó được thực hiện với một bộ nhớ cache kích hoạt để sử dụng bộ nhớ chính hiệu quả, và một sự lựa chọn duy trì bộ nhớ thuộc tính chỉ số dựa trên việc sử dụng các dạng biểu hiện duy nhất gọi là dấu hiệu thể hiện. Một dấu hiệu quan trọng là nếu có một số lượng rất lớn gây nên được tạo ra, chúng sẽ có cấu trúc giống nhau, ngoại trừ sự xuất hiện của các giá trị khác nhau liên tục. Khi kích hoạt được tạo ra, bộ dữ liệu được thêm vào mối quan hệ đặc biệt tạo ra cho chữ ký biểu thức để tổ chức hằng số của kích hoạt. Các bảng có thể được tăng cường với một chỉ mục cơ sở dữ liệu hoặc cấu trúc chỉ mục chính của bộ nhớ để phục vụ như là một chỉ số thuộc tính. Việc thiết kế trình bày cũng sử dụng một số dạng đồng thời để đạt được khả năng mở rộng, bao gồm đồng thời token (tuple) – level, condition – level, rule action – level, và data – level. Farsite [7] là một hệ thống phân phối tập tin không có server đó một cách hợp lý các chức năng như một máy chủ tập trung, nhưng có thể thực hiện được phân tán trong một mạng lưới các máy trạm để bàn không đáng tin cậy. Farsite nhằm cung cấp cả những lợi ích của một máy chủ trung tâm (một không gian tên chia sẻ, địa điểm truy cập trong suốt, và lưu trữ dữ liệu đáng tin cậy) và lợi ích của hệ thống tập tin địa phương máy tính để bàn (chi phí thấp, bảo mật từ quản trị hệ thống tò mò, và khả năng chống đứt gãy địa lý địa phương). Farsite cung cấp tính sẵn sàng và độ tin cậy thông qua các tập tin lưu trữ sao chép ngẫu nhiên, nó đảm bảo bí mật nội dung tập tin với các kỹ thuật mật mã, nó duy trì sự toàn vẹn của tập tin và thư mục dữ liệu với một giao thức Byzantine - chịu lỗi, nó được thiết kế để có thể mở rộng bằng cách sử dụng gợi ý phân phối cơ chế, và nó đạt được hiệu suất cục bộ tốt trong tập tin dữ liệu trong bộ nhớ đệm, truyền tập tin ẩn, tập tin cập nhật và thay đổi thời gian và độ chi tiết của nội dung mượn. Hệ thống tập trung và phân bổ kết hợp các thuật toán làm việc trong hai giai đoạn. Thứ nhất, thuộc tính là lần xuất hiện và sau đó đăng ký kết hợp có nguồn gốc. Dựa trên et al Ashayer. 'S [11] nhận xét rắng rằng các loại tên miền trên mà các thuộc tính được xác định thường là của tập hợp số đếm được cố định trong thực tế, et al Adya. phát triển một cái nhìn dựa sơ đồ để xác định thuộc tính nhanh chóng để tìm tất cả các thuộc tính phù hợp cho từng loại với một bảng tra cứu. Họ cũng đề xuất hai thuật toán dựa trên DBMS kết hợp và so sánh tốt hơn so với một hệ thống tập trung và phân bổ mục đích đặc biệt phụ phù hợp với thuật toán xử lý. Công việc của họ cho thấy rằng đối với các kịch bản ứng dụng đó có yêu cầu đăng ký khối lượng công việc lớn và các sự kiện nhiều quá trình, một giải pháp dựa trên DBMS không phải là một giải pháp thay thế khả thi. Petrović et al. đề xuất S-ToPSS ngữ nghĩa tập trung và phân bổ hệ thống cung cấp ngữ nghĩa kết hợp [76]. Ví dụ, hệ thống sẽ trả về thông báo về "xe" hay "ô tô" với một khách hàng là người quan tâm đến một "chiếc xe" dựa vào ngữ nghĩa của các từ ngữ. Các tác giả mô tả ba cách tiếp cận, mỗi cách lại thêm 1 ngữ nghĩa mở rộng khả năng tìm ra thuật toán. Các phương pháp tiếp cận đầu tiên cho phép một thuật toán phù hợp để phù hợp với các sự kiện và đăng ký sử dụng các thuộc tính ngữ nghĩa từ đồng nghĩa tương đương. Cách tiếp cận thứ hai sử dụng kiến ​​thức bổ sung về các mối quan hệ (ngoài từ đồng nghĩa) giữa các thuộc tính và giá trị để cho phép bổ sung phù hợp. Chính xác hơn, nó sử dụng một hệ thống khái niệm cung cấp hai loại quan hệ: chuyên môn hóa và tổng quát. Cách tiếp cận thứ ba sử dụng các chức năng lập bản đồ cho phép định nghĩa các mối quan hệ giữa lược đồ tùy tiện và giá trị thuộc tính. Liu và cộng sự. [64] chỉ ra rằng hầu hết các hệ thống tập trung và phân bổ hiện có không thể giữ sự không chắc chắn vốn có của các thông tin trong cả hai mục đăng ký, công bố. Trong nhiều trường hợp, rất khó để lấy được kiến ​​thức chính xác của các mục đăng ký và công bố. Hơn nữa, đặc biệt là trong các ứng dụng phổ biến, chọn lọc thông tin, nó thường thích hợp hơn cho một người sử dụng để xây dựng/yêu cầu tìm kiếm của mình hoặc cung cấp thông tin trong ít điều khoản chính xác, hơn là xác định một giới hạn rõ ràng. Để giải quyết những vấn đề này, các tác giả đề xuất một hệ thống tập trung và phân bổ với mô hình học thuyết dựa trên học thuyết về khả năng và tính mơ hồ đặt học thuyết đó tới quá trình không chắc chắn cho cả subscriptions và publications. Burcea et al. [21] xác định các yếu tố có ảnh hưởng đến hiệu suất của hệ thống tập trung và phân bổ hỗ trợ kiến ​​trúc di động; thuật toán di động phân phối chính thức cho hệ thống tập trung và phân bổ và tối ưu hóa hệ thống phát triển và đánh giá làm giảm các chi phí liên quan đến hỗ trợ di động trong hệ thống tập trung và phân bổ. Họ tập trung vào đa luông sinh ra để hỗ trợ người dùng di động, trái với giao thông thường xuyên "multicast" được sử dụng để phổ biến sự kiện cho khách hàng cố định. 2.4.2. Phân bổ hệ thống Broker-Based Pub/Sub Nội dung dựa trên hệ thống phân bổ và tập trung thuê bao cho phép biểu diễn trạng thái của thuê bao, và do đó là một giải pháp hấp dẫn hơn để phổ biến nội dung. Tuy nhiên, thiết kế dựa trên nội dung hệ thống tập trung & phân bổ là phải đối mặt với hai rào cản có ảnh hưởng đến hiệu suất của hệ thống công bố dựa trên nội dung tiểu mạng/trực tiếp. Thách thức đầu tiên là kết hợp giữa các thuê bao và các sự kiện. Không giống như hệ thống multicast truyền thống nơi các địa chỉ của các điểm đến được biết, các thông tin liên lạc trong nội dung công bố dựa trên/dưới các hệ thống dựa trên nội dung của ấn phẩm sự kiện và đăng ký. Vì vậy, điều quan trọng xác định thuê bao "mục đăng ký và nhà xuất bản” để xác định địa chỉ của các điểm đến. Sau khi những điểm đến được xác định, các sự kiện cần phải được chuyển đến các điểm đến. Như đã nêu trong [25], truyền thống kỹ thuật muticast nhóm dựa trên [35] không có thể dễ dàng sử dụng cho sự kiện trên đường đến tất cả các điểm đến. Điều này là vì nội dung dựa trên thuê bao thường rất đa dạng, và các sự kiện khác nhau có thể đáp ứng các lợi ích của rất khác nhau tập hợp các máy chủ. Trong trường hợp xấu nhất, số lượng các bộ như vậy có thể được cấp số mũ với kích thước mạng (2n với n là số lượng máy chủ), và nó là không thực tế để xây dựng một nhóm multicast cho mỗi thiết lập như vậy. Thách thức thứ hai là làm thế nào để có hiệu quả lộ trình các sự kiện phù hợp với những điểm đến. Do đó, một thiết kế kiến ​​trúc có hiệu quả phải phù hợp với một sự kiện để đăng ký và khi đó làm giảm các nút tham gia định tuyến. Trong vài năm qua, một loạt các hệ thống broker-based pub/sub đã được đề xuất để cung cấp hiệu quả và khả năng mở rộng pub/sub dịch vụ. Các hệ thống môi giới dựa trên phụ thuộc vào một số nhỏ các nhà môi giới đáng tin cậy kết nối bởi một mạng lưới băng thông cao.. Ví dụ về các nhà môi giới dựa trên pub / sub hệ thống bao gồm SIENA [26-29], Gryphon [8, 73, 95], JEDI [36], Rebeca [48, 49, 70], đã sẵn sàng [55], Herald [22] , MEDYM [25], Kyra [24], tái bản lần [103] và liên kết kết hợp [15]. Kyra Để nâng cao hiệu quả sự kiện định tuyến, Cao và Singh [24] đề xuất chương trình Kyra định tuyến có sử dụng nội dung clustering để tạo ra nhiều pub / sub mỗi mạng có trách nhiệm cho một tập hợp con của không gian nội dung. Mục tiêu của Kyra là giảm chi phí thực hiện các phương pháp tiếp cận dựa trên bộ lọc trong khi vẫn duy trì hiệu suất mạng so sánh. Cao và Singh đã nghiên cứu hai phương pháp chính hiện hành đối với nội dung dựa trên pub / sub hệ thống: phương pháp tiếp cận dựa trên bộ lọc, thực hiện dựa trên nội dung trên các máy chủ trung gian lọc định tuyến để tự động hướng dẫn các quyết định định tuyến, và cách tiếp cận dựa trên multicast, trong đó cung cấp các sự kiện thông qua một vài nhóm multicast chất lượng cao được xây dựng trước khoảng phù hợp lợi ích của người dùng. Những phương pháp tiếp cận có khác nhau đánh đổi trong định tuyến đạt chất lượng, chi phí thực hiện và hệ thống nạp được tạo ra. Các Kyra đề xuất một cách cẩn thận cân bằng những đánh đổi bằng cách kết hợp những ưu điểm của nội dung dựa trên bộ lọc và phân vùng không gian sự kiện trong cách tiếp cận hiện tại để đạt được hiệu quả tổng thể tốt hơn định tuyến. Ý tưởng chính là xây dựng mạng định tuyến nhỏ hơn nhiều, do đó, bộ lọc dựa trên định tuyến được thực hiện ở từng người với chi phí thấp hơn. tải Server bị giảm bởi vì mỗi máy chủ Kyra được đảm bảo để chỉ tham gia vào một số lượng nhỏ của các mạng định tuyến. Điều này đạt được thông qua chiến lược "đi" thuê bao giữa các máy chủ để cải thiện nội dung địa phương. Vì vậy, hiệu quả của Kyra là đặc điểm độc lập của dữ liệu của các quán rượu / các ứng dụng phụ. kết quả mô phỏng chi tiết cho thấy Kyra làm giảm đáng kể lưu trữ, chế biến và tải lưu lượng mạng trên pub / máy chủ phụ, còn đạt được hiệu quả mạng lưới gần đó của phương pháp tiếp cận dựa trên bộ lọc. Kyra cũng cân bằng tải trên tuyến quán rượu / mạng ervice phụ. SIENA SIENA [26, 27] xây dựng mở rộng đối xứng cây và hệ phân bổ và tập trung server có thể là một nhà cung cấp hoặc thuê bao. Nó sẽ chọn các thông báo được quan tâm cho khách hàng và sau đó cung cấp những thông báo cho khách hàng thông qua các điểm truy cập. Chủ yếu, SIENA là một địa thiết kế chính của giá trị tối đa trong cơ chế lựa chọn mà không bị mất khả năng mở rộng của cơ chế phân phối. SIENA tập trung vào các khía cạnh cơ bản ảnh hưởng đến khả năng mở. Trong SIENA đặc biệt có mô hình dữ liệu cho các thông báo, bao gồm các mối quan hệ đó chính thức định nghĩa ngữ nghĩa của mô hình dữ liệu, các kiến ​​trúc phân tán, và các chiến lược xử lý để khai thác các mối quan hệ bao gồm việc tối ưu định tuyến các thông báo. Công việc này cho thấy kiến ​​trúc phân cấp phù hợp với mật độ thấp của khách hàng mà đăng ký (và bỏ đăng ký) rất thường xuyên, trong khi các kiến ​​trúc P2P thực hiện tốt hơn khi tổng chi phí của giao tiếp là bị chi phối bởi các thông báo. Trong trường hợp có số lượng lớn các thông báo bị bỏ qua (tức là, các thông báo mà không có thuê bao), các kiến ​​trúc P2P cũng là cấp trên với kiến ​​trúc phân cấp. Căn cứ vào SIENA, Carzaniga et al. [29] đề xuất một thuật toán chuyển tiếp trong mạng tập trung và phân bổ. Chuyển tiếp trong mạng như một giá trị để đánh giá các thuộc tính được lưu trữ trong bảng chuyển tiếp của bộ định tuyến để quyết định mà router láng giềng thông báo được gửi đến. Thuật toán được đề xuất được dựa trên cấu trúc chung đề xuất cho hệ thống Đăng ký và lợi dụng số cố định hay giới hạn của mình các giao diện đầu ra. Một bảng chuyển tiếp là khái niệm lược đồ từ các vị để giao diện của các nút lân cận, nơi một thuộc tính là một phân ly của các bộ lọc, mỗi người là một liên từ điều kiện cơ bản đối với các thuộc tính của bản tin. Các thiết kế của một thuật toán chuyển tiếp liên quan đến việc thiết kế một bảng chuyển tiếp và các chức năng xử lý của nó. Đề xuất đưa ra để chuyển tiếp thuật toán nhanh hơn nhằm quyết định số lượng lớn các giá trị và thuộc tính trong bản tin có dung lượng lớn. Sau đó, Carzaniga et al. [28] tiếp tục đề xuất một chương trình định tuyến có thể truyền bá các thuộc tính và các thông tin giao thức cần thiết để duy trì vòng rỗi và có thể chuyển tiếp các đường dẫn tối thiểu cho các bản tin. Đề án định tuyến sử dụng một sự kết hợp của một giao thức phát sóng truyền thống và một giao thức định tuyến dựa trên nội dung. Chương trình này bao gồm một lớp dựa trên nội dung chồng lên một lớp phát sóng truyền thống. Lớp xử lý phát sóng mỗi tin nhắn như một tin nhắn phát sóng, trong khi lớp nội dung dựa trên những con đường phân phối phát sóng, hạn chế sự lan truyền của mỗi bản tin để chỉ những nút mà quảng cáo xác định thuộc tính bản tin. Để thực hiện Đề án này hai lớp, một bộ định tuyến chạy hai giao thức định tuyến khác nhau: một phát giao thức định tuyến và một giao thức định tuyến dựa trên nội dung. Giao thức đầu tiên xử lý thông tin topo và duy trì trạng thái chuyển tiếp cần thiết để gửi một tin nhắn từ mỗi nút đến mọi nút khác. Các giao thức thứ hai quá trình các vị quảng cáo của các nút, và duy trì tình trạng chuyển tiếp cần thiết để quyết định, đối với mỗi giao diện bộ định tuyến, cho dù một tin nhắn phù hợp với vị quảng cáo bằng bất kỳ nút hạ lưu có thể truy cập thông qua giao diện đó. Thứ hai giao thức này được dựa trên một đôi "đẩy-kéo" cơ chế đảm bảo tuyên truyền mạnh mẽ và kịp thời các thông tin định tuyến dựa trên nội dung. Gryphon Gryphon [8, 73, 95] tổ chức một hệ thống mạng phân bổ và tập trung thành một nguồn cây duy nhất và đề xuất một liên kết kết hợp thuật toán để chuyển tiếp các sự kiện theo hướng dẫn của các mục đăng ký phù hợp. Trong Gryphon, luồng sự kiện được mô tả qua một biểu đồ luồng thông tin. Các đồ thị dòng thông tin quy định cụ thể việc phân phối có chọn lọc các sự kiện, sự biến đổi của các sự kiện, và thế hệ của các sự kiện phát sinh như là một chức năng của các quốc gia tính từ sự kiện lịch sử. Đối với điều này, Gryphon có nguồn gốc từ và tích hợp các tính năng tốt nhất của công nghệ truyền thông phân phối và tích hợp các tính năng tốt nhất của công nghệ truyền thông phân phối và công nghệ cơ sở dữ liệu. Phương pháp làm tăng Gryphon phân bổ & tập trung mô hình với các tính năng sau đây: nội dung dựa trên thuê bao, trong đó sự kiện được lựa chọn bởi các vị về nội dung của họ chứ không phải là loại giá trị giao đối tượng; biến đổi sự kiện, trong đó chuyển đổi các sự kiện bằng cách chiếu và áp dụng các chức năng để dữ liệu trong các sự kiện. MEDYM MEDYM [25] tập trung vào các vấn đề về hiệu quả cung cấp các sự kiện từ các máy chủ, nơi chúng được xuất bản cho các máy chủ với kết hợp các mục đăng ký. Trong MEDYM, một nút khớp phù hợp với một sự kiện vào các mục đăng ký và có được một danh sách cuối của thuê bao lần xuất hiện. Sau đó, các luồng có chứa danh sách điểm đến được định tuyến thông qua một cây phổ biến động tạo ra với sự giúp đỡ của kiến ​​thức cấu trúc liên kết. MEDYM không dựa vào mạng lưới phân phối phủ tĩnh cho sự kiện. Thay vào đó, một sự kiện được kết hợp với các mục đăng ký sớm tại máy chủ xuất bản để xác định điểm đến phù hợp với các mục đăng ký, và sau đó gửi đến thông qua một cây multicast động. Kiến trúc này đạt được tính toán chi phí thấp hiệu quả mạng lưới phù hợp và cao trong định tuyến. MEDYM được phân biệt bởi chương trình multicast năng động của mình để hỗ trợ nhu cầu định tuyến đa dạng trong mạng phân bổ và tập trung. HYPER HYPER [112] là một phương pháp lai có khả năng giảm thiểu chi phí phù hợp với cả hai và chuyển tiếp trong quán mạng phẩn bổ và tập trung và trì hoãn các hiểu biết của khách hàng nhận được nội dung. Nó xác định một số nhóm ảo bằng cách khai thác lợi ích chung của các khách hàng đăng ký, và tin nhắn cho mỗi nhóm ảo chỉ xuất hiện một lần tại các điểm vào nhóm. Ngoài ra, đối với từng nhóm ảo, cây phân phối nội dung được nhúng trong các mạng phân bổ và tập trung có thể được hưởng lợi từ con đường chuyển tiếp ngắn. 2.4.3. Phân bổ hệ thống DHT-Based Pub/Sub Mạng che phủ DHT [67, 69, 81, 85, 91, 94, 113] là một nhóm các hệ thống phân cấp ở mức ứng dụng là phân vùng sở hữu của một tập các đối tượng trong số các nút tham gia, và các thông báo tuyến đường có thể có hiệu quả cho chủ sở hữu duy nhất của bất kỳ đối tượng nào. Dựa trên các mạng che phủ DHT, một số hệ thống ứng dụng multicast đã được đề xuất có thể được sử dụng cho các phân bổ theo chủ đề phụ hệ thống cũng như nội dung dựa trên hệ thống phân bổ và tâp trung. Ví dụ về các hệ thống như vậy bao gồm Scribe [39, Bayeux [116] dựa trên Tapestry và CAN multicast dựa trên [82] dựa trên CAN. Nhiều nội dung dựa trên hệ thống phân bổ và tập trung dựa trên DHT đã được đề xuất [9, 14, 56, 77, 78, 96, 97, 100, 106-108, 111, 114, 115]. DHT - hệ thống phân bổ và tập trung kế thừa các tính năng phân biệt của các mạng che phủ bao gồm cả khả năng mở rộng DHT, hiệu quả, độ tin cậy, khả năng chịu lỗi, tự tổ chức từ các cơ sở hạ tầng cơ bản DHT. 2.4.3.1. Giới thiệu các mạng Overlay DHT: Một hệ thống P2P bao gồm các thiết bị đóng vai trò như các máy chủ cũng như khách hàng để sử dụng đầy đủ khả năng. Bởi vì các kết nối động và đặc tính phân cấp, hệ thống P2P có các cơ chế nhất định để đảm bảo kết nối hiệu quả và truyền thông. Cơ chế này bao gồm các nút xử lý tham gia, để lại và thất bại, phân bổ tập tin vào các nút, vv Trong hệ thống, nút không quan trọng hơn thành phần bất kỳ khác và các nút có thể giao tiếp với nhau. Mỗi nút duy trì các thông tin vị trí của một số nút khác. Một nút có thể gửi tin nhắn cho một nút lựa chọn, phát tin nhắn tới một số nút khác. Dựa trên cấu trúc liên kết lớp phủ, các hệ thống P2P có thể được phân loại thành các hệ thống P2P có cấu trúc và hệ thống DHT (tức là, cấu trúc hệ thống P2P). Không có cấu trúc mạng P2P như Gnutella lớp phủ [53] và Freenet [52] không có kiểm soát chặt chẽ trong cấu trúc liên kết, và chúng không giao trách nhiệm cho dữ liệu để các nút cụ thể. Ngược lại, các mạng DHT lớp phủ có kiểm soát chặt chẽ cấu trúc liên kết và sắp xếp dữ liệu và tra cứu thuật toán được chính xác. DHT mạng che phủ là một lớp của các hệ thống phân cấp ở mức ứng dụng là phân vùng sở hữu của một tập các đối tượng trong số các nút tham gia, và có thể thư tuyến đường hiệu quả cho chủ sở hữu duy nhất của bất kỳ đối tượng nào. Các mạng DHT lớp phủ bao gồm [94], CAN [81], Tapestry [113], Pastry [85], Kademlia [69], cộng hưởng [67] và đường cyc lo it [91]. Trong các mạng che phủ DHT, mỗi đối tượng được lưu trữ tại một hoặc nhiều nút chọn quyết định của một hàm thống nhất. Cụ thể, mỗi đối tượng hoặc nút được gán một ID (tức là chính) mà là giá trị của đối tượng hoặc địa chỉ IP nút bằng cách sử dụng hàm thống nhất [62]. Một đối tượng được lưu trữ trong một nút có ID gần nhất hoặc ngay lập tức thành công với ID của đối tượng, được gọi là chủ sở hữu của đối tượng. Mặc dù các hệ thống này có sự khác biệt lớn DHT trong việc thực hiện, tất cả đều hỗ trợ giao diện bảng khóa, giá trị và nhận được (key) hoặc trực tiếp hoặc gián tiếp. Truy vấn cho các đối tượng sẽ được chuyển từng bước để các nút dựa trên các thuật toán định tuyến P2P. Mỗi nút duy trì một bảng định tuyến ghi O (logn) hàng xóm trong một mạng che phủ với các máy N. Các hệ thống này có cấu trúc được đánh giá cao khả năng mở rộng như nó làm cho hệ thống rất lớn khả thi, tra cứu có thể được giải quyết trong vùng phủ định tuyến. DHT che phủ được sử dụng rộng rãi cho các ứng dụng chia sẻ dữ liệu. Khác với hệ thống phân bổ và tập trung, nội dung giao DHT mạng che phủ phân phối dữ liệu giữa các nút, và hiệu quả chuyển tiếp yêu cầu dữ liệu cho chủ sở hữu dữ liệu. DHT 'vị trí dữ liệu hiệu quả cho phép truyền thông multicast hiệu quả. Ngoài ra, lớp phủ thực hiện các mạng DHT hệ thống pub / sub đàn hồi trong một môi trường năng động, nơi các nút tham gia. Pastry and Tapestry Plaxton et al. [79] phát triển thuật toán định tuyến đầu tiên có thể được nâng cấp sử dụng cho các hệ thống P2P. Cách tiếp cận của định tuyến dựa trên các tiền tố địa chỉ, có thể được xem như là một sự tổng quát của định tuyến. Các thuật toán định tuyến hoạt động bằng cách điều chỉnh một chữ số duy nhất tại một thời gian theo thứ tự từ trái sang phải. Nếu node có ID 12345 nhận được một truy vấn tìm kiếm với chính 12456, mà phù hợp với hai chữ số đầu tiên, sau đó các thuật toán định tuyến chuyển tiếp truy vấn đến một nút mà phù hợp với ba chữ số đầu tiên (ví dụ, nút 12.467). Để làm điều này, node cần phải có, như các nước láng giềng, các nút tương ứng với mỗi tiền tố của riêng nó nhận dạng nhưng khác nhau ở các chữ số tiếp theo. Đối với mỗi tiền tố (hoặc chiều), có nhiều hàng xóm đó (ví dụ, nút 12467 và 12478 nút trong trường hợp trên) vì không có hạn chế về hậu tố, ví dụ, các bit còn lại phải đến bit hiện hành. Đây là sự khác biệt quan trọng từ các mô hình kết nối truyền thống hypercube và cung cấp sự phong phú về hàng xóm lựa chọn và do đó một khả năng phục hồi lỗi cao, không có nút hoặc nút lỗi. Ngoài những hàng xóm, mỗi nút trong đó cũng chứa một bộ lá, mà là tập hợp của | L | số lượng gần các nút (nửa nhỏ hơn, một nửa lớn hơn) để ID nút hiện tại, và thiết lập một khu vực mà là tập hợp các | M | địa lý gần các nút đến nút hiện tại. 2.4.3.2. Early DHT-Based Pub/Sub Systems Hầu hết các đề xuất ban đầu dựa trên hệ thống DHT pub / sub như Scribe [39] và Bayeux [116] cơ bản là dựa trên chủ đề hệ thống pub / sub. Họ không trực tiếp hỗ trợ nội dung dựa trên dịch vụ pub / sub. Các hệ thống sử dụng mô hình nút hẹn. Một thuê bao hay một sự kiện được ánh xạ tới một nút hẹn bằng cách sử dụng chính sách phân bổ DHT chính. Các nút hẹn phổ biến các sự kiện để các thuê bao sử dụng multicast mức ứng dụng. Hệ thống được xây dựng trên CAN có hành động nút hẹn như là một điểm nhập vào một mạng riêng biệt lớp phủ chỉ bao gồm các thành viên trong nhóm. Scribe Scribe là một ứng dụng có thể mở rộng cơ sở hạ tầng multicast cấp được xây dựng trên Pastry. Scribe dựa vào Nghệ Thuật Làm Bánh để tạo và quản lý các nhóm và xây dựng cây multicast hiệu quả cho việc phổ biến các thông điệp cho mỗi nhóm. Ngoài ra, đảm bảo độ tin cậy cung cấp Scribe-nỗ lực tốt nhất. Scribe là hoàn toàn phân cấp: tất cả các quyết định dựa trên thông tin địa phương, và mỗi nút có khả năng giống hệt nhau. Mỗi nút có thể hành động như một nguồn multicast, một gốc của một cây multicast, một thành viên nhóm, một nút trong một cây multicast, và sự kết hợp bất hợp lý của các bên trên. Bất kỳ node Scribe có thể tạo một nhóm, các nút khác có thể tham gia vào nhóm, hoặc tin nhắn multicast cho tất cả các thành viên của nhóm. Scribe cung cấp tốt nhất, nỗ lực cung cấp các thông điệp multicast, và không có quy định cụ thể để giao hàng cụ thể. Một nút có thể tạo, gửi tin nhắn đến, và tham gia nhiều nhóm. Nhóm có thể có nhiều nguồn tin multicast và nhiều thành viên. Scribe có thể hỗ trợ đồng thời một số lượng lớn của nhóm với một loạt các kích cỡ nhóm, và tỷ lệ doanh thu cao của thành viên. Hệ thống DHT không bao gồm nội dung của tập tin và sử dụng một hàm thống nhất về các khóa tập tin "để phân phối các tập tin giữa các đồng nghiệp khác nhau. A của tập tin quan trọng là tên file hoặc từ khóa mà có thể phân biệt các tập tin. Vì vậy, một mặt, DHT cung cấp dịch vụ chính xác, phù hợp. Mặt khác, các vị bình đẳng và các vị phạm vi được mong đợi khi chỉ đăng ký trong các hệ thống phụ pub/sub. Vì vậy, để sử dụng các chất nền cho pub DHT nội dung dựa trên/dưới hệ thống, cơ chế cần thiết để giúp phân phối các thuê bao và các sự kiện giữa các nút DHT dựa trên dữ liệu nội dung. Để giải quyết vấn đề này, trong [14, 56, 100] về một thuê bao như một số thuộc tính và các dãy. Chúng sử dụng từng thuộc tính và hạn chế phạm vi như là một thuê bao để một số nút chính phủ bản đồ. Các đơn cá nhân lập lược đồ cho từng thuộc tính và giá trị có thể dẫn đến khả năng mở rộng thấp, đặc biệt là khi thuê bao có nhiều thuộc tính và phạm vi giá trị. Để giải quyết vấn đề, trong [9, 77, 78, 96, 106-108, 111, 114, 115] sử dụng một chương trình để lấy được một khóa hoặc một số nhỏ các phím từ một thuê bao để lập bản đồ, trong khi các phần khác [ 97] kết hợp các bộ lọc dựa trên định tuyến trong mô hình nhà môi giới dựa trên với định tuyến trong mô hình DHT. Hệ thống chord-based Triantafillou et al. [100] giới thiệu một trong những nội dung dựa trên mức gần đúng đầu tiên, nơi dây đám mây DHT được sử dụng như cơ sở hạ tầng định tuyến đáng tin cậy, để họ không xây dựng một pub cụ thể phụ che phủ. Hệ thống phân phối các thuê bao trên các nút dây nhau dựa trên các phím được sản xuất bởi các thuộc tính và giá trị của nó. Để làm như vậy, họ sử dụng các mô hình điểm hẹn, trong đó thuê bao được lưu trữ trong một số các nút dựa trên các phím. Nếu thuê bao xác định một phạm vi hơn một thuộc tính, thuê bao sẽ được lưu trữ trên một số nút bằng cách các thuộc tính và mỗi giá trị có thể của nó trong phạm vi này. Hệ thống này bị thiếu khả năng mở rộng về bối cảnh bề sâu, nơi thuê bao có nhiều thuộc tính và giá trị. Hạn chế chính là cài đặt đăng ký và cập nhật rất tốn kém do số lượng lớn các nút và các thông điệp có khả năng tham gia. Sau đó, Baldoni et al. [14] đề xuất một cách tiếp cận tương tự nhưng, trong trường hợp này, họ sử dụng một bản đồ cụ thể của các sự kiện và đăng ký cho các phím từ không gian chính DHT, thay vì ánh xạ mỗi thuộc tính. Họ giới thiệu một bản đồ hình thức chung mà không phụ thuộc vào các mục đăng ký lưu trữ được gọi là lập bản đồ không quốc tịch. Nó giúp loại bỏ sự cần thiết phải tuyên truyền các kiến ​​thức về các hiện đang được lưu mục đăng ký. Cụ thể, các tác giả đề xuất ba phương pháp khác nhau cho các pub/sub lập bản đồ thuê bao và các sự kiện để các phím che phủ: thuộc tính tách, tách không gian chính và thuộc tính, chọn lọc. Hơn nữa, để tăng hiệu quả của giải pháp được đề xuất, họ đề xuất để làm giàu cho các mạng che phủ hiện tại với nguyên thủy một-nhiều, cũng như để mở rộng cơ sở hạ tầng với đệm thông báo và khả năng phân rời dãy. Scribe-based System Tam et al. [96] đề xuất pub dựa trên nội dung / hệ thống phụ được xây dựng từ Scribe. Trong phương pháp này, các chủ đề được tự động phát hiện từ nội dung của các mục đăng ký và các ấn phẩm thông qua việc sử dụng một lược đồ, mà là một tập hợp các hướng dẫn để chọn chủ đề. lược đồ này được ứng dụng cụ thể và có thể được cung cấp bởi ứng dụng de-người ký tên sau khi một số phân tích thống kê. Các lược đồ tương tự với các lược đồ cơ sở dữ liệu sử dụng trong RDBMS. Phương pháp này làm tăng đáng kể tính biểu cảm của các thuê bao so với các hệ thống hoàn toàn dựa trên chủ đề. Tuy nhiên, kế hoạch này không cung cấp đầy đủ ngữ nghĩa truy vấn của một hệ thống dựa trên nội dung truyền thống. Truy vấn không phải là hoàn toàn miễn phí, hình thức, nhưng phải tuân theo một khuôn mẫu định sẵn. Hệ thống này nơi một số hạn chế về đăng ký và do đó biểu cảm trong mục đăng ký. Hơn nữa, các vấn đề có lỗi trong lưu trữ đăng ký chưa được khám phá trong hệ thống, mặc dù khả năng chịu lỗi-in DHT định tuyến và định tuyến multicast có thể được minh bạch xử lý bởi Pastry và Scribe, tương ứng. PRESS THÔNG CÁO BÁO [115] phân biệt chính nó từ Ferry bằng cách đề xuất một kiến ​​trúc mới nhằm mục đích bảo vệ địa phương trong quản lý đăng ký thuê bao, giảm thiểu tải sự kiện phù hợp, cân bằng tải trên các nút, và cung cấp hiệu quả và khả năng mở rộng sự kiện giao hàng. Khuôn khổ của báo chí dựa trên ba cơ chế chính: Tổ chức đăng ký Cơ chế (SOM), xuất bản và Kết hợp cơ chế (EPMM) và sự kiện giao nhận cơ chế (EDM). SOM sử dụng các kỹ thuật KD cây [17] để tổ chức đăng ký một cách cây phân cấp, và lưu trữ các thuê bao chỉ trên các nút lá. SOM bảo tồn địa bàn đăng ký, nghĩa là, tương tự / thuê bao liên quan được lưu trữ trên một (số một hay nhỏ liền kề) nút lá (s). Mỗi nút lá có trách nhiệm gần như cùng số thuê bao, đảm bảo cân bằng tải trên các nút lá. SOM lớp cơ cấu cây trên đầu trang của một DHT, do đó mỗi nút cây được tổ chức bởi một nút DHT và lỗi cây kế thừa khả năng đàn hồi và tính tổ chức tự của DHT cơ bản. Đăng ký lắp đặt là một quá trình chuyển hướng cây từ gốc cây đến nút lá tương ứng (s). Việc cài đặt thuê bao có thể bao gồm nhiều lớp kể từ khi mở rộng cây che phủ DHT, từ đó phát sinh độ trễ cao. Ngoài ra, mọi việc cài đặt đi qua gốc, tạo ra một nút cổ chai tiềm năng. Do đó, báo chí sử dụng bộ nhớ cache KD cây lookaside tại phía khách hàng thuê bao / để làm giảm các vấn đề. EPMM cho phép các nhà xuất bản sự kiện để xuất bản một sự kiện cùng các cây KD đến nút lá chứa các mục đăng ký liên quan đến sự kiện này. Các nút lá sau đó phù hợp với sự kiện vào các mục đăng ký và bắt đầu cung cấp các sự kiện để các thuê bao lần xuất hiện. Tương tự như cài đặt thuê bao, sự kiện xuất bản ấn phẩm có thể chịu độ trễ cao và tạo ra một nút cổ chai tiềm năng trên nút gốc cây. Để giảm bớt prob-lems, bộ nhớ cache KD lookaside cây được sử dụng ở phía khách hàng / nhà xuất bản. EDM là hầu như bảo dưỡng miễn phí. Nó khai thác nhúng cây vốn có trong các DHT cơ bản để cung cấp các sự kiện, do đó loại bỏ các chi phí multicast-cây xây dựng và bảo trì. Sau khi một nút lá phù hợp với một sự kiện để các thuê bao được lưu trữ trên nó, các nút lá multicast sự kiện thông qua các liên kết DHT tương ứng của nút chủ DHT của nó. Sự kiện này sau đó được phổ biến dọc theo cây nhúng rễ tại nút DHT trữ các nút lá, và cuối cùng đạt tới mỗi thuê bao. EDM uẩn tin nhắn theo những con đường phổ biến sự kiện, làm giảm số lượng tin nhắn gửi sự kiện và tiêu thụ băng thông. Hơn nữa, khai thác kết DHT cho việc phân phối sự kiện, EDM có ba ưu điểm chính: (1) Các tin nhắn DHT cơ bản bảo trì có thể được piggybacked vào các tin nhắn gửi sự kiện để giảm chi phí bảo trì DHT. (2) lựa chọn hàng xóm Gần trong DHT cơ bản, như một phương tiện cải thiện hiệu suất định tuyến, làm cho sự kiện phổ biến dọc theo nhúng cây gần-nhận thức, đạt được hiệu suất hiệu quả sự kiện giao hàng. (3) Các khả năng chịu lỗi-và tự tổ chức lớp phủ chất của DHT làm cho giao hợp cùng các liên kết đàn hồi DHT tới nút / link thất bại Combination of Rebeca and Chord Hệ thống được đề xuất trong [97] là một quán rượu dựa trên nội dung phụ hệ thống được xây dựng trên đỉnh của một mạng P2P Chord động che phủ. Cả hai bản cập nhật bộ lọc (ví dụ, do đăng ký và bỏ đăng ký) và sự kiện định tuyến sử dụng một thuật toán phát sóng. Ưu điểm chính của hệ thống đề xuất là sự kết hợp độc đáo của biểu cảm cao của các bộ lọc nội dung dựa vào Rebeca và khoan dung khả năng mở rộng và lỗi của hệ thống dây nhau P2P. Nó giúp bạn loại bỏ các nút cổ chai duy nhất và điểm thất bại, chỉ sử dụng một cây cho thông báo và cập nhật bộ lọc. Để tránh giới thiệu chu trình định tuyến trong một đồ thị dự phòng tổng quát hơn, hệ thống sẽ lựa chọn cho từng thông báo kéo dài một cây con của đồ thị toàn bộ. Tuy nhiên, để cân bằng sự tắc nghẽn mạng và giảm điểm duy nhất của thất bại, hệ thống sử dụng một cây khác nhau cho các môi giới hàng. Đó là, môi giới từng là cội rễ của cây khác biệt của riêng mình để cung cấp một thông báo được công bố. Điều này cho phép hệ thống sử dụng một khái quát của các quán rượu phụ chiến lược định tuyến. Trong quá trình định tuyến, hệ thống cung cấp một bài kiểm tra để đảm bảo chuyển tiếp chỉ cùng những cạnh đó đang ở trong cây con này. Để cung cấp các thuật toán định tuyến với một sự hiểu biết làm thế nào để chọn các cạnh cho cây con một, hệ thống kết hợp một thành phần cấu trúc liên kết. Hơn nữa, hệ thống này có hai thành phần duy trì cấu trúc của đồ thị và các bộ lọc để nâng cao hệ thống vững mạnh khi môi giới thay đổi và thất bại. Tách các thành phần đảm bảo rằng mạng selforganizes để duy trì các cấu trúc liên kết tối ưu và có thể tồn tại đồng thời không đến một nửa các nút của nó. Bởi vì hệ thống này cung cấp thông qua cây nhị thức, tin nhắn đường giao là loga bị chặn. Bảng 2 minh họa một cuộc khảo sát của quán hiện tại phụ dựa trên hệ thống phân loại 2.5. Tổng kết và sự thách thức Trong những năm qua, một sự quan tâm ngày càng tăng đã trả cho pub/sub truyền thông phụ như là một phương tiện để phổ biến các sự kiện thông qua các hệ thống phân phối trên mạng widearea. Chương này đã cung cấp một giới thiệu chi tiết về pub /sub, và đã kiểm tra tất cả các khía cạnh của pub/sub bao gồm các mục tiêu, tài sản của họ, chiến lược và phân loại. Để khảo sát và so sánh các quán rượu khác nhau phụ hệ thống, chúng tôi giới thiệu ba phân loại các tiêu chí: mô hình thuê bao, định tuyến và cấu trúc liên kết. Dựa trên các mô hình thuê bao, hệ thống pub/sub có thể được phân loại vào topicbased, dựa trên nội dung và dựa trên loại. Căn cứ vào định tuyến, các pub/sub có thể được xếp vào bộ lọc dựa trên và dựa trên multicast. Dựa trên cấu trúc liên kết, quán rượu phụ hệ thống có thể được phân loại dựa vào tập trung và dựa trên phân phối, đó là tiếp tục phân thành nhà môi giới dựa trên và dựa trên DHT. Một đánh giá toàn diện về công trình nghiên cứu của pub / sub hệ thống tập trung vào các mạng lưới phân phối đã được trình bày, cùng với một cuộc thảo luận sâu về những ưu và khuyết điểm của họ. Chúng tôi kết thúc chương này với các cuộc thảo luận về một số vấn đề mở cho các pub/sub. Sự cân bằng giữa tính chính xác và hiệu quả. Chủ đề trên hệ thống pub/sub không thể cung cấp độ chính xác cao kể từ khi một nút có thể nhận được sự kiện đó là không quan tâm in Mặt khác, những hạt bị phạt nội dung dựa trên hệ thống dẫn đến chi phí cao để ánh xạ giữa thuê bao và các sự kiện cũng như truyền thông nút. Một cơ chế mà có thể kết hợp những ưu điểm của cả hai loại, trong khi khắc phục nhược điểm của họ là dự kiến. • Gần. Không phù hợp giữa khoảng cách hợp lý trừu tượng bắt nguồn từ các mạng che phủ, và các thông tin gần gũi thể chất trong thực tế là một trở ngại lớn cho việc triển khai và các vấn đề tối ưu hóa hiệu suất cho các pub/sub. Hầu hết hiện tại pub / sub hệ thống không tính đến gần để giảm chi phí truyền thông nút. • tính không đồng nhất. Với sự xuất hiện ngày càng tăng của các thiết bị đầu cuối được trang bị khả năng kết nối mạng, cùng với sự phát triển công nghệ đa dạng mạng, không đồng nhất của các nút tham gia của một quán rượu thực tế phụ hệ thống là phổ biến. đặc tính riêng biệt của họ, bao gồm cả khả năng máy tính, khác nhau rất nhiều và xứng đáng được xem xét nghiêm túc để xây dựng một ứng dụng thực tế widelydeployed hiệu quả. Hầu hết hiện tại pub/sub xem xét hệ thống cân bằng tải không tính đến tính không đồng nhất. Vận động. Với sự phổ biến ngày càng tăng của các mạng truyền thông không dây và các thiết bị cầm tay di động, nó sẽ trở thành một xu hướng không thể tránh khỏi hệ thống pub/sub sẽ được áp dụng cho các mạng không dây di động. Hiện tại, có vài công trình cống hiến cho sự phát triển của hệ thống pub/sub trong một môi trường di động. Một thách thức là làm thế nào để đối phó với các nút di động.

Các file đính kèm theo tài liệu này:

  • docxCM_Nhom 8.docx