Nền tảng phát triển phần mềm Chord SDK

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 38 - 40)

3.3.1. Tổng quan

Việc xây dựng một ứng dụng chia sẻ thông tin thời gian thực sử dụng các Android API chuẩn thực sự là một thách thức với các lập trình viên, đặc biệt là kết nối nhiều – nhiều giữa các thiết bị một cách phân tán. Điều đó đòi hỏi lập trình viên phải có hiểu biết sâu sắc về lập trình mạng và đa luồng trên nền tảng Android.

Chord SDK (Software Development Kit) là một bộ công cụ phát triển phần mềm trên hệ điều hành Android API 14 trở lên và dành riêng cho thiết bị Samsung. Chord hỗ trợ việc thiết lập và quản lý các kết nối 1 – 1, 1 – nhiều, nhiều – nhiều giữa các thiết bị Android. Chord cho phép các lập trình viên dễ dàng phát triển các ứng dụng chia sẻ thông tin cục bộ mà không cần quan tâm tới các giao thức mạng.

Các thiết bị chạy ứng dụng của Chord sử dụng bản tin UDP phát quảng bá để xác định các thiết bị khác, sau đó sử dụng giao thức TCP/IP để thiết lập mạng giao tiếp 1 – 1. Ứng dụng sử dụng mạng này để chia sẻ dữ liệu nhƣ tin nhắn, file với các

thành viên trong mạng. Đặc biệt, Chord version 2.0 cho phép sử dụng giao thức UDP để truyền các dữ liệu thời gian thực nhƣ audio, video.

Chord định nghĩa một số đối tƣợng trong mạng đƣợc thiết lập nhƣ sau:

Node: là các thiết bị kết nối tới các thiết bị khác thông qua giao thức của Chord SDK.

Public channel: gồm tất cả các node tồn tại trong kênh cục bộ do Chord tạo ra. Tuy nhiên, public channel không hiển thị với ngƣời dùng.

Private channel: mỗi một nút trong Public channel có khả năng tạo ra kênh riêng phục vụ cho quá trình truyền nhận dữ liệu. Private channel chỉ gồm những node chạy cùng ứng dụng.

Kênh là một nhóm logic các nút trong mạng có thể kết nối với nhau. Chord SDK cho phép tạo và quản lý các kênh đó. Các nút trong mạng sẽ truyền, nhận dữ liệu và file trong kênh. Tại một thời điểm, một nút có thể tham gia đồng thời vào nhiều kênh riêng. Tín hiệu UDP luôn đƣợc gửi 1 lần/giây để cập nhật trạng thái các nút trong mạng. Nếu một nút không nhận tín hiệu UDP trong khoảng thời gian time out, mặc định là 60 giây, sẽ đƣợc nút điều khiển hiểu là đã rời mạng [12].

Hình 3.4 Các loại kênh được định nghĩa trong Chord SDK

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 38 - 40)