Round-trip time là gì? Và làm thế nào bạn ước tính sơ bộ được là có nên dùng hosting nào đó hay là không nhờ RTT

Round-trip time (RTT) đo khoảng thời gian tính bằng mili giây (ms) mà hệ thống mạng cần phải bỏ ra để một yêu cầu mạng đi từ điểm bắt đầu đến điểm kết thúc rồi quay trở lại điểm bắt đầu (khứ hồi). RTT là một chỉ số quan trọng để xác định độ mạnh khỏe của kết nối trên một mạng cục bộ hoặc hệ thống lớn Internet, và đây thường là công cụ để người quản trị mạng chẩn đoán tốc độ và mức độ đáng tin cậy của các kết nối mạng.


Giảm thiểu RTT là một mục tiêu quan trọng của CDN. Cải thiện độ trễ (latency) có thể được đo lường bằng cách giảm round-trip time và loại bỏ các trường hợp yêu cầu roundtrip, chẳng hạn như thay đổi tiêu chuẩn TLS/SSL handshake.


Công cụ ping, có sẵn trên hầu hết các máy tính (với hệ điều hành Windows, bạn nhấn vào biểu tượng Start bên góc ngoài cùng dưới bên trái rồi gõ cmd vào ô tìm kiếm), là một phương thức dùng để ước tính round-trip time. Ở dưới đây là ví dụ về một vài lần ping đến Google với round-trip time trung bình được tính toán ở cuối. Lưu ý rằng một trong các thời gian ping có giá trị 17,604ms – là cao nhất so với phần còn lại.

Cách round-trip time hoạt động

Round-trip time đại diện cho lượng thời gian mà dữ liệu đi một vòng khứ hồi đến địa điểm khác. Chúng ta sẽ xem lại câu chuyện từ bài viết bàn về độ trễ CDN, ở đó giả định rằng một người dùng ở New York (Hoa Kỳ) muốn liên hệ đến một máy chủ ở Singapore (Đông Nam Á).


Khi người dùng ở New York thực hiện yêu cầu, lưu lượng mạng sẽ được truyền qua nhiều routers (bộ định tuyến) khác nhau ở nhiều vị trí địa lý cụ thể trước khi kết thúc ở máy chủ tại Singapore. Máy chủ ở Singapore sau đó gửi một phản hồi quay trở lại thông qua Internet để đến vị trí ở New York. Một khi yêu cầu kết thúc ở New York, một ước tính thô có thể được thực hiện dựa trên thời gian cần phải bỏ ra để đi một vòng khứ hồi giữa hai địa điểm.

Quãng đường khứ hồi của một yêu cầu

Chúng ta cần phải nhớ rằng, round-trip time là ước tính và không phải là cái gì chắc chắn kiểu như như đinh đóng cột; tình trạng của đoạn kết nối giữa hai vị trí có thể thay đổi theo thời gian và các yếu tố khác chẳng hạn như tắc nghẽn mạng có thể tham gia vào và gây ảnh hưởng đến tổng thời gian lưu chuyển dữ liệu. Dù vậy RTT vẫn là chỉ số quan trọng để biết kết nối có thể được thực hiện hay không, và nếu có thì ước tính trước được khoảng thời gian mà nó cần.

Các yếu tố ảnh hưởng đến RTT là gì?

Các nền tảng cơ sở hạ tầng, lưu lượng mạng, và khoảng cách vật lý giữa nguồn đi và đích đến là các yếu tố có khả năng ảnh hưởng đến RTT.

Danh sách các yếu tố ảnh hưởng đến RTT:

  • Bản chất của môi trường truyền dữ liệu: cái cách mà kết nối được tạo ra ảnh hưởng đến tốc độ kết nối/di chuyển; các kết nối được thực hiện thông qua cáp quang (optical fiber) khác biệt vượt trội so với kết nối được thực hiện qua cáp đồng (copper). Tương tự, một kết nối được thực hiện qua mạng không dây thường rất khác biệt so với kết nối thông qua vệ tinh.
  • Lưu lượng của mạng LAN: lượng truy cập trên mạng LAN cục bộ có thể là nút thắt cổ chai bị nghẽn của kết nối trước khi nó có thể vươn ra bên ngoài để tiếp xúc với thế giới Internet. Lấy ví dụ, nếu nhiều người dùng cùng sử dụng dịch vụ streaming video, round-trip time có thể bị hạn chế mặc dù mạng bên ngoài có khả năng xử lý và đang hoạt động bình thường.
  • Server response time (thời gian phản hồi của máy chủ / TTFB): đây là khoảng thời gian để máy chủ xử lý và phản hồi một yêu cầu và có thể là nút thắt cổ chai gây ra độ trễ mạng. Khi một máy chủ bị quá tải yêu cầu, chẳng hạn trong thời gian bị tấn công DDoS, khả năng phản hồi của nó bị hạn chế, và kết quả là làm gia tăng RTT.
  • Số nút và tắc nghẽn (congestion): phụ thuộc vào con đường kết nối trong Internet, nó có thể được định tuyến (routed) hoặc “nhảy” qua các node trung gian khác. Nói chung thì, càng có nhiều node kết nối cần qua thì tốc độ di chuyển dữ liệu càng chậm. Một node cũng có thể phải trải qua tắc nghẽn mạng từ lưu lượng truy cập mạng khác, cái sẽ làm chậm đi kết nối và gia tăng RTT.
  • Khoảng cách vật lý: mặc dù kết nối được tối ưu hóa thông qua CDN thường có khả năng giúp giảm các bước nhảy cần phải có để đến được điểm đích, tuy nhiên thì chúng ta không có cách nào vượt qua được giới hạn tốc độ ánh sáng; khoảng cách vật lý giữa điểm bắt đầu và kết thúc là yếu tố giới hạn trong mạng kết nối có thể được giảm xuống bằng cách chuyển nội dung đến vị trí gần yêu cầu của người dùng hơn. Để vượt qua trở ngại này, CDN sẽ cache nội dung gần yêu cầu của người dùng hơn, nhờ vậy giảm được RTT.

Làm thế nào CDN cải thiện RTT?

Bằng cách vận hành & duy trì các máy chủ bên trong các điểm trao đổi Internet (internet exchage points) cũng như có các mối quan hệ thân thiết với các nhà cung cấp dịch vụ Internet (ISP) và nhà cung cấp dịch vụ mạng khác, CDN có khả năng tối ưu hóa tuyến đường trao đổi dữ liệu giữa các vị trí khác nhau, hệ quả là giảm được RTT và cải thiện độ trễ cho khách ghé thăm nội dung đã được cache trên CDN.


Trải nghiệm thực tế

Trong phần bổ sung của người dịch này tôi sẽ test Round-trip time trên một số hosting, CDN cả trong và ngoài nước.

Lưu ý: RTT này được kiểm tra vào giữa tháng một năm 2021, thời điểm cáp quang quốc tế bị đứt không quá nghiêm trọng (vì có các tuyến dự phòng nên ảnh hưởng đường truyền quốc tế ít hơn).

Round-trip time của BunnyCDN (quốc tế)
RTT của BunnyCDN (quốc tế)
Round-trip time của BizFly
RTT của BizFly CDN (Việt Nam)
Round-trip time của hosting Azdigi
RTT của hosting Azdigi
Round-trip time của QUIC cloud
RTT của QUIC cloud
Round-trip time của Cloudflare
RTT của Cloudflare

Nếu bạn muốn kiểm tra nhiều packet gửi đi liên tục thì sau tên miền gõ thêm -t, ví dụ:

ping speed.family -t 

Nó sẽ gửi và nhận cho đến khi nào bạn nhấn phím Ctrc + C;

RTT sử dụng lệnh ping -t

Xin chào & hẹn gặp lại các bạn trong bài viết khác.

(Dịch từ bài viết What is round-trip time? của Cloudflare)

Leave a Comment