Điểm:18

Điều gì có thể gây ra các gói mạng bao gồm PUU?

lá cờ us

Chúng tôi có một hệ thống đang bị mất liên lạc trên mạng ethernet gigabit. Tải lưu lượng truy cập trên mạng chẳng hạn như gây căng thẳng nhẹ cho mạng 100Mb, nhưng có các bộ chuyển mạch gigabit, NIC và cáp xuyên suốt - hoặc tôi được khách hàng đã xây dựng mạng mà chúng tôi đang kết nối cho biết như vậy.

Chúng tôi đã cắm một máy tính xách tay chạy Wireshark qua một trung tâm 100baseT và thấy rằng nó đã báo cáo rất nhiều gói "Ethernet II" trong đó dữ liệu thô, khi được hiển thị dưới dạng ASCII, về cơ bản trông như thế này:

PUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU

Đương nhiên, tôi ngay lập tức đặt tên cho vấn đề này là "Mạng PUU" và nhiều tiếng cười khúc khích xảy ra sau đó.Tất cả chúng tôi đều đã ngoài bốn mươi, nhưng tôi đoán một số người trong chúng tôi không bao giờ trưởng thành (tội lỗi!)

Dù sao, nghiêm trọng hơn, các gói hoàn toàn hợp lệ khác đã bị dữ liệu này làm hỏng. Các tiêu đề IPv4 đã được thay thế byte bằng bạn byte cũng như hỏng dữ liệu sẽ khiến phần mềm từ chối dữ liệu, ngay cả khi tổng kiểm tra IP không khớp. Chúng tôi khá chắc chắn rằng dữ liệu này tràn vào mạng đang gây ra sự cố ngừng liên lạc. Những gì chúng ta không biết là nó có thể đến từ đâu.

Có ai từng thấy điều này xảy ra trước đây? Bạn đã giải quyết nó? Bạn đã tìm ra nó đến từ đâu?

====ĐÃ CHỈNH SỬA====

Đã thêm đề cập đến trung tâm vào mô tả ban đầu vì, đánh giá từ các nhận xét bên dưới, đó là nguồn có khả năng xảy ra tham nhũng nhất! Công cụ chúng tôi sử dụng để thử và tìm sự cố mạng dường như đã thêm một sự cố mạng mới và tồi tệ hơn.

lá cờ us
Cảm ơn bạn cho tất cả các trả lời của bạn. Tôi vừa phát hiện ra rằng trung tâm mà chúng tôi đang sử dụng để đánh hơi lưu lượng là 100Mb và sự cố chỉ xảy ra khi một loại dữ liệu cụ thể (rất 40+KB được gửi cùng một lúc qua TCP) đang được truyền đi.
lá cờ us
Với Ron và Zac, cả hai bạn đã nói về địa chỉ MAC nguồn. Dữ liệu thô của gói mạng thực sự chỉ là PUUUUU..., vì vậy địa chỉ nguồn là 0x55555555 và địa chỉ đích là 0x50555555. Bị cáo buộc. Tôi có thể đã bỏ lỡ một vài byte 0x55.
lá cờ cn
Lưu ý rằng ASCII `U` cũng là `0x55`
NobodyNada avatar
lá cờ br
@Bergi ... mà (nếu không rõ ràng) là `01010101` ở dạng nhị phân, có thể biểu thị giá trị thử nghiệm/gỡ lỗi hoặc kết quả của sự cố lớp vật lý.
lá cờ cn
@AlastairG Bạn thực sự có nghĩa là "trung tâm" hay chỉ là "công tắc không được quản lý". Nếu nó thực sự là một trung tâm, hãy ném nó ra khỏi cửa sổ ngay lập tức. Các trung tâm không có chỗ đứng trong một mạng hiện đại (như trong "thiên niên kỷ này").
Ben Voigt avatar
lá cờ pl
@Tonny: Các trung tâm hữu ích hơn nhiều so với các công tắc để bắt gói, đến mức các công tắc chất lượng có khả năng chỉ định một cổng hoạt động như một trung tâm và phản chiếu tất cả lưu lượng được chuyển tiếp qua tất cả các đường dẫn khác.
user10489 avatar
lá cờ nc
Các trung tâm vô dụng trong một mạng hiện đại vì chúng đã ngừng hoạt động trở lại sau 100 triệu lần. Một trung tâm 100M không thể theo kịp mạng 1G. Ném chúng ra. Một số công tắc thông minh hỗ trợ chế độ hỗn hợp trong đó một cổng giám sát có thể nhận tất cả lưu lượng.
lá cờ cn
@BenVoigt Các trung tâm không có bộ đệm (hoặc tốt nhất chỉ có 1 gói) và được giới hạn ở 100 Mb/giây. Điều đó không còn đủ tốt nữa. Và điều đó thậm chí còn chưa tính đến các trung tâm lộn xộn được tạo ra khi xử lý va chạm. Logic xung đột cho các trung tâm dựa trên logic bán song công hơn 50 năm tuổi từ những ngày dỗ dành. Điều này không hoạt động tốt với ethernet hiện đại vì mọi liên kết đều là liên kết song công hoàn toàn, thông thường chỉ sử dụng các xung đột làm cơ chế giữ/tiếp tục để xử lý các điều kiện đầy bộ đệm (hy vọng là hiếm). Việc chụp gói là một lợi ích ngẫu nhiên của một trung tâm, nhưng hiện tại chúng tôi có các công cụ tốt hơn (phản chiếu cổng) cho điều đó.
lá cờ us
Như Ben Voigt nói, chúng tôi đã sử dụng một trung tâm giám sát mạng. Tôi không phải là dân IT, không hẳn, mặc dù cuối cùng tôi đã làm CNTT cho công ty nhỏ 10 người của mình.Tôi không biết bạn có thể đặt các cổng trên công tắc thành bừa bãi. Tôi đoán kiến ​​​​thức về ethernet của tôi hơi lỗi thời.
Điểm:18
lá cờ ru

Dù sao, nghiêm trọng hơn, các gói hoàn toàn hợp lệ khác đã bị dữ liệu này làm hỏng. Các tiêu đề IPv4 đã nhận được các byte được thay thế bằng các byte U cũng như việc dữ liệu bị hỏng khiến phần mềm từ chối dữ liệu, ngay cả khi tổng kiểm tra IP không khớp.

Thật đáng ngạc nhiên khi chỉ xen kẽ các bit (bạn là ASCII 0x55 hoặc 01010101b) thực sự tạo nên các khung Ethernet hợp lệ hoặc thậm chí các gói IP hợp lệ.Nếu lỗi này cũng bò vào các khung/gói phần lớn còn nguyên vẹn, thì nguyên nhân chỉ có thể là do - rất có thể - một công tắc bị lỗi (bộ nhớ đệm kém) hoặc máy chủ bị lỗi (NIC hoặc RAM).

Nếu dữ liệu khung bị hỏng trong quá trình vận chuyển, trên cáp, FCS rất có thể không xác minh được, làm cho công tắc tiếp theo bỏ khung đó. Tuy nhiên, nếu một khung như vậy được vận chuyển qua mạng với một FCS hợp lệ, nó chắc chắn đã bị hỏng. trước rằng FCS đã được tính toán, yêu cầu một công tắc hoặc máy chủ bị lỗi.

Bạn sẽ cần theo dõi lại lưu lượng truy cập đó. Nếu địa chỉ MAC nguồn không hợp lệ hoặc không thể kiểm tra được trên các thiết bị chuyển mạch trung gian (không được quản lý), bạn sẽ cần dò lại đường đi của mình dọc theo dây cáp.

fraxinus avatar
lá cờ ng
Tôi cũng bỏ phiếu cho một khối bộ nhớ bị lỗi trong một công tắc. Có vẻ như không phải tất cả bộ nhớ đều kém vì nó chỉ phá vỡ các gói trong các đợt dữ liệu lớn hơn.
Andrew Henle avatar
lá cờ ph
Và tôi sẽ không ngạc nhiên khi thấy rằng vấn đề trở nên trầm trọng hơn rất nhiều khi vô hiệu hóa tính năng tự động đàm phán trên các kết nối gigabit. [Tự động thương lượng là một yêu cầu để sử dụng 1000BASE-T theo *Phần 28D.5 Phần mở rộng cần thiết cho Khoản 40 (1000BASE-T)*. Ít nhất nguồn đồng hồ phải được thương lượng, vì một điểm cuối phải là chủ và điểm cuối kia phải là nô lệ.](https://en.wikipedia.org/wiki/Gigabit_Ethernet#1000BASE-T) Tôi không biết tại sao lại được cho là -những người thông minh vô hiệu hóa tự động đàm phán trên mạng. Bạn không tiếp tục lái ô tô của mình ở tốc độ 60 dặm/giờ/90 km/giờ với một cú xình xịch "bởi vì nó nên thế"
Zac67 avatar
lá cờ ru
@AndrewHenle Bất kỳ thiết bị nào liên kết 1000BASE-T với tính năng tự động đàm phán bị vô hiệu hóa đều có thể bị coi là bị hỏng (và bạn cần hai trong số chúng).
Điểm:12
lá cờ in

Có vẻ như bạn có một thẻ NIC xấu. Nếu địa chỉ MAC nguồn hợp lệ, bạn có thể tìm thấy nó bằng cách kiểm tra bảng MAC của switch. Nếu nó bị hỏng, bạn sẽ phải bắt đầu rút phích cắm thiết bị để tìm thấy nó.

Điểm:3
lá cờ cn

Điều đó nghe có vẻ như bạn có một thiết bị (có thể là bộ chuyển mạch 100 Mb/giây) ở đâu đó không thể xử lý luồng lưu lượng và bắt đầu làm hỏng các gói khi bộ đệm bên trong của nó bị tràn.
(Hoặc nó chỉ có một RAM xấu).

Nó không nhận thấy rằng nó có các gói bị hỏng và sẽ vui vẻ truyền lại chúng, với tổng kiểm tra mới được tính toán mới.Vì vậy, các gói xấu được chấp nhận bởi các thiết bị chuyển mạch khác (tổng kiểm tra là tốt, các thiết bị chuyển mạch không quan tâm rằng nội dung là vô nghĩa) và được chuyển tiếp qua toàn bộ mạng.

Nó thực sự tồi tệ hơn thế:
Xem xét cách các công tắc tìm hiểu thiết bị nào (địa chỉ mac) ở sau cổng nào. Bất kỳ gói nào được định sẵn cho một địa chỉ mac mà công tắc chưa học được sẽ tràn vào tất cả các cổng của công tắc (ngoại trừ cổng mà nó đến từ đó). Điều này biến một gói địa chỉ mac chưa được học thành một chương trình phát sóng tạm thời một cách hiệu quả.
Bởi vì các thiết bị chuyển mạch của bạn sẽ không bao giờ học được các địa chỉ mac này (xét cho cùng, chúng là địa chỉ mac bị hỏng, không phải địa chỉ mac thực), chúng TẤT CẢ được coi như các chương trình phát sóng ...
Điều này về cơ bản làm ngập toàn bộ mạng với các gói không thể gửi được.
(Và lưu ý rằng các biện pháp giảm thiểu bão phát thông thường không hoạt động trong trường hợp này. Chúng chỉ hoạt động trên các gói phát sóng THỰC SỰ, không phải trên các lũ học tập này.)

Cách duy nhất để khắc phục sự cố này là tắt từng công tắc một và xem điều đó có làm cho sự cố biến mất không. Nếu bạn có thể thu hẹp nó xuống còn 1 công tắc thì đó sẽ là chính công tắc đó hoặc một thiết bị được kết nối phía sau công tắc đó.

Điểm:-1
lá cờ nc

Sự khác biệt giữa một trung tâm và một công tắc là khi một công tắc gặp xung đột, nó sẽ loại bỏ gói thứ hai hoặc nó lưu trữ nó và sau đó chuyển tiếp nó khi gói đầu tiên kết thúc; trong đó một trung tâm sẽ vui vẻ cho phép xung đột xảy ra và chỉ thay thế nội dung của gói bằng 10101... để chỉ ra rằng đó là một xung đột và tiếp tục gửi cho đến khi cả hai gói kết thúc.

Giải pháp ở đây là loại bỏ các trung tâm vì chúng đã lỗi thời. Họ đã ngừng sản xuất bộ chia trước khi có 1G, do đó, bộ chia phải là 100M hoặc chậm hơn. Chuẩn mạng 1G không hỗ trợ hub.

Đối với một chút lịch sử, trước khi có các trung tâm, đã có các bộ lặp. Sự khác biệt giữa bộ lặp và bộ tập trung là bộ lặp nhận tín hiệu tương tự, làm sạch nó một chút trở lại thành sóng vuông đẹp, sau đó truyền lại tín hiệu đó, trong đó bộ trung tâm thực sự xem xét một chút nội dung trong gói và cố gắng đảm bảo rằng gói được hình thành tốt. Tuy nhiên, không ai trong số họ làm bất cứ điều gì để khắc phục va chạm, họ cứ để chúng xảy ra. Bộ lặp và bộ tập trung có từ trước khi ethernet được coi là xe buýt không có bộ đệm và chỉ một thiết bị trên mạng có thể phát biểu tại một thời điểm. Khi ethernet là một bus thực sự (10base2 và 10base5), để bắt đầu một gói, bạn truyền các bit bắt đầu (10101...) , sau đó bạn tiếp tục gói tin của mình. Nếu bạn bị gián đoạn, bạn sẽ va chạm và cả hai bên sẽ lùi lại và thử lại vào một thời điểm ngẫu nhiên sau đó. Nếu một bên không hủy bỏ, thì bạn có một vụ va chạm muộn. Trung tâm của bạn đang biến các va chạm muộn của bạn thành tất cả các bit bắt đầu. Có thể một cái gì đó trong đường dẫn không nhận ra gói là một vụ va chạm muộn và thay vì loại bỏ nó đang cải tổ nó thành một gói hợp lệ. Hoặc trình thám thính gói bừa bãi của bạn nhìn thấy các gói không hợp lệ cũng như các gói hợp lệ.

Ngược lại điều này với một công tắc, không chỉ khắc phục xung đột mà còn có thể hỗ trợ song công hoàn toàn, trong đó một gói được truyền đi trong khi một gói khác đang được nhận. Chuẩn 100M hỗ trợ các công tắc có và không hỗ trợ song công hoàn toàn và điều này được thỏa thuận giữa các thiết bị khi cáp được cắm vào. Chuẩn ethernet 1G yêu cầu tất cả các thiết bị hỗ trợ song công hoàn toàn, vì vậy không cho phép sử dụng bộ tập trung trên kết nối 1G, và do đó, các trung tâm 1G không tồn tại.

lá cờ gb
_"một trung tâm sẽ vui vẻ cho phép xung đột xảy ra và chỉ thay thế nội dung của gói bằng 10101... để cho biết rằng đó là một xung đột và tiếp tục gửi cho đến khi cả hai gói kết thúc"_ - bạn có thể giải thích rõ hơn không? Tôi biết các trung tâm chỉ là các bộ lặp trên lớp 1 (tức là các kết nối vật lý, hoàn toàn bằng điện), hoàn toàn không sửa đổi các gói, nhiều nhất (tạm thời) chặn các cổng gây rắc rối.
Zac67 avatar
lá cờ ru
Tín hiệu kẹt chỉ có 62 bit xen kẽ 0101. Mẫu trong câu hỏi trông dài hơn nhiều. Ngoài ra, bạn không giải thích làm thế nào một tín hiệu kẹt biến nó thành một khung hợp lệ. Các trung tâm bộ lặp Gigabit Ethernet được xác định rất rõ ràng - xem Điều khoản 41 của IEEE 802.3 - chúng không thành hiện thực nữa (may mắn thay). Một trung tâm là một *bộ lặp nhiều cổng* - sự khác biệt là số lượng cổng. Một trung tâm * không * kiểm tra khung (FCS) theo bất kỳ cách nào, nó chỉ phản ứng với jabber. *bạn truyền các bit bắt đầu (10101...) cho đến khi bit đầu tiên đến các đầu xa nhất của mạng* - chắc chắn là không.
Zac67 avatar
lá cờ ru
Lời mở đầu cộng với SFD chính xác là 48 bit. Đây là nơi tôi ngừng đọc ...
user10489 avatar
lá cờ nc
Bạn có thể đang xem xét một tiêu chuẩn mới hơn. Những gì tôi đang xem là 10base2 và 10base5. Ngoài ra, có một sự khác biệt lớn giữa va chạm bình thường và va chạm muộn. Các trung tâm chỉ nhìn vào các gói đủ để tìm ra nơi chúng bắt đầu. Bộ lặp thậm chí không làm điều đó, nó chỉ cải tổ sóng vuông.
user10489 avatar
lá cờ nc
@ Zac67: 48 bit ở 10 MHz nếu tôi làm đúng phép toán của mình là hơn 200m, nếu tôi nhớ chính xác thì gần bằng độ dài mạng tối đa xấp xỉ, vì vậy các số của bạn không đồng ý, giả sử bộ nhớ của tôi bao phủ 10base2.
Zac67 avatar
lá cờ ru
48/100M * e * .64 cho 100BASE-TX là khoảng 92m, trong khi chiều dài tối đa của miền va chạm là 300m (hai bộ lặp). Với 100BASE-FX, chiều dài tối đa là 6000m. Lý thuyết của bạn là sai.
Zac67 avatar
lá cờ ru
Tái bút: Xin lỗi, 100BASE-FX trong HDX bị giới hạn ở 400, vì vậy độ dài miền xung đột tối đa là 1200m.
user10489 avatar
lá cờ nc
Xung đột theo thời gian mở đầu không áp dụng cho 100base-TX, nó chỉ áp dụng cho 10base2 và 10base5, nếu tôi nhớ không lầm, là 200m và 500m. Sự khác biệt về chiều dài sẽ được tính đến vì hệ số vận tốc của RG58 là khoảng 60% và 10base5 yêu cầu loại đồng trục cao hơn nhiều, có thể có hệ số vận tốc khoảng 90-98%
Zac67 avatar
lá cờ ru
10BASE5 với hai bộ lặp (quy tắc 5-4-3 cho phép 3 phân đoạn trộn) có chiều dài miền va chạm tối đa là 1500m. Hệ số vận tốc của RG8 là 0,77 theo Điều 8. Làm phép toán. 100BASE-TX sử dụng phần mở đầu chính xác giống như tất cả các biến thể Ethernet. Phần mở đầu không được sử dụng để phát hiện va chạm ở bất kỳ đâu (ngoại trừ trường hợp có người vận chuyển). Bạn thực sự nên đọc IEEE 802.3.
Zac67 avatar
lá cờ ru
Đó không phải là phần mở đầu mà là *kích thước khung tối thiểu* (bao gồm cả phần mở đầu) cần mở rộng toàn bộ miền va chạm và ngược lại - người gửi vẫn cần truyền khi cảm nhận/báo hiệu va chạm hoặc nó sẽ không truyền lại.
user10489 avatar
lá cờ nc
Cáp đồng trục 10BASE2 có chiều dài tối đa là 185 mét. 10base5 là 500m. Tôi không biết bạn lấy 1500m ở đâu, có thể bạn đang nghĩ 1600 ft.
user10489 avatar
lá cờ nc
@Zac67: nghe đúng đấy. Nhưng cũng có một cơ chế để kết thúc quá trình truyền sớm để tránh va chạm muộn trên các gói lớn.
Zac67 avatar
lá cờ ru
Một *va chạm muộn* là một va chạm vượt quá kích thước khung hình tối thiểu. Nó chỉ có thể xảy ra nếu miền xung đột dài hơn mức cho phép hoặc nếu người gửi muộn bị trục trặc (hoặc không khớp song công).
user10489 avatar
lá cờ nc
Đúng. Nếu mọi thứ đều nằm trong thông số kỹ thuật, thì sẽ không xảy ra va chạm muộn.
lá cờ us
Điều này nghe giống như câu trả lời có khả năng nhất vì nó giải thích các bit xen kẽ là dấu hiệu của một vụ va chạm. PUU xảy ra khi một phần của hệ thống đang cố gửi thứ gì đó như 40kB trong một lần ghi vào ổ cắm. Đương nhiên, điều này được chia thành một số gói kích thước tối đa (1500 byte IIRC). Tuy nhiên, có vẻ như các chuyên gia hiểu biết nhiều hơn tôi nghĩ rằng đây không thể là câu trả lời chính xác vì PUU quá dài. Nhiều va chạm có thể gây ra sự cố không? Hoặc có một trung tâm 100MbaseT giữa hai thiết bị Gigabit ethernet với một hệ thống phát hiện va chạm khác?
user10489 avatar
lá cờ nc
Tôi nghĩ rằng rất có khả năng một hoặc cả hai bộ chuyển mạch 1G không xử lý chính xác trung tâm bán song công và dù sao cũng cung cấp cho nó song công hoàn toàn và trung tâm đang biến một thứ gì đó thành một vụ va chạm muộn kéo dài. Sau đó, một lần nữa, một hoặc cả hai bộ chuyển mạch 1G không xử lý xung đột một cách chính xác, bởi vì bạn không bị xung đột ở chế độ song công hoàn toàn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.