Xác định tốc độ thẻ mạng

Posted on Tháng Bảy 9, 2009

0


Tình huống

Tôi và đồng nghiệp muốn chia sẻ tệp tin lớn. Mặc dù cả hai đang ở trong một tòa nhà và chung mạng LAN, nhưng mỗi phòng đều có mạng LAN riêng -mỗi mạng đặt 1 tường lửa Linux.

my LAN <-> my FW <-> our LAN <-> his FW <->  his LAN

Vì vậy, chúng tôi quyết định chép qua thư mục chung đặt trên máy chủ khác nằm ở mạng cục bộ chung (our LAN). Khi bắt đầu chép dữ liệu (tổng cộng khoảng 4GB) từ máy của đồng nghiệp tôi lên máy chủ thì chúng tôi mới nhận thấy tốc độ quá chậm: chỉ đạt hơn 600kB/s, trong khi tốc độ LAN là 100Mbps. Ban đầu, tôi nghi ngờ do chính sách kiểm soát chất lượng đang đặt cho tường lửa không cho phép vượt quá ngưỡng nhất định. Nhưng sau khi kiểm tra lại, thì phát hiện ra băng thông đầu ra thấp có thể là card mạng chỉ đạt chuẩn 10Mbps chứ không phải cùng tốc độ với mạng chung 100Mbps.

Vấn đề đặt ra là liệu có cách nào kiểm tra ngay tốc độ của card mạng mà không phải tháo máy. Để nếu biết chắc giả định của tôi là đúng, thì khi đó mới phải tắt tường lửa để thay bằng card mạng khác tốc độ cao hơn.

Giải pháp
Có 3 cách để kiểm tra, chạy một trong các lệnh sau ở dòng lệnh,  sau đó đọc thông tin liên quan đến tốc độ thẻ mạng

$dmesg | grep eth0
$sudo mii-tool -v eth0
$sudo ethtool eth0

dmesg cho thông tin dạng

[ 6904.129021] skge eth1: Link is up at 100 Mbps, full duplex, flow control both

mii-tool cho thông tin dạng

eth1: negotiated 100baseTx-FD flow-control, link ok


ethtool cho thông tin dạng

Settings for eth1:

Speed: 100Mb/s
Duplex: Full

Bài học

Khi thiết kế và bố trí các trang thiết bị mạng, nếu không lưu ý sẽ gây ra hiện tượng nút cổ chai ở khối máy chủ hoặc bộ định tuyến/tường lửa.

Luôn ưu tiên sử dụng thiết bị mạng có băng thông rộng nhất, tốc độ cao nhất dành cho các điểm kiểm soát đó. VD: ưu tiên sử dụng bộ chuyển mạch (switch thay vì bộ tập trung (hub) để đấu/kết nối với khối máy chủ vì lưu lượng qua đó luôn lớn.

Nguồn tham khảo

  1. http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch03_:_Linux_Networking
  2. http://linuxhelp.blogspot.com/2005/10/find-speed-of-your-ethernet-card-in.html
Advertisements