2009-07-14 5 views
0

내가 구성된 원격 데스크톱 시스템을 개발하는 계획입니다 : 잡고 프로토콜

  • 피어 (peer)를 설정 서버를 화면에 표시 할 수 있습니다

    1. 데스크톱 응용 프로그램 연결은 STUN/TURN NAT 탐색 기술을 동료에게 제공합니다.
    2. 브라우저에서 실행되며 사용자가 원격 데스크톱을 보거나 제어 할 수있는 웹 기반 (Java 애플릿 또는 Silverlight) 응용 프로그램입니다.

    요점은 -이 시스템에 가장 적합한 인코딩 프로토콜은 무엇입니까? 나는 바이너리이고 충분하지 않은 VNC를 연기했다 - 나는 더 많은 기능을 필요로한다. NAT 트래버 설. 데스크톱 및 서버용 C++ 및 웹 기반 응용 프로그램 용 Java/.NET에서 쉽게 개발할 수 있어야합니다. HTTP (S)를 통해 XML에 대해 생각하고 있었지만 이진 데이터를 상당량 전송해야하므로 (BMP/JPG 등으로 인코딩 된 캡처 된 데스크톱 이미지) 바이너리 데이터를 효율적으로 인코딩 할 수 있는지 궁금합니다.

    힌트가 있습니까?

    감사합니다.

  • 답변

    1

    나는 몇 가지 개념을 혼합하고 있다고 생각합니다. VNC 당신이하려고하는 것이 실제로 무엇인지, 그것이 부족한 것은 NAT Traversal입니다. 하지만 NAT Traversal은 (내가 아는 한) 모든 프로토콜에 대한 책임이 없습니다. 그럼에도 불구하고 VNC 연결이 켜지 기 전에 NAT Traversal을 만드는 것을 멈추게 할 것은 없습니다.

    XML을 통한 HTTP (S)를 통한 방화벽 우회는 엄청난 과잉입니다. 이 접근 방식의 주된 문제점은 TCP 연결이 비디오 전송과 같은 실시간 응용 프로그램에 적합하지 않으며 xml 데이터가 바이너리가 아니라는 것입니다. 이 방법을 사용하면 킬러 앱이 실행되지 않을 것입니다.

    왜 RIP/RTCP + UDP 홀 펀칭을 사용하지 않고 바퀴를 다시 발명해야합니까? 해당 주제에 대한 (읽을 수없는) 많은 설명서가 있습니다. 알다시피 Java 애플릿은 UDP 패킷을 보내고받을 수 있습니다. 구현할 필요가있는 것은 VNC가 이미 수행하고있는 RFB 프로토콜 인 비디오/오디오/이벤트 인코딩입니다.

    희망이 있습니다.