Robert J. Shimonski
Pathping là công cụ dòng lệnh dựa trên nền tảng hệ điều hành Windows được dùng để cung cấp thông tin về dữ liệu đường dẫn tới địa chỉ đích, độ trễ mạng và tổn thất mạng tại các bước truyền trung gian giữa nguồn và đích. Trong bài này chúng tôi sẽ giúp các bạn hiểu độ trễ (latency), bước truyền (hop) và một số khái niệm tương tự. Đồng thời chúng ta cũng sẽ xem xét cách dùng Pathping để gỡ rối hay sửa chữa các vấn đề xuất hiện trong thực tế. Điều này giúp tăng cường tính hữu ích của công cụ, và ra cho bạn cách sử dụng khi làm việc trong mạng sản phẩm riêng của mình.
Giới thiệu
Pathping là tiện ích dựa trên cơ sở giao thức TCP/IP (công cụ dòng lệnh), cung cấp thông tin hữu ích về độ trễ mạng và tổn thất mạng tại các bước truyền trực tiếp giữa địa chỉ nguồn và địa chỉ đích. Nó thực hiện điều này bằng cách gửi các yêu cầu báo hiệu lại qua giao thức ICMP (Internet Control Message Protocol) và phân tích kết quả. ICMP là một mở rộng của Internet Protocol tức IP, một bộ phận của bộ giao thức TCP/IP được định nghĩa theo tiêu chuẩn RFC 792. ICMP hỗ trợ các gói chứa thông điệp lỗi, điều khiển và truyền tin. Pathping gửi nhiều thông báo yêu cầu báo hiệu lại tới từng router nằm giữa địa chỉ hiện thời đang cố gắng ping và địa chỉ đích. Nếu máy đích của bạn nằm giữa một liên kết WAN, chắc chắn bạn sẽ phải dùng một số lớp router, thông thường nhất là hai. Điều đó có nghĩa là bạn có thể kiểm tra đường dẫn pathping trong mạng hai bước truyền hoặc giữa các bước truyền hai router. Sơ đồ dưới đây minh hoạ một mạng điển hình thường thấy:
Đây là kiểu cài đặt mạng WAN điển hình, được kết nối cả hai mặt qua liên kết T1 và liên kết Integrated Services Digital Network (ISDN). Điểm quan trọng cần chú ý trong mạng này là có nhiều đường đa dẫn xuyên suốt toàn bộ mạng, có liên kết T1 và ISDN, cả các kỹ thuật kết nối tới từng mặt. T1 là liên kết chính, hoạt động với tốc độ 1.544 Mbps; ISDN là liên kết dự phòng sao lưu lại khi liên kết chính hỏng hoặc bị lỗi. ISDN là công nghệ đầu tiên cho phép trả tiền theo đúng lưu lượng đã sử dụng và là công nghệ hoàn hảo giữ các chức năng chưa thi hành cho đến khi cần thiết. Nó có tốc độ truyền tải thấp hơn (khoảng 64 Kbps) nhưng tốn ít năng lượng hơn, phù hợp cho các dịch vụ tiêu chuẩn. Băng thông cung cấp thêm thời gian lưu chuyển trong mạng cho các gói tin và bổ sung độ trễ hay sự trì hoãn cho giao thông mạng. Độ trễ (latency) là lượng thời gian một gói dữ liệu được chuyển từ một điểm tới một điểm khác. Pathping là công cụ kiểm tra thông số này rất tốt. Độ trễ có thể đo bằng lượng thời gian một gói tin kiểm tra bắt đầu được gửi đi đến khi quay trở lại người gửi. Con số thực rất lẻ, thường được làm tròn và gọi là độ trễ.
Pathping có thể cho bạn thấy không chỉ các gói tin được hình thành và truyền trong mạng như thế nào mà còn cả các dường dẫn chính xác (như T1) hay quá trình chúng "trôi" giữa các liên kết đan xen, thường là ISDN. Từ đó phát hiện và chỉ ra cho bạn lỗi cấu hình hay liên kết "chết" và liệu có chỗ nghẽn nào trong mạng của bạn không. Nhờ vậy, các vấn để liên quan đến độ trễ được xác định. Thiếu băng thông, độ trễ hay độ trì hoãn có thể là nguyên nhân gây ra lỗi vượt quá thời gian trong các hoạt động truyền tải dữ liệu. Pathping cho phép bạn gửi nhiều thông báo yêu cầu báo hiệu lại tới từng router nằm giữa bạn (tức địa chỉ nguồn) và đích bạn định đến. Sau khoảng thời gian ước tính nhất định, Pathping sẽ thể hiện kết quả nhận được trở lại từ từng router các gói tin đi qua.
Cú pháp
Để dùng pathping, đơn giản bạn chỉ cần mở cửa sổ lệnh trên máy nguồn sẽ chạy chương trình kiểm tra. Nếu muốn dùng phần minh hoạ tiếp theo như trong ví dụ, bạn cần bổ sung thêm địa chỉ IP. Nó sẽ giúp bạn thể hiện nội dung kiểm tra. Bạn có thể thấy ở hình dưới máy PC dùng để kiểm tra được đặt ở bên B với địa chỉ IP là 10.1.2.4. Hệ thống này muốn kiểm tra đường dẫn tới bên A, một server có địa chỉ IP là 10.1.1.5.
Chạy pathping không có gì khó. Mở cửa sổ lệnh Command Promp (vào Start -> Run -> cmd) và gõ lệnh pathping.
Lệnh pathping có khá nhiều tuỳ chọn, bao gồm:
-n | Ngăn pathping từ nỗ lực xử lý địa chỉ IP router trung gian cho tới tên của chúng. Tuỳ chọn này được sử dụng khi có vấn đề về xử lý tên hoặc chẳng hạn như DNS không được cấu hình vào hệ thống của bạn,…. Sử dụng tuỳ chọn này giúp bạn đỡ tốn thời gian bỏ ra để liên lạc với server name. |
-h | Là số bước truyền (hop) lớn nhất có thể có trong đường dẫn để tới đích đến. Giá trị mặc định là 30 bước. |
-p | Là khoảng thời gian chờ (tính theo mili giây) giữa các lệnh ping liên tiếp. Giá trị mặc định là 250 mili giây (tức ¼ giây). |
-q | Mô tả số thông báo Echo Request (Yêu cầu báo hiệu lại) được gửi tới từng router trong đường dẫn. Giá trị mặc định là 100 query. |
-w | Là thời gian chờ giữa các phản hồi (tính theo đơn vị mili giây). Giá trị mặc định là 3000 mili giây (tức 3 giây). |
/? | Thể hiện phần trợ giúp trong cửa sổ lệnh Command Prompt. |
Có một số tuỳ chọn khác, nhưng các tuỳ chọn trên là phổ biến nhất. Nếu muốn tìm hiểu thêm, bạn có thể dùng chức năng Help (trợ giúp). Nó sẽ đưa ra danh sách đầy đủ các tuỳ chọn trong cửa sổ lệnh Command Prompt của Windows.
Để dùng Pathping, khởi động lệnh pathping từ nguồn tới đích và cho phép nó thực hiện các tính toán của mình.
D:\>pathping -n server-1 Tracing route to server-1 [10.1.1.5] over a maximum of 30 hops: 0 10.1.2.1 1 10.1.1.1 2 10.1.1.5 Computing statistics for 50 seconds... Source to Here This Node/Link Hop RTT Lost/Sent = Pct Lost/Sent = Pct Address 0 10.1.2.1 0/ 100 = 0% | 1 35ms 0/ 100 = 0% 0/ 100 = 0% 10.1.1.1 13/ 100 = 13% | 2 28ms 16/ 100 = 16% 3/ 100 = 3% 10.1.1.5 0/ 100 = 0% | Trace complete. |
Trong đó:
- Tracing route to 10.0.0.5 over a maximum of 30 hops: Xác định route tới 10.1.1.5 với số lượng bước truyền tối đa là 30 bước.
- Computing statistics for 50 seconds...: Tính toán thông số trong 50 giây.
- Source to Here This Node/Link: Từ nguồn tới máy hiện tại: Nút/Liên kết
- Trace complete: Quá trình xác định hoàn thành.
Trong ví dụ này tôi chú trọng đến các điểm cơ bản và bỏ qua một số đoạn text chưa cần thiết nhằm tập trung chính xác đến cái chúng ta cần biết: thông số và cách đọc chúng. Bạn sẽ thấy có một độ trễ nhỏ ở bước truyền thứ hai (10.1.1.1), chuyển liên kết tới bước truyền tiếp theo là 10.1.1.5. Ở phần này chúng ta sẽ thấy một lượng nhỏ độ trễ thông thường có kích thước và liên kết tốc độ như vậy. Nếu tỷ lệ thời gian mili giây ở mức rất cao như 500 ms, có thể đã có vấn đề về băng thông xuất hiện. Như bạn có thể thấy, pathping không chỉ "kiểm chứng" kết nối tới host đích mà còn chỉ ra cho bạn cách thức giao thông mạng hoạt động như thế nào và sự nhanh chóng của chúng ra sao, lượng trở kháng gặp phải trong mạng diện rộng, là điểm tắc nghẽn rất phổ biến.
Dưới đây là ví dụ khác, sử dụng pathping trong cơ chế mạng sản phẩm để kiểm tra bên trong một LAN sản xuất có kết nối tới Internet và một trình duyệt Web.
Khi chạy pathping, bạn cần kiên nhẫn một chút. Đầu tiên pathping sẽ đưa ra kết quả như thể bạn đang dùng Tracert hay Traceroute, một tiện ích tương tự sẽ được giới thiệu ở bài sau. Tracert sẽ chỉ ra cho bạn 'đường dẫn' qua mạng và kiểm chứng kết nối nhưng không cho bạn biết cách thức gói tin được truyền đi trong mối quan hệ với tốc độ, việc sử dụng băng thông và độ trễ như thế nào. Bước tiếp theo, tuỳ thuộc vào lượng bước truyền (có bao nhiêu bước truyền router cần được phân tích) là kiểm tra kết quả pathping theo các cột Lost/Sent = Pct và Address. Quá trình kiểm tra này chỉ ra cho bạn thông tin chẳng hạn có thể cả hai liên kết đều đã được sử dụng (nếu bạn có tỷ lệ 'chết mạng' cao),… Tỷ lệ link (tức liên kết) bị mất mát được thể hiện là các thanh dọc (|) trong cột Address cho thấy việc nghẽn liên kết là nguyên nhân gây ra thất lạc các gói tin được được truyền trên đường dẫn. Tỷ lệ tổn thất ở router (được xác định bởi địa chỉ IP của chúng) chỉ ra rằng các router này có thể gặp phải vấn đề về tràn hay bão hoà.
Chú ý:
Nếu bạn thấy dấu "*", đừng bực mình, có thể một tường lửa đã block ICMP nên bạn không nhận được trả lời mặc dù thực tế nó đã được gửi đi. ACL (Access Control Lists - Danh sách điều khiển truy cập) và tập hợp quy tắc của tường lửa thường bỏ qua chương trình kiểm tra mạng vì điều này. Phải đảm bảo chắc chắn rằng bạn biết sơ đồ bố trí mạng của mình khi có ý định sửa chữa nó và đưa nó vào hoạt động xem xét chung.
Tóm tắt
Trong bài này chúng ta đã xem xét các vấn đề cơ bản khi dùng pathping. Có thể bạn nên tìm kiếm thêm thông tin để hiểu hơn về ICMP và cách dùng pathping như thế nào. Bạn cũng nên quan tâm đến các gỡ rối hay sửa lỗi các mạng sản phẩm của mình. Chúng tôi sẽ tiếp tục gửi đến các bạn nội dung liên quan ở phần sau.