CLIENTICMP Echo RequestICMP Echo ReplySERVER8.4 ms

Ping

9 đọc tối thiểuChẩn đoán

Ping là công cụ mạng nhỏ nhất có thể thực hiện được điều gì đó hữu ích. Gửi một gói tin, chờ phản hồi, đo thời gian. Con số bạn nhận được là thời gian khứ hồi và khoảng cách giữa nó và 0 là nơi tồn tại của mọi dạng chậm trực tuyến. Đáng để biết những gì trong khoảng trống đó.

Toàn bộ nội dung bài viết được cung cấp bằng tiếng Anh bên dưới.

Ping được đặt tên theo sonar tàu ngầm - bạn gửi xung, bạn lắng nghe tiếng vang. Trên Internet, xung là gói Yêu cầu tiếng vang ICMP và tiếng vang là Gói phản hồi tiếng vang ICMP. Độ trễ khứ hồi cho bạn biết điểm đến cách xa bao xa về mặt mạng. Công cụ này được Mike Muuss viết vào tháng 12 năm 1983 với khoảng một nghìn dòng C; về cơ bản nó đã được bao gồm trong mọi hệ điều hành kể từ đó.

ICMP Echo thực sự là gì

ICMP (Giao thức tin nhắn điều khiển Internet) là giao thức gửi thông báo lỗi và kiểm soát về lưu lượng IP. Yêu cầu tiếng vang (ICMP loại 8) và Phản hồi tiếng vang (loại 0) là hai loại tin nhắn cụ thể được sử dụng để kiểm tra khả năng tiếp cận. Khi bạn ping máy chủ, hệ điều hành của bạn sẽ gửi Yêu cầu tiếng vang; nếu ngăn xếp mạng của máy chủ nhận được nó, hạt nhân sẽ tự động trả lời bằng Echo Reply, không cần ứng dụng tham gia.

Đọc đầu ra

64 byte từ 8.8.8.8: icmp_seq=1 ttl=58 time=8.42 ms

The các trường:

  • 64 byte — tổng kích thước gói bao gồm tiêu đề ICMP (mặc định).
  • icmp_seq=1 — số thứ tự, được sử dụng để xác định các phản hồi bị rớt và không theo thứ tự.
  • ttl=58 — Giá trị TTL khi đến. Giá trị được gửi mặc định (thường là 64 hoặc 128) trừ đi số bước nhảy cho bạn biết đích đến là bao xa.
  • time=8,42 ms — thời gian khứ hồi.

Bản tóm tắt ở cuối quá trình ping hiển thị tỷ lệ phần trăm mất gói, min/avg/max/mdev RTT — số liệu quan trọng đối với một khả năng sử dụng của kết nối.

Thời gian khứ hồi là tổng của một số độ trễ riêng biệt:

  • Độ trễ lan truyền — khoảng cách vật lý trên môi trường, khoảng 5 micro giây trên mỗi km trong cáp quang. New York đến London tối thiểu là khoảng 60 ms chỉ do vật lý.
  • Độ trễ tuần tự hóa — đã đến lúc đẩy các bit lên dây ở tốc độ đường truyền. Không đáng kể trên các liên kết hiện đại dành cho các gói nhỏ.
  • Độ trễ xếp hàng — thời gian chờ trong bộ đệm của bộ định tuyến phía sau lưu lượng truy cập khác. Rất thay đổi; đây là nguyên nhân "tắc nghẽn mạng" tạo ra.
  • Độ trễ xử lý - thời gian mà bộ định tuyến hoặc CPU chủ cần để kiểm tra và chuyển tiếp gói. Thông thường là khoảng một phần triệu giây cho mỗi bộ định tuyến hiện đại.

RTT tối thiểu bị giới hạn bởi vật lý (lan truyền) và chi phí giao thức. Sự khác biệt chủ yếu đến từ việc xếp hàng. Ping nảy từ 8 mili giây đến 80 mili giây không bị hỏng — nó bị tắc nghẽn ở đâu đó dọc đường dẫn.

Packet loss

Nếu ping báo cáo 5% gói tin bị mất ở một đích đến, điều đó không có nghĩa là 5% lưu lượng truy cập ứng dụng của bạn biến mất. TCP truyền lại các gói bị mất. Các ứng dụng UDP truyền lại ở lớp ứng dụng (cuộc gọi điện video) hoặc chấp nhận mất dữ liệu (chơi game). Ý nghĩa của việc mất 5%: Thông lượng TCP sụt giảm vì mỗi lần mất sẽ kích hoạt quá trình truyền lại và phản ứng kiểm soát tắc nghẽn. Thậm chí mất 1% cũng có thể cắt thông lượng TCP xuống 10 lần trên liên kết có độ trễ dài.

Khi ping nằm

Nhiều mạng giảm mức ưu tiên lưu lượng ICMP. Bộ định tuyến có thể xử lý ICMP trên CPU mặt phẳng điều khiển chậm hơn lưu lượng dữ liệu. Vì vậy, ping báo cáo 80 mili giây trong khi lưu lượng dữ liệu thực tế của bạn là 8 mili giây là có thể. Điều ngược lại cũng có thể xảy ra — ICMP đi theo đường dẫn làm giảm lưu lượng TCP thực tế của bạn do MTU không khớp hoặc tường lửa có trạng thái.

Ping là một gợi ý, không phải là phép đo hiệu suất ứng dụng. Để kiểm tra toàn diện, hãy sử dụng chính giao thức ứng dụng.

P tràn ngập và giới hạn tốc độ

Ping mặc định gửi một gói mỗi giây. Việc thêm -f (lũ) sẽ gửi nhanh nhất có thể mà mạng có thể xử lý, điều này đôi khi hữu ích để kiểm tra mức độ căng thẳng của thiết bị của bạn và nếu không thì là một cách khiến bạn bị ISP giới hạn tốc độ. Hầu hết các hệ điều hành đều yêu cầu root/quản trị viên phải ping nhanh hơn một lần mỗi giây để tránh lạm dụng.

Plời khuyên thực tế

  • ping -c 100 hosting: 100 gói cung cấp cho bạn một mẫu thống kê có thể sử dụng được về tình trạng mất mát và jitter.
  • ping -i 0,2 Host: khoảng thời gian 200 ms; chi tiết hơn để phát hiện tắc nghẽn ngắn.
  • ping -s 1472 máy chủ: tải trọng lớn cho thấy các vấn đề về MTU mà các ping nhỏ ẩn giấu.
  • ping6 máy chủ hoặc ping -6: buộc IPv6, hữu ích để kiểm tra xem đường dẫn IPv4 và IPv6 có khác nhau hay không.

Câu hỏi thường gặp

Tại sao tôi không thể ping được một số máy chủ?
Nhiều máy chủ và CDN chặn hoàn toàn ICMP Echo. Cloudflare và Akamai hỗ trợ một số điểm cuối; Microsoft thực hiện đối với một số máy chủ Outlook; nhiều tường lửa của công ty loại bỏ tất cả ICMP. Máy chủ vẫn ổn; ping chỉ bị chặn. Thay vào đó, hãy sử dụng <code>tcpping</code> hoặc <code>nc -z</code> trên cổng dịch vụ thực tế.
Ping tốt là gì?
Để chơi game hoặc gọi điện video: dưới 50 ms là tốt, 50–100 ms chấp nhận được, trên 150 ms đáng chú ý. Đối với trình duyệt web nói chung, mọi thứ dưới 100 ms đều cảm thấy thú vị. Đối với lưu lượng truy cập xuyên Thái Bình Dương, 150–200 mili giây là tốc độ sàn ánh sáng — không có VPN hay ISP nào thay đổi được điều đó.
VPN có ảnh hưởng đến ping không?
Vâng, hầu như luôn luôn tồi tệ hơn. Lưu lượng truy cập của bạn bây giờ sẽ đi vòng qua máy chủ thoát của VPN trước khi đến đích. Khoảng cách vật lý được bổ sung cộng với quá trình xử lý máy chủ VPN thường tăng thêm 10–80 mili giây. Chọn lối ra VPN gần đích chứ không phải gần bạn để có độ trễ phát trực tuyến/chơi game thấp nhất.
Sự khác biệt giữa ping và traceroute là gì?
Ping đo RTT đầu cuối đến đích. <a href="/learning/traceroute">Traceroute</a> đo RTT thành <em>mọi bộ định tuyến</em> dọc theo đường dẫn. Sử dụng ping để xác nhận có thể truy cập được đích đến; sử dụng traceroute để tìm ra vấn đề nằm ở đâu trên đường dẫn.
Tại sao ping của tôi tăng vọt trên Wi-Fi nhưng ổn định trên cáp?
Wi-Fi chia sẻ phương tiện trên các thiết bị lân cận và AP. Khi lò vi sóng của hàng xóm chạy hoặc người khác phát trực tuyến phim, các gói của bạn sẽ được xếp hàng đợi. Các kết nối có dây không chia sẻ phương tiện cục bộ và hiếm khi gặp phải tình trạng tắc nghẽn vi mô này. Ping đột ngột trên Wi-Fi là bình thường; mức tăng đột biến nhất quán có nghĩa là môi trường địa phương bị tắc nghẽn.
Ping giải thích: Tiếng vang ICMP, Thời gian khứ hồi và "Độ trễ" thực sự có nghĩa là gì