Я работаю над проектом с Socket TCP / IP (Сервер- C# и Клиент- Python). Потоковое видео после иногда, данные Recv Socket разбиваются. Мои данные имеют размер баффа = 22000 байт, если он будет разделен, он станет:
buff = 1460
buff = 20600
Я не знаю почему, я исследовал некоторые методы с MTU, фрагментация, Windows размер, .... но безрезультатно Специально, если я установил, что процесс будет казаться меньше.
self.sk.setsockopt(socket.SOL_SOCKET, socket.SO_RCVBUF, 1048576)
введите описание изображения здесь - Изображение о данных разделено
Это мое гнездо Recv.
buff = self.sk.recv(1048576)
print("BUFF RECEIVE ::: ::::: ---->>>>> ",len(buff))
if buff == b'' :
self.sk=None
buff = None
return buff
Предложения : Это только что произошло в Chrome Браузер (это означает, что потоковое видео не может быть, если потеря данных). Но на Firefox, это не так. Кажется, мигает момент, если потеря данных, но он может продолжить поток после. введите описание изображения здесь - Chrome и FireFox