Các dịch vụ giao tiếp cấp cao

Một phần của tài liệu Nghiên cứu tính toán lưới và thực nghiệm trên một số thuật toán lý thuyết đồ thị (Trang 84 - 88)

Các mơ hình lập trình khả thi cĩ thể phụ thuộc vào sự hỗ trợ của cơ sở hạ

tầng hiện cĩ. Các dịch vụ trao đổi thơng tin cấp cao là một phần của cơ sở này. Khái niệm “các dịch vụ trao đổi thơng tin cấp cao” ở đây cĩ thể là bất cứ ngữ

nghĩa nào ngịai khả năng trao đổi một chiều đơn giản nhưng đáng tin cậy từđiểm A đến điểm B, hay thậm chí là multicast dữ liệu. Vì thế bất cứ những gì cấu tạo nên các dịch vụ này đều được định nghĩa khá rộng và được thúc đẩy phát triển bởi nhiều yếu tố khác nhau

Trong tính tốn lưới, nắm vững và sử dụng được các topo mạng sẽ càng ngày càng quan trọng, bởi vì tất cả các hiệu năng của Grid sẽ bị chi phối phần lớn bởi độ trễ của đường truyền, điều này cĩ nghĩa là trong 5 đến 10 năm tới hay hơn nữa, băng thơng của mạng sẽđược mở rơng hơn nhưng tương ứng sẽ khơng ngắn hơn (do sự giới hạn của độ trễ). Để duy trì được hiệu năng, các cơng cụ lập trình như MPI sẽ phải quan tâm hơn đến topo của mạng. Một ví dụ của cơng cụ này là MagPIe. MagPIe hỗ trợ một cách trong suốt cho các cluster trên mạng diện rộng bằng cách giới hạn tối đa sự truyền dữ liệu cho các thao tác tổng hợp trên các

đường truyền yếu. Các thao tác này thay vì chịu ảnh hưởng bởi O(nlogn) thơng

điệp đi quan tồn bộ đường kính của mạng như truớc, thì giờ đây nĩ chỉ là đường kính trung bình của mạng.

Một động cơ thúc đẩy khác cho các dịch vụ trao đổi thơng tin cấp cao là nhu cầu của các thuộc tính giao tiếp cơ bản khác nhau. Một nhĩm multicast truyền thống xây dựng một bản định tuyến thích ứng và được định hướng bởi các topo mạng vật lý. Việc định tuyến dựa vào nội dung sẽ cho phép ứng dụng điều khiển

http://etrithuc.vn

lịch trình trao đổi, định tuyến dựa trên các yêu cầu cơ bản của chương trình bên trong một nhĩm multicast đã cho, hơn là chỉ đơn thuần trao đổi thơng tin một-một. Tất nhiên thiết kế này địi hỏi phải theo topo ở một dạng nào đĩ.

Vì thế các dịch vụ trao đổi thơng tin cĩ thểđược phân thành nhiều lọai. Một trong số chúng chỉ thực sự hiệu quả khi kiến trúc cĩ định hướng theo topo mạng, trong khi những cái khác thì khơng cĩ trong bất cứ trường hợp nào.

Làm tăng ng nghĩa thơng tin : Cịn hơn là trao đổi cách thức định tuyến cơ bản, và hơn nữa, hầu hết cĩ thể làm tăng khả năng trao đổi thơng tin mà chỉ cần thêm vào một vài tính năng. Một vài cách phổ biến như dùng cache, bộ lọc, nén, mã hĩa, chất lượng dịch vụ, chuyển mã dữ

liệu hay các chức năng được người dùng định nghĩa.

Các thao tác tng hơp : Các ứng dụng cĩ thể yêu cầu các thao tác đồng bộ hĩa, về cơ bản chúng thường thực hiện cùng với một topo thơng tin theo thao tác một-một. Để đạt được hiệu năng trong mội trường mạng diện rộng, việc kết gán các thao tác với các topo được xác định bởi mạng vật lý hay ảo là một điều rất quan trọng.

• Định tuyến da vào ni dung hay chính sách : bằng cách cho phép các

ứng dụng quyết định việc định tuyến dựa vào các trường do ứng dụng

định nghĩa, sẽ tạo ra các tính năng như cơng bố hay đăng ký vào các dịch vụ sự kiện. việc định tuyến dựa vào chính sách cũng là một phương án khả thi khác. Ví dụ như là phải đáp ứng được các yêu cầu của chất lượng dịch vụ (QoS) và các mơ hình bảo tồn thơng điệp trong đĩ phải áp dụng chính sách trên trật tựđến của thơng điệp qua tập hợp các máy trạm cuối.

Phm vi trao đổi thơng tin : Một vài dịch vụ cĩ thể tốn chi phí rất cao để

thực hiện, đặc biệt trên phạm vi lớn. Ví thế nếu một ứng dụng cĩ thể tự định nghĩa phạm vi cho dịch vụ thì cĩ thể sẽ giảm thiểu tối đa vấn đề, từ đĩ làm cho tăng tính khả thi trong việc triển khai dịch vụ. Phạm vi trao

http://etrithuc.vn

đổi thơng tin cĩ thểđược kết hợp với một topo được xác định để cĩ thể

quản lý nhiều phạm vi cho cùng hay các ứng dụng riêng rẽ.

3.4.7. Bo mt

Các ứng dụng cĩ thểđược yêu cầu chứng thực, cấp phép, kiểm tra tính tồn vẹn và tính riêng tư. Trong ngữ cảnh của mơ hình lập trình, điều này cĩ thể đem lại sự phân nhánh thêm. Về cơ bản, bảo mật một-một cĩ thểđược thực hiện bằng cách tích hợp các phương pháp bào mật và cách thức lập trình. Một ví dụ khác là sự kết hợp của SOAP với GSI. Tuy nhiên, trong ngữ cảnh lớn những lời gọi hàm như RMI hay RPC cĩ thể tồn tại trong một cây lời gọi (call tree). Hỗ trợ bảo mật qua cây lời gọi địi hỏi khái niệm delegation of trust.

Ký tên và chứng nhận các giấy phép trên RPC cũng phải được thực hiện sao cho cân bằng với số lượng cơng việc hiện cĩ. Sự quá tải do bảo mật cĩ thể

được quản lý bằng cách thiết lập các domain bảo mật và được ủy nhiệm. Các giấy phép sẽ được phân phối cho các RPC trong domain. Các domain được ủy nhiệm cĩ thểđược dùng để giới hạn các quá tải về bảo mật trên từng RPC.

3.4.8. Dung li

Tính dung lỗi và tin cậy trong các cơng cụ và mơ hình lập trình lưới phần lớn vẫn cịn cần được tiếp tục ngiên cứu. Phạm vi cụ thể của một ứng dụng nào đĩ thì cĩ tính dung lỗi cao hơn so với các phạm vi khác. Tuy nhiên vấn đề là ở chỗ

làm thế nào để cho các mơ hình và cơng cụ tính tốn lưới trở nên đáng tin cậy và ít lỗi hơn. Rõ ràng là cĩ tồn tại sự khác biệt giữa hai tính này trong ứng dụng và trong các mơ hình/cơng cụ lập trình lưới và cũng là đối với chính bản thân cơ sở

hạ tầng Grid.

Một sự khác biệt xa hơn cĩ thể xảy ra giữa khả năng phát hiện lỗi, thơng bào lỗi và phục hồi lỗi. Trong mơi trường Grid phân tán, việc quan trọng là chỉ cần nhận ra khi nào thì cĩ lỗi xuất hiện. Việc truyền các thơng báo đĩ cho các site

http://etrithuc.vn (adsbygoogle = window.adsbygoogle || []).push({});

khác liên quan cũng quan trọng khơng kém. Cuối cùng là các site này phải cĩ khả

năng phục hồi hay làm giảm các ảnh hưởng của lỗi.

Các khả năng này yêu cầu là các mơ hình sự kiện phải được tích hợp vào trong các mơ hình và cơng cụ lập trình lưới. Các mơ hình sự kiện được yêu cầu cho mọi khía cạnh của tính tĩan lưới, như là các bộ phận giám sát hiệu năng. Vì thế việc triển khai các cách thức sự kiện lưới để chúng trở nên sẵn sàng là một

điều cần thiết. Cách sử dụng các phương pháp như vậy sẽ là yếu tố cốt lõi cho các mơ hình tính tốn đáng tin và dung lỗi.

Một thí dụ cho vấn đề trên, hãy xem phương pháp Grid RPC. Về cơ bản một RPC cĩ một lời gọi và trả về trong cây lời gọi, nhưng cũng cĩ thể cĩ hủy và từ

chối. Trong một chuỗi RPC đồng bộ, phải theo hủy và từ chối theo một đường tuyến tính. Tuy nhiên trong nhiều RPC bất đồng bộ thì chúng cĩ thểđi theo nhiều nhánh. Từ chối cũng cĩ thể thực hiện trên nhiều nhánh khác.

Vì thế cách thức Grid RPC rõ ràng là cần một dịch vụ sự kiện để quản lý các thao tác hùy và từ chối. Điều này rất quan trọng trong việc thiết kế và cài đặt phương pháp RPC mang tính dung lỗi, nghĩa là phương pháp mà trong đĩ bất cứ

các thao tác bất thường nào cũng đều được xác định trong một khoảng thời gian nào đĩ và được cảnh báo, nhớ đĩ mà các dịch vụ GPC cĩ thể xĩa các trạng thái khơng cịn thích hợp.

Trong khi trường hợp đơn giản nhất (mà cũng cĩ thể là phổ biến nhất) của việc hủy sẽ liên quan đến RPC được thực hiện trên một sự kiện phân phối đơn theo một-một, thì việc hủy tồn bộ RPC là điều hữu ích. Trong trường hợp này, RPC cĩ thểđược xem như là một nhĩm tiến trình. Một nhĩm tiến trình như vậy cĩ thể bao gồm một nhánh hoạt động của cây lời gọi, một cây lời gọi song song với một nút gốc, hay là một hay nhiều nhánh của cây lời gọi khơng chứa nút gốc.

Việc hủy trên tồn bộ nhĩm tiến trình cĩ thể được thực hiện theo các sư

kiện một-một. Tuy nhiên sự kiện thơng báo một-nhiều hay một vài-nhiều sẽ làm cho tồn bộ nhĩm bị hủy nhanh hơn. Những sự kiện thơng báo nhĩm như vậy cĩ

http://etrithuc.vn

thể được thực hiện bởi các thành viên trong nhĩm hay bởi giao diện publish/subcribe nhờ đĩ mà các máy chủ RPC từ xa cĩ thểđăng ký vào để hủy các sự kiện của các nhĩm tiến trình trên các ROC khác.

Một phần của tài liệu Nghiên cứu tính toán lưới và thực nghiệm trên một số thuật toán lý thuyết đồ thị (Trang 84 - 88)