2016-08-05 5 views
-1

빠른 페이징 및 높은 패킷 게임에 TCP를 사용하기 위해 TCP의 패킷 손실 감지를 비활성화하고 싶습니다 (패킷이 실패하면 다른 패킷을 보냅니다) 그리고 정말 필요하지 않습니다. (1-3 패킷이 길어지면 몇 초 후에 그것을 덮어 쓸지도 모르겠다.) 그럼 C# 프로그래밍 언어를 사용하여 어떻게 이것을 할 수 있습니까?패킷 손실 방지 TCP를 비활성화하는 방법 C#

+0

필자는이 문서를 수정하는 데 필요한 문서를 찾지 않으려 고하지 않습니다. 그러나 나는 TcpClient.NoDelay = true를 시도했다. 그것은 나 did not는 내가 그것을했다라고 생각했던 것을한다. –

답변

2

대신 UDP를 사용하십시오! 해제 할 수 없습니다.

업데이트 :
그래서이 질문에 대한 정보를 찾았을 때 운영 체제에서는 재전송을 비활성화 할 수 있지만 연결을 중단하게됩니다. 즉, 초기 진술을 지원합니다. 그리고 이것의 부작용은 전체 OS에서 문제가 될 수 있습니다. Windows의 경우

: https://support.microsoft.com/en-us/kb/170359

반드시뿐만 아니라 다른 사람의 OS에 대한 설정이있을 것입니다.

+0

실제 연결 상태를 갖고있는 것처럼 UDP를 사용하지 않으시겠습니까? 내가 뭘 할 수 있니? –

+2

프로그램에서 연결 상태를 구현하십시오. 그런 다음 UDP를 사용하십시오. TCP는 모든 패킷을 수신 측에서 확인하도록 요구합니다. TCP의 기본 기능입니다. –