2011-10-05 2 views
0

소켓 연결을 사용하여 두 PC 응용 프로그램간에 통신하는 데 사용될 통신 프로토콜을 설계하고 있습니다. 가장 일반적인 경우는 두 응용 프로그램이 동일한 시스템에서 작동하지만 원격 시스템에서 하나의 응용 프로그램을 실행할 수 있습니다. 응용 프로그램은 최대 2Mb/s의 데이터를 교환 할 수 있습니다. 질문 : 확인 패킷을 사용하여 한 응용 프로그램에서 보낸 패킷을 다른 응용 프로그램에서 수신했는지 확인해야합니까? 나는 소켓이 TCP 연결을 사용하여 확인/재전송이 이미 구현되어 있음을 알고 있지만 실제로 그것을 사용했던 누군가로부터 피드백이 필요하다.소켓 통신은 프로세스 간 통신을위한 신뢰할 수있는 프로토콜입니까?

기술은 사용 : - 소켓 서버 : 다음 라이브러리를 사용하여 .NET 응용 프로그램 : http://www.codeproject.com/KB/IP/AsyncSocketServerandClien.aspx - 소켓 클라이언트 : .NET 또는 델파이 응용 프로그램

답변

3

이 괜찮 트래픽이 단락 TCP에서 /입니다 IP 드라이버 스택. 다른 IPC 메커니즘과 큰 차이점이 없으며 버스 간 속도로 작동하는 메모리 대 메모리 복사본 만 필요합니다. 5 기가 바이트/초 (typ)이며 오버 헤드는 마이크로 초 정도입니다. 컨텍스트 스위칭을 수행해야 할 필요가 있더라도 더 큰 비용이 듭니다. 명명 된 파이프는 동일하게 작동합니다. 일단 NIC를 통과해야한다면 절벽에서 떨어집니다.