Kiến trúc AllJoyn framework

Một phần của tài liệu Nghiên cứu triển khai mạng xã hội phạm vi gần trên thiết bị di động (Trang 36 - 38)

Nền tảng AllJoyn bao gồm hai thành phần chính: Application và Router. Hai thành phần này giao tiếp với nhau trong quá trình ứng dụng chạy. Thành phần Application chỉ có thể giao tiếp với Application khác thông qua Router. Application và Rounter có thể đƣợc cài đặt trên cùng một thiết bị vật lý hoặc các thiết bị khác nhau. Thực tế, có ba loại cấu trúc phổ biến nhƣ sau [11]:

 Một thành phần Application chỉ sử dụng Router trên cùng thiết bị: AllJoyn Application trên các hệ điều hành di động hoặc PC thƣờng thuộc loại này và Router đƣợc gọi là “Bundled Router”.

 Nhiều thành phần Application sử dụng cùng Router trên cùng thiết bị: khi đó Router đƣợc gọi là “Standalone Router” và thƣờng đƣợc chạy nhƣ ứng dụng nền, cung cấp dịch vụ. Mô hình này phổ biến trên các kiến trúc Linux, nơi mà Router chạy trong tiến trình daemon và kết nối với nhiều AllJoyn Application.

 Một thành phần Application sử dụng Router trên thiết bị khác: các thiết bị nhúng thƣờng sử dụng mô hình kiến trúc này do không có đủ tài nguyên CPU và bộ nhớ để xử lý AllJoyn Router.

Nhƣ vậy, mạng AllJoyn đƣợc tạo thành bởi AllJoyn Application và AllJoyn Router. Router có nhiệm vụ truyền nhận và định tuyến cho các bản tin giữa các Router và Application một cách độc lập với lớp giao vận tầng dƣới.

Hình 3.2 Kiến trúc mạng AllJoyn biểu diễn theo thành phần

Kiến trúc của một AllJoyn Application gồm các lớp cơ bản nhƣ sau:

 Các thƣ viện lõi (core library): cung cấp tập các API mức thấp nhất dùng để giao tiếp với tầng mạng vật lý của AllJoyn. Lập trình viên có thể sử dụng các API này để triển khai các dịch vụ chạy ngầm hoặc các giao thức riêng.

 Nền tảng dịch vụ (service framework): cung cấp một tập các dịch vụ chung cho lớp ứng dụng, từ đó các ứng dụng và thiết bị có thể giao tiếp với nhau một cách nhịp nhàng.

 Mã ứng dụng (application code): đây là phần logic chƣơng trình của ứng dụng AllJoyn, có thể đƣợc lập trình từ lớp service framework hoặc lớp core library.

Hình 3.3 Kiến trúc của một AllJoyn Application

Một phần của tài liệu Nghiên cứu triển khai mạng xã hội phạm vi gần trên thiết bị di động (Trang 36 - 38)