Làm thế nào phổ biến là các gói bị rơi trong thông tin liên lạc trong một trung tâm dữ liệu?


10

Giả sử tôi có 2 máy trong cùng một trung tâm dữ liệu nhưng không nhất thiết phải ở cùng một giá.

Mức độ phổ biến của các gói bị giảm khi được gửi bằng UDP giữa hai máy này?

Tôi đang yêu cầu theo giả định rằng kể từ khi chỉ có một vài công tắc ở hầu hết giữa các máy mà các gói tin sẽ không được giảm ở tất cả .

Làm thế nào phổ biến là gói đến ngoài đơn đặt hàng trong cùng một trung tâm dữ liệu? Giả định của tôi là có nhưng một tuyến 99,9% thời gian để điều này không thể xảy ra.

Tuy nhiên, bất cứ khi nào tôi bắt mình suy nghĩ một cách tuyệt đối tôi biết mình phải thiếu thứ gì đó!

Tôi cần thông tin cơ bản nào để hiểu rõ hơn về thời điểm mong đợi các gói bị rơi và tần suất chúng có thể bị hủy và không theo thứ tự cho các máy trong cùng một trung tâm dữ liệu?

Cuối cùng, tôi đang cố gắng quyết định giữa việc sử dụng UDP hoặc PGM phát đa hướng khi liên lạc giữa các phiên bản VPS Linode khác nhau nằm trong cùng một trung tâm dữ liệu. Các thông tin phải đến và theo thứ tự. Chắc chắn, UDP không có vẻ rất tuyệt vời sau đó!

Nhưng, nếu người ta có thể mong đợi giao hàng gần như hoàn hảo hoặc hoàn hảo trong cùng một trung tâm dữ liệu, thì tốt thôi. Nhưng, tôi đang thử nghiệm giả định đó.

Cảm ơn.

Câu trả lời:


11

Bạn không thể dựa vào UDP để phân phối các gói theo thứ tự vì đặc điểm kỹ thuật không cung cấp các đảm bảo đó. Ngay cả khi giả sử tình huống lý tưởng nhất, một đoạn cáp ethernet duy nhất giữa hai máy chủ, vẫn còn vấn đề về HĐH, ngăn xếp mạng, trình điều khiển NIC và triển khai libc mà bạn viết.

Ở mỗi bước trong chuỗi đó, người viết mã đó sẽ chọn KHÔNG ưu tiên đặt hàng các gói UDP ngay cả khi chúng đến để vì lý do đơn giản là chúng không phải.

Một ví dụ có thể là cấu trúc dữ liệu mà các gói đến được đọc vào, có thể là bộ đệm vòng. Các gói đến theo thứ tự, sẽ được đặt, theo thứ tự vào bộ đệm vòng, nhưng có thể đơn giản hơn khi người viết trình điều khiển đổ chúng vào các lớp trên của mã mạng theo thứ tự bộ nhớ , do đó ngẫu nhiên sắp xếp thứ tự của chúng.

Theo tình huống của bạn, một máy ảo chạy trên cơ sở hạ tầng dùng chung sẽ chạy theo khối lượng, không phải hiệu năng, thì xác suất dự đoán các gói UDP sẽ nhận được sẽ thấp.

Nói tóm lại, nếu thông số kỹ thuật nói rằng bạn không thể dựa vào thứ tự gói UDP. Bạn không thể dựa vào nó và bạn không thể cố gắng điều chỉnh môi trường để đảm bảo chắc chắn hơn thông số kỹ thuật từng được hứa hẹn.


Đây là những gì tôi nghĩ rằng tôi nên suy nghĩ. Cảm ơn bạn đã nêu nó khá tốt!
z8000

1
Nếu bạn muốn phát đa hướng đáng tin cậy, có thể để phát trực tuyến, hãy xem en.wikipedia.org/wiki/Real-time_Transport_Protocol
Dave Cheney

0

Nếu bất cứ ai quan tâm đến thử nghiệm, chỉ cần sử dụng Wireshark. Nếu ai đó thực sự gặp phải trường hợp của chúng tôi về kết nối chậm hoặc bị rớt gói, chúng tôi chỉ phản chiếu một cổng trên công tắc, kết nối máy tính xách tay với Wireshark và xem xét.


FWIW tại Linode, một ví dụ VPS không thể vào chế độ lăng nhăng.
z8000

Bạn có thể cài đặt Wireshark cục bộ trên máy để thu thập dữ liệu đến hoặc chỉ phản chiếu cổng trên công tắc và thu thập dữ liệu theo cách đó. Các cổng phản chiếu sẽ trở nên phức tạp hơn nếu được thực hiện cho các hệ thống ảo có thể chia sẻ một vài cổng. Nhưng Wireshark có thể lọc các mục cụ thể như IP và tôi nghĩ tên máy chủ lưu trữ.
Web

0

Khá nhiều chuyển đổi sẽ gây ra việc đặt lại hai gói bất cứ lúc nào và được tính đến bởi nhiều giao thức mạng như PGM.

Một điều cần xem xét là hầu hết các trung tâm dữ liệu đều chặn datagram và chặn multicast nhằm đơn giản hóa và giảm chi phí cho cơ sở hạ tầng mạng của họ.

Bản thân giao thức IP / PGM chỉ cần được sử dụng nếu bạn đã bật PGM Bộ định tuyến hỗ trợ và nhận biết các thành phần mạng giữa máy chủ và máy khách, nếu không, hãy gắn bó với PGM được gói gọn trong UDP và tiết kiệm gánh nặng quản lý quyền ứng dụng.

Nếu bạn sử dụng lớp nhắn tin như ØMQ, bạn có thể trì hoãn lựa chọn mạng lớp phủ IP / PGM, UDP / PGM hoặc TCP để triển khai và tích hợp.


-2

Tôi đã viết một ứng dụng multicast đơn giản .net có thể đo các gói bị rơi dưới áp suất chỉ định.

Bạn có thể tải nó ở đây: SimpleMulticastAnalyzer .

Thưởng thứ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.