Không gian tên và thông tin đối t−ợng của nó trong hệ phân tán là rất đồ sộ. Để hiệu quả giải pháp và quản lý tên, cần một mô hình thông tin làm cơ sở thi hành cơ sở dữ liệu không gian tên. Theo thuật ngữ X.500, mô hình dữ liệu quan niệm để l−u giữ và trình bày thông tin đối t−ợng đ−ợc gọi là cơ sở thông tin th− mục DIB (Directory Information Base). Dịch vụ th− mục (DS) theo chuẩn CCIIT X.500 cung cấp quy tắc cấu trúc và cú pháp đặc tả DIB trong cây thông tin th− mục phân cấp DIT (Directory Information Tree). Hình 4.18 cho ví dụ về DIT. Mỗi mục đối t−ợng trong DIB đ−ợc biểu diễn bằng một nút của cây DIT. Các thuộc tính t−ơng ứng với mục đối t−ợng là tập các thuộc tính từ nút tới gốc cây. Cấu trúc cây có nhiều −u điểm vì mỗi nút trong cây có đ−ờng đi duy nhất tới gốc. Đ−ờng đi dùng để định danh duy nhất đối t−ợng với tên phi cấu trúc trong giải pháp h−ớng thuộc tính. Thuộc tính dùng cho mục đích đặt tên đ−ợc gọi là thuộc tính nhận biết (distinguished). Nếu các thuộc tính nhận biết của cùng một kiểu đ−ợc nhóm lại theo từng mức của cây thì việc ghép nối các thuộc tính nhận biết dọc theo đ−ờng đi trở thành tên cấu trúc của đối t−ợng. Hình 4.18 trình bày cây thông tin th− mục với kiến trúc nhóm các kiểu thuộc tính nhận biết (country, organization, user). Cấu trúc cây phân cấp là hợp lý cho giải pháp tên.
Không gian tên rộng lớn và cây DIT t−ơng ứng của nó có thể đ−ợc phân tích và phân tán thành miền tên (naming domain) và ngữ cảnh tên (naming context). Miền tên là không gian tên con với một quyền quản trị đơn để quản lý tên. Ngữ cảnh tên là cây con
bộ phận của DIT. Hình 4.18 đ−a ra 5 ngữ cảnh tên (A, B, C, D, E) trong các vùng có biên rời nét. Ngữ cảnh tên là đơn vị cơ bản để phân tán cơ sở thông tin tới nhà cung cấp dịch vụ th− mục (Directory Service Agent - DSA), là phục vụ cho dịch vụ tên. Có 3 DSA trong vùng với biên liền nét trong hình 4.18 quản lý năm ngữ cảnh tên. Mỗi ngữ cảnh tên cũng tạo nên một cây. Mỗi một DSA duy trì các kết nối tới các DSA khác cộng tác của dịch vụ tên. Organization Root User Country B C D E DSA 2 DSA 1 A
Hình 4.18. Phân tán của một DIT
DSA 3 DSA DUA DSA DSA DUA DSA 2 4 3 1 4 3 2 1 Đa phân phát Hình 4.19. Các mode t−ơng tác giải pháp tên
Chuyển tiếp
DUA DSA DSA
DUA DSA DSA
3 2 1 3 2 4 1 Mắt xích bắc cầu Mắt xích truy hồi
Bộ cung cấp th− mục ng−ời dùng Directiry User Agent (DUA) thay QT ng−ời dùng thực hiện việc khởi tạo QT giải pháp tên. Yêu cầu giải pháp đ−ợc gửi từ một DSA này tới một DSA khác cho tới khi tìm đ−ợc đối t−ợng trong DIT và trả về cho DUA. Mặc dù sơ đồ giải pháp là có cấu trúc-dựa theo tên hoặc phi cấu trúc-dựa theo thuộc tính, t−ơng tác giữa các DSA vẫn có thể thực hiện theo một trong bốn kiểu đ−ợc trình bày trong hình 4.19.
Trong kiều mắt xích (chaining mode), yêu cầu đ−ợc chuyển tiếp từ DSA đến DSA cho tới khi tên đ−ợc giải quyết. Kết quả đ−ợc gửi trả lại dọc theo đ−ờng cũ (mắt xích truy hồi) hoặc trực tiếp tới DUA (mắt xích ngoài). Mắt xích truy hồi là mode thông dụng đối với giải pháp tên cấu trúc. Kiểu mắt xích ngoài đòi hỏi ít TĐ hơn song mỗi TĐ cần mang địa chỉ của DUA nguồn. Mặt hạn chế chính của mắt xích ngoài là ở chỗ nó không cho phép mô hình lập trình RPC và Client/Server.
Trong kiểu chuyển tiếp (referral mode), khi một DSA không giải quyết đ−ợc tên yêu cầu từ DUA thì nó gợi ý một DSA khác cho DUA. Kiểu này có thể đ−ợc dùng cho cả giải pháp tên và giải pháp th− mục.
Trong kiểu đa phân phát (multicast mode), một yêu cầu đ−ợc định danh và đ−ợc gửi đồng thời tới các DSA. Một trong những lời đáp có giá trị đ−ợc DUA chọn. Kiểu này thích hợp khi thông tin cấu trúc là không có sẵn.
Một ph−ơng án hợp lý khi kết hợp các mode thao tác khác nhau. Ví dụ, sau b−ớc mắt xích có thể là b−ớc chuyển tiếp.
Tồn tại hai công nghệ chung để cải tiến giải pháp tên là l−u giữ tạm (catching) và nhân bản. Tên đ−ợc dùng và địa chỉ của chúng đ−ợc l−u tại một vùng l−u trữ cục bộ để giảm bớt yêu cầu giải pháp tên. Các ngữ cảnh tên cũng đ−ợc định danh trong các DSA khác nhau để rút ngắn đ−ờng giải đáp. Cuối cùng, thực thể đối t−ợng trong th− mục có thể là một bí danh hay một nhóm. Bí danh và Nhóm là những con trỏ tới tên các đối t−ợng khác và tới các nút lá trong DIT. Bí danh và Nhóm làm cho dịch vụ tên/th− mục mềm dẻo hơn đối với ng−ời sử dụng.
Dịch vụ tên là cốt yếu trong mọi hệ phân tán. Dịch vụ tên trong DCE là ví dụ tốt hỗ trợ lớp rộng lớn các sơ đồ tên. Trong hệ tự trị cộng tác, dịch vụ tên đ−ợc mở rộng để hỗ trợ hạ tầng truyền thông để định danh và định vị mọi đối t−ợng tự trị trong hệ thống và quản lý kết nối và phân phát dữ liệu giữa các đối t−ợng. Bộ môi giới nhu cầu đối t−ợng - The Object Request Broker (ORB) là một ph−ơng tiện trung tâm nh− vậy trong kiến trúc CORBA đối với hệ tự trị cộng tác.