RDP가 다른 원격 제어 소프트웨어와 비교하여 왜 그렇게 빠른가?

StackOverflow https://stackoverflow.com/questions/1284055

  •  18-09-2019
  •  | 
  •  

문제

RDP 기반 Windows의 원격 클라이언트 데스크탑 유틸리티를 사용하여 랩톱에서 데스크탑에 연결합니다. TeamViewer 등과 같은 원격 제어 응용 프로그램보다 훨씬 빠르고 더 좋아 보입니다.

호기심으로 인해 RDP가 더 나은 이유는 무엇입니까?

고맙습니다.

도움이 되었습니까?

해결책

RDP는 저수준 화면 드로잉 작업을 전송할 수있는 특정 프로토콜입니다. 화면의 PixMap 엔티티도 알고 있습니다. 예를 들어, 아이콘이 그려 질 때를 이해하고 클라이언트 측에서 (일반적으로 손실 압축 형식으로) 캐시합니다.

다른 소프트웨어에는이 낮은 수준의 액세스가 없습니다. 화면이 변경 될 때까지 기다린 다음 화면 또는 변경된 영역의 캡처를 다시 전송합니다. 화면이 변경 될 때마다 PIXMAP 표현을 전송해야합니다. 이것은 일반적으로 압축되기 때문에 더 나빠 보입니다.

다른 팁

원격 제어 제품의 성능을 결정하는 두 가지 주요 요인이 있습니다.

화면에서 변경이 발생할 때 어떻게 감지합니까?

일부 RC 제품은 화면을 타일로 나누고 스크린 프레임 버퍼를 주기적으로 스캔하여 변경 사항이 발생했는지 확인합니다.

다른 사람들은 OS에 직접 연결됩니다. 과거에는 비디오 드라이버를 가로 채서 이루어졌습니다. 이제 OS가 모든 드로잉 작업을 "미러"하는 미러 드라이버를 만들 수 있습니다. 이것은 분명히 훨씬 빠릅니다.

이러한 변경 사항을 전선에서 어떻게 보내나요?

일부 제품 (VNC와 같은)은 항상 변경된 모든 영역의 비트 맵을 보냅니다.

다른 사람들은 변경을 일으킨 실제 작업을 보낼 것입니다. 예를 들어, 좌표 (x, y)에서 font f를 사용하여 텍스트 문자열을 렌더링하거나 주어진 매개 변수 세트를 사용하여 Bezier 곡선을 그립니다. 물론 비트 맵 렌더링. 이것은 다시 훨씬 빠릅니다.

RDP는 두 경우 모두 더 빠르고 구현하기가 어렵습니다. 나는 그것이 사용하는 실제 프로토콜이 T.128이라고 생각합니다.

비트 맵은 일반적으로 압축됩니다. 카본 카피와 같은 일부 제품은 또한 더 많은 성능을 짜기 위해 연결 양쪽에 동기화 된 비트 맵 캐시를 유지합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top