Như chúng ta đã đề cập về khả năng xử lý của các thiết bị di động hiện nay là một thách thức đối với các bài tốn cần nhiều tài nguyên bộ nhớ để tính tốn. Bởi vì cơ sở dữ liệu Fingerprinting lớn và các thuật tốn định vị sẽ phải xử lý số lượng lớn dữ liệu Fingerprinting, các thiết bị di động sẽ khĩ đáp ứng được tài nguyên để lưu trữ và tính tốn định vị. Giải pháp được sử dụng để giải quyết khĩ khăn này là xây dựng một máy chủ IPS Server.
Một máy chủ IPS Server được cài đặt để lưu trữ cơ sở dữ liệu huấn luyện Fingerprinting và cung cấp dịch vụ định vị. Máy chủ định vị sẽ nhận thơng tin về RSS từ thiết bị di động gửi tới và sử dụng các thuật tốn định vị để phân tích và trả về thơng tin vị trí cho các thiết bị di động. Như vậy các thiết bị di động sẽ khơng tốn nhiều tài nguyên để xử lý, nĩ chỉ đơn giản thu thập các giá trị RSS từ các AP và gửi về cho IPS Server xử lý, sau đĩ sẽ nhận phản hồi thơng tin vị trí từ IPS server và hiển thị ra màn hình.
Các thiết bị di động (laptop hoặc điện thoại thơng minh) sẽ thu thập các giá trị RSS từ 4 AP và gửi thơng tin về cho IPS Server, máy chủ định vị này sẽ kết nối với Fingerprinting Database để xử lý thơng tin và trả thơng tin vị trí về cho các thiết bị di động.
Ngồi dịch vụ định vị, máy chủ IPS Server cịn cung cấp dịch vụ thu thập dữ liệu RSS tại mỗi vị trí tham chiếu. Người dùng sử dụng thiết bị di động, kích hoạt chương trình thu thập RSS, nhập các thơng tin về vị trí tham chiếu và gửi các giá trị RSS đo được từ các AP về cho IPSServer để tạo cơ sở dữ liệu Fingerprinting.
Máy chủ IPS Server cũng cung cấp dịch vụ lưu vết người dùng bằng cách sau mỗi lần định vị, sẽ lưu lại lịch sử thơng tin vị trí của người dùng. Những dữ liệu lưu vết này sẽ được sử dụng để phục vụ cho hướng nghiên cứu phân tích hành vi người dùng.
Các webservice được cài đặt trên IPS Server:
Module CollectRSS tạo cơ sở dữ liệu huấn luyện từ các thơng tin vị trí tham chiếu và RSS của các AP do các thiết bị di động cung cấp trong giai đoạn huấn luyện.
Module GetPositionString cung cấp dịch vụ định vị sử dụng thuật tốn K-Nearest Neighbor, K-Maximum Likelihood Neighbor, K-Maximum Likelihood Constraint Tracking Neighbor.
Module Tracking lưu vết vị trí của người dùng.