Разные каналы передачи данных могут иметь разный размер пакета. При переходе от среды с бо́льшим размером пакета к среде с ме́ньшим размером необходимо разбиение пакета на фрагменты. Фрагменты нумеруются и передаются независимо друг от друга. По приходу фрагментов получателю они выстраиваются по порядку номеров и объединяются.
Но, поскольку пакеты передаются независимо, то они могут идти разными маршрутами, с разной скоростью и с некоторой вероятностью сбоя при доставке. В результате у получателя пакеты с бо́льшими номерами могут накапливаться в буфере в ожидании пакетов с ме́ньшими номерами. Буфер, естественно, не бесконечный и если нужный пакет долго не приходит или не приходит вообще, то возникает ошибка переполнения буфера.
Ну а рекомендации вам уже дал
Daemon23RUS