Tôi có thể sử dụng công cụ nào để mô phỏng mạng WAN cho lưu lượng HTTP?


13

Đôi khi tôi cần mô phỏng môi trường WAN giữa máy khách và máy chủ của mình. Ý tôi là, cụ thể, từ quan trọng nhất đến ít nhất:

  • Tổng giới hạn băng thông,
  • Thỉnh thoảng trì hoãn (nhiều chục giây)
  • hốt hoảng

Tốt hơn là, trình giả lập WAN có thể hoạt động như một proxy - Tôi chỉ khách hàng của mình vào trình giả lập WAN và trình giả lập WAN nói chuyện với máy chủ. Tôi đã dành rất nhiều thời gian để Googling cố gắng tìm kiếm thứ gì đó sẽ làm điều này, và đã tìm thấy rất rất ít.

Tất nhiên, tôi biết có nhiều giải pháp khác nhau tôi có thể thực hiện bằng cách kiểm soát cấu trúc liên kết mạng và chèn các thiết bị ở giữa, nhưng CNTT điều khiển mạng. Tôi chỉ là một nhà phát triển.

Những công cụ miễn phí hoặc chi phí thấp nào bạn không biết về điều đó có thể giúp một người mô phỏng mạng WAN?


Bạn đang sử dụng môi trường nào? Có nhiều thứ bạn có thể làm với ngăn xếp mạng nếu bạn đang sử dụng Linux ...
Hamish Downer

Câu trả lời:


6

http://cransities.vmware.com/bloss/Knorrhane/2008/01/23/how-to-simulation-wan-connections-in-your-own-test-lab-for-free


Trong bài báo họ đề cập đến Tmurgent cũng giới thiệu độ trễ để thử nghiệm. Đây là chìa khóa. Chúng tôi đã tìm thấy một cách khó khăn với ứng dụng nội bộ của mình rằng băng thông không phải là vấn đề chính, đó là độ trễ. Chúng tôi phải rất cẩn thận với việc xây dựng các đối tượng của mình trên máy khách vì tất cả các cuộc gọi SQL có thể tăng thêm chi phí thực trong môi trường WAN có độ trễ.
Aaron

7

Nếu bạn sử dụng Linux, bạn có thể sử dụng tc - chương trình kiểm soát lưu lượng. Nó phải là tiêu chuẩn trong distro của bạn. Ví dụ: để đặt tốc độ tối đa tải lên (trong trường hợp này là 100 kbit mỗi giây):

$ sudo tc qdisc add dev eth1 root tbf rate 100kbit latency 600ms burst 1540   

để đặt tốc độ tải xuống tối đa (trong trường hợp này là 500 kbit mỗi giây):

$ sudo tc qdisc add dev eth0 root tbf rate 500kbit latency 600ms burst 1540

tc có thể làm nhiều hơn thế. Tôi không thể tìm thấy tài liệu tham khảo ngay bây giờ, nhưng bạn có thể bỏ các gói vv với tc. Để tìm hiểu thêm, bạn có thể đọc cách điều khiển giao thông .

Ngoài ra, bạn có thể xem xét tcng - Traffic Control Next Generation - điều này sử dụng tc ở mức độ thấp, nhưng có ngôn ngữ đẹp hơn một chút để chỉ định những gì bạn làm. Tôi đã không sử dụng nó, nhưng có một howto tcng và một tay tcng .


3

Có một công ty tên là Shunra chuyên về công cụ này. Tôi không có bất kỳ kinh nghiệm nào với họ nhưng họ đã ở đây được một thời gian.


2

DummyNet là một phần mềm miễn phí có thể được sử dụng để mô phỏng các điều kiện mạng khác nhau. Nếu bạn có một máy dự phòng, hãy cài đặt FreeBSD và DummyNet, và đặt nó trực tuyến giữa máy khách và máy chủ của bạn. Sau đó, bạn có thể điều chỉnh DummyNet để thay đổi độ trễ, độ giật và mất mà bạn gặp phải.

EDIT: chỉ cần đọc lại câu hỏi và nhận ra rằng bạn không sở hữu mạng của mình. Trong trường hợp này, hãy định cấu hình DummyNet trên một máy có hai NIC và biến nó thành một bộ định tuyến có mạng LAN công ty của bạn ở một bên và máy trạm của bạn ở phía bên kia. Chỉ cần chắc chắn nói chuyện với bộ phận CNTT của bạn trước để đảm bảo rằng họ không có bất kỳ vấn đề nào với bạn khi làm điều này!



1

Tôi cá là bạn có thể xây dựng một plugin Fiddler để mô phỏng thứ gì đó như thế này, nhưng tôi không biết một giải pháp nào khác.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.