巴扎黑2017-04-18 10:38:57
TCP 끈적임 문제는 해결하셨나요?
TCP이기 때문에 粘包
문제를 고려해야 합니다. 粘包
문제가 해결되지 않으면 어떤 바이트가 패킷의 처음 4바이트인지 확인할 수 없습니다.
간단히 말하면, 많은 바이트를 수신하며 이러한 바이트의 소스는 다음과 같습니다.
2~3개 패킷의 바이트를 모두 함께 전송
이전 패킷의 후반부와 다음 패킷의 바이트의 전반부가 함께 전송됩니다.
간단히 말하면 반봉지나 접착봉지를 섞은 형태입니다
우리는 TCP 끈적한 패킷 문제를 해결하기 위해 netty
을 사용하고 있습니다. 다음은 netty
에 기반한 잘 설명된 솔루션입니다: https://my.oschina.net/andylu...
巴扎黑2017-04-18 10:38:57
소켓 통신 헤더 문제입니다. 이전 프로젝트에서 처리한 방법은 다음과 같습니다.
으아아아디버깅을 위해 수신 소켓을 작성하는 것이 좋습니다. 패킷 캡처 도구를 사용한 적이 없거나 상대방과 공동으로 디버깅할 수 있으면 괜찮습니다. 패킷 캡처에 문제가 있습니다.
도움이 되었으면 좋겠습니다~