CDS là một hệ thống phân tán cho phép tìm kiếm các nội dung. Một nút trong mạng có thể công khai hoặc cung cấp thông tin, thực hiện các truy vấn tìm kiếm tài nguyên, lƣu trữ tài nguyên hoặc mô tả siêu dữ liệu của các tài nguyên thông tin đƣợc công khai bởi nút khác và giải quyết các truy vấn của các nút khác. Thực tế đã có nhiều ứng dụng phân tán mà chính nó là CSD hoặc sử dụng CSD nhƣ là một thành phần chính của hệ thống.
Mục đích của giải pháp CDS đặt ra bao gồm: Thông tin đƣợc lƣu trữ trong mạng CDS phải có thể tìm đƣợc. Một nút có thể xác định vị trí tài nguyên bằng cách xác định các thuộc tính và giá trị mô tả tên tài nguyên. CDS phải có thể cập nhật thƣờng xuyên các thông tin động. Mô tả, tên hoặc 1 phần tài nguyên có thể thay đổi theo thời gian. CDS phải cân bằng tải cho cả đăng ký và các truy vấn. Khi mở rộng hệ thống, tải (nhƣ tốc độ đăng ký và truy vấn) hệ thống sẽ tăng dần, hiệu năng của hệ thống CDS (nhƣ thông lƣợng và thời gian phản hồi) phải không đƣợc giảm đáng kể trƣớc khi hệ thống đạt đến công suất tối đa của nó.
3.2.1. Mô tả các tài nguyên
Trong CDS, tên tài nguyên đƣợc mô tả bởi các cặp thuộc tính – giá trị để có thể tìm kiếm. Tên nội dung CN (content name) đƣợc mô tả bởi các cặp thuộc tính giá trị ai, vi, i =1,..n. Trong đó, ai là một thuộc tính và vi là giá trị của thuộc tính đó, CN đƣợc biểu diễn nhƣ sau:
Hệ thống có thể sử dụng ngôn ngữ XML để mô tả tên tài nguyên. Hình 3.4 dƣới đây là một ví dụ về mô tả tên tài nguyên cho 1 hệ thống camera giám sát đƣờng cao tốc.
Hình 3.4. Ví dụ về tên tài nguyên
Một truy vấn đƣợc thể hiện bởi tập các cặp AV nhƣ Q = {a1v1, a2v2, ..., amvm} có chứa m cặp AV. Tài nguyên đáp ứng truy vấn Q phải chứa tất cả các cặp AV xuất hiện trong truy vấn Q, nói cách khác, một tài nguyên đáp ứng truy vấn Q nếu tập tất cả các cặp AV trong Q là tập con tập các cặp AV trong tên tài nguyên đƣợc mô tả. Nhƣ vậy, chỉ cần có 1 cặp AV trong truy vấn Q không có mặt trong tên tài nguyên, thì tài nguyên đó sẽ đƣợc bỏ qua. Số tập con khác rỗng của nội dung thông tin chứa n cặp AV là 2n - 1, tức ta cần phải đáp ứng 2n - 1 các truy vấn khác nhau.
CDS tạo nhiều khóa cho một tên tài nguyên từ mỗi cặp thuộc tính – giá trị trong tên tài nguyên và phân bổ các cặp AV tƣơng ứng tới các nút phụ trách các khóa đó. Khi truy vấn tài nguyên, CSD chỉ sử dụng một cặp thuộc tính – giá trị để tạo khóa truy vấn và truy vấn đến nút phụ trách khóa đó.