Phân tích dữ liệu lưu lượng truy cập mạng bằng công cụ Lưu lượng truy cập mạng

Công cụ Lưu lượng truy cập mạng không được dùng nữa. Nếu đang sử dụng Android Studio 3.0 trở lên, bạn nên sử dụng Trình phân tích mạng để kiểm tra cách thức và thời điểm ứng dụng của bạn chuyển dữ liệu qua một mạng.

phần trước, bạn đã gắn thẻ mã ứng dụng bằng giá trị nhận dạng lưu lượng truy cập, các kiểm thử đã chạy và dữ liệu được thu thập. Bài này sẽ hướng dẫn bạn cách xem dữ liệu lưu lượng truy cập mạng mà bạn đã thu thập, qua đó hướng dẫn bạn thực hiện các hành động để cải thiện hiệu suất nối mạng của ứng dụng và giảm mức tiêu thụ điện năng.

Phân tích lưu lượng truy cập mạng của ứng dụng

Một ứng dụng sẽ sử dụng hiệu quả tài nguyên mạng khi phần cứng mạng không cần hoạt động trong những khoảng thời gian dài. Có một chi phí đáng kể liên quan đến việc khởi động đài phát để gửi hoặc nhận dữ liệu trên thiết bị di động, và để duy trì đài phát trên thiết bị di động hoạt động trong thời gian dài. Nếu ứng dụng của bạn truy cập mạng một cách hiệu quả, bạn sẽ thấy các hoạt động liên lạc của ứng dụng qua mạng được nhóm chặt chẽ với nhau, có khoảng cách phù hợp với các khoảng thời gian ứng dụng không đưa ra yêu cầu kết nối.

Hình 1 cho thấy lưu lượng truy cập mạng tối ưu từ một ứng dụng, được đo bằng công cụ Lưu lượng truy cập mạng. Ứng dụng thường xuyên gửi yêu cầu mạng. Lưu lượng truy cập này có vài khoảng thời gian nghỉ ngơi để đài phát chuyển sang chế độ chờ, tiết kiệm pin. Hành vi truy cập mạng của ứng dụng này có thể khiến cho đài phát luôn bật trong thời gian dài, gây tốn pin.

Hình 1. Hoạt động mạng gây hao tổn nhiều pin được đo từ một ứng dụng.

Hình 2 cho thấy một mẫu lưu lượng truy cập mạng tối ưu. Ứng dụng sẽ gửi yêu cầu mạng theo từng đợt, phân tách bởi khoảng thời gian dài không có lưu lượng truy cập, trong đó đài có thể chuyển sang chế độ chờ. Biểu đồ này cho thấy cùng một khối lượng công việc đang được thực hiện như hình 1, nhưng các yêu cầu đã được chuyển đổi và nhóm lại để cho phép đài phát luôn ở chế độ chờ.

Hình 2. Hoạt động mạng tiết kiệm pin được đo từ một ứng dụng.

Nếu lưu lượng truy cập mạng cho ứng dụng của bạn trông tương tự như biểu đồ ở hình 2, thì bạn đang ở trạng thái tốt! Xin chúc mừng! Bạn có thể muốn tiếp tục tăng hiệu suất kết nối mạng bằng cách xem các kỹ thuật như mô tả trong phần Tối ưu hoá cách sử dụng mạng chung.

Nếu lưu lượng truy cập mạng cho ứng dụng của bạn trông giống như biểu đồ trong hình 1, đã đến lúc xem xét kỹ hơn cách ứng dụng truy cập mạng. Bạn nên bắt đầu bằng cách phân tích các loại lưu lượng truy cập mạng mà ứng dụng của bạn đang tạo ra.

Phân tích các loại lưu lượng truy cập mạng

Khi xem xét lưu lượng truy cập mạng mà ứng dụng của bạn tạo ra, bạn cần hiểu rõ nguồn lưu lượng truy cập để có thể tối ưu hoá lưu lượng truy cập đó một cách thích hợp. Hoạt động mạng liên tục từ ứng dụng của bạn có thể hoàn toàn phù hợp nếu ứng dụng phản hồi hành động của người dùng, nhưng hoàn toàn không phù hợp nếu ứng dụng không chạy trên nền trước hoặc nếu thiết bị đang ở trong túi hoặc ví. Phần này sẽ thảo luận cách phân tích các loại lưu lượng truy cập mạng mà ứng dụng của bạn tạo ra, sau đó hướng dẫn bạn các thao tác có thể thực hiện để cải thiện hiệu suất.

Trong bài học trước, bạn đã gắn thẻ mã ứng dụng cho nhiều loại lưu lượng truy cập và sử dụng công cụ Lưu lượng truy cập mạng để thu thập dữ liệu trên ứng dụng, đồng thời tạo biểu đồ hoạt động, như minh hoạ trong hình 3.

Hình 3. Lưu lượng truy cập mạng được gắn thẻ cho ba danh mục là người dùng, ứng dụng và máy chủ.

Công cụ Lưu lượng truy cập mạng tô màu lưu lượng truy cập dựa trên các thẻ bạn đã tạo ở bài học trước. Màu sắc dựa trên các hằng số loại lưu lượng truy cập mà bạn đã xác định trong mã ứng dụng của mình. Xem lại mã ứng dụng của bạn để xác nhận những hằng số nào đại diện cho lưu lượng truy cập do người dùng, ứng dụng hoặc máy chủ khởi tạo.

Các phần sau đây thảo luận cách xem xét các loại lưu lượng truy cập mạng và cung cấp đề xuất về cách tối ưu hoá lưu lượng truy cập.

Phân tích lưu lượng truy cập mạng do người dùng khởi tạo

Hoạt động mạng do người dùng thực hiện có thể được nhóm lại với nhau một cách hiệu quả trong khi người dùng thực hiện hoạt động cụ thể với ứng dụng của bạn, hoặc được phân bổ không đồng đều khi người dùng yêu cầu thông tin bổ sung mà ứng dụng của bạn cần thu thập. Mục tiêu của bạn trong việc phân tích lưu lượng truy cập mạng do người dùng khởi tạo là tìm kiếm các mẫu sử dụng mạng thường xuyên theo thời gian và cố gắng tạo hoặc tăng phạm vi của các khoảng thời gian không truy cập mạng.

Việc không dự đoán được các yêu cầu của người dùng đặt ra thách thức cho việc tối ưu hoá hình thức sử dụng mạng này trong ứng dụng của bạn. Ngoài ra, người dùng mong đợi phản hồi nhanh nhạy khi đang tích cực dùng ứng dụng. Vì vậy, việc trì hoãn các yêu cầu để đổi lấy hiệu suất có thể mang đến trải nghiệm kém cho người dùng. Nhìn chung, khi người dùng đang tương tác trực tiếp với ứng dụng của bạn, tốc độ phản hồi người dùng nhanh cần được ưu tiên hơn so với việc sử dụng mạng hiệu quả.

Dưới đây là một số phương pháp tối ưu hoá lưu lượng truy cập mạng do người dùng khởi tạo:

  • Tìm nạp trước Dữ liệu mạng – Khi người dùng thực hiện một hành động trong ứng dụng của bạn, ứng dụng sẽ dự đoán dữ liệu nào có thể cần thiết cho các hành động tiếp theo của người dùng, tìm nạp hàng loạt dữ liệu đó trong một kết nối duy nhất, và lưu giữ kết nối đó cho đến khi người dùng yêu cầu.
  • Kiểm tra kết nối hoặc Theo dõi các thay đổi – Kiểm tra khả năng kết nối mạng hoặc theo dõi những thay đổi về khả năng kết nối trước khi thực hiện cập nhật.
  • Giảm số lượng Kết nối – Sử dụng API máy chủ cho phép tải dữ liệu xuống theo tập hợp.

Phân tích lưu lượng truy cập mạng do ứng dụng khởi tạo

Hoạt động mạng do mã ứng dụng của bạn thực hiện thường là khu vực bạn có thể tác động đáng kể đến việc sử dụng hiệu quả băng thông mạng. Khi phân tích hoạt động mạng của ứng dụng, hãy tìm khoảng thời gian không hoạt động và xác định xem liệu có thể tăng thời gian không hoạt động lên hay không. Nếu bạn thấy các mẫu truy cập mạng nhất quán từ ứng dụng của mình, hãy tìm cách tách biệt các quyền truy cập này để cho phép đài phát của thiết bị chuyển sang chế độ tiết kiệm pin.

Dưới đây là một số phương pháp tối ưu hoá lưu lượng truy cập mạng do ứng dụng khởi tạo:

  • Yêu cầu mạng theo lô và lên lịch – Trì hoãn các yêu cầu mạng của ứng dụng để có thể xử lý các yêu cầu đó cùng lúc và tại thời điểm thuận lợi cho thời lượng pin.

  • Cho phép hệ thống kiểm tra kết nối –Tránh hao tốn pin khi chạy ứng dụng chỉ để kiểm tra kết nối mạng khi bạn có thể cho phép hệ thống chạy quá trình kiểm tra trong khi ứng dụng của bạn ngủ.

Phân tích lưu lượng truy cập mạng do máy chủ khởi tạo

Hoạt động mạng do các máy chủ giao tiếp với ứng dụng của bạn thực hiện cũng thường là khu vực mà bạn có thể tác động đáng kể đến việc sử dụng hiệu quả băng thông mạng. Khi phân tích hoạt động mạng từ kết nối máy chủ, hãy tìm khoảng thời gian không hoạt động và xác định xem liệu có thể tăng thời gian không hoạt động hay không. Nếu bạn thấy các mẫu hoạt động mạng nhất quán từ máy chủ, hãy tìm cách tách biệt hoạt động này để cho phép đài phát của thiết bị chuyển sang chế độ tiết kiệm pin.

Dưới đây là phương pháp tối ưu hoá lưu lượng truy cập mạng do máy chủ khởi tạo: