2013.07.16 03:29


원격 데스크톱의 속도와 구동 원리를 알고싶습니다

안녕하세요 원격제어에 대해서 궁금한 학생입니다.

일반적으로 원격제어는 타겟 피씨에서의 화면을 캡춰하여 사용중인 피씨에 전송해주는 방식으로 알고있는데요

모든 영역을 캡춰하여 그대로 전송하면 속도가 많이 느리고 버벅이기 때문에 보통 변화가 일어난 부분만 전송하거나

압축알고리듬을 사용하여 패킷의 크기를 줄이거나 미러드라이브로 드라이브단에서 영상을 바로 받아서 전송해주는 방식으로 속도를 높인다고

들었습니다.

그래도 일반인이 vc로 개발한 원격제어는 네이트온,윈도우 기본 원격제어에 비해서상당히 느린데

항상 이를 개선하는 방법이 저 방법들 이외에 무었이 있는지 궁금하였습니다.

좋은 성능의 네이트온 윈도우 기본 원격제어에서도 윈도우 기본 원격제어가 더 좋은 성능으로 보였는데요

그 원리를 알고자 몇가지 테스트를 해보앗는데 전체를 다 송신하지 않고 변화만 이루어진 부분을 전송한다는 것을 알게되었습니다.

그러던중 이상한 부분을 발견하였습니다. 타겟 피씨의 해상도는 1200대이고 호스트 피씨의 해상도는 1900대였는데 타겟피씨로 접속하니

제가 들어가는 피씨의 해상도로 자동으로 바뀌어져있는것을 발견햇습니다.그 모니터는 1900의 해상도를 지원 안하는데 말이죠; 거기에다

윈도우 등록정보의 내용도 바뀌어져있었습니다.

단순히 캡춰하는것이라면 이게 불가능할텐데요 빠른속도와 더불어 해상도가 바뀌는 (시작메뉴또한) 원리가 무엇인지 참 궁금합니다.



윈도우 RDP는

윈도우 RDP는 시작되면 타겟이 로그오프 될테니...
해상도를 강제로 변경해도 별 무리가 없을것 같네요. 해상도를 변경하는 API는 있습니다.
반면에 VNC는 로그오프되지 않고 같은 화면을 보게 되서 해상도를 변경하는 것이 불가능할 것 같네요.
그리고 VNC의 경우 변경된 화면을 블럭 사이즈로 쪼개서 보내는 반면에
RDP의 경우 화면의 정보를 보내기 위한 프로토콜이 따로 있습니다.
http://msdn.microsoft.com/en-us/library/cc240445(PROT.10).aspx
http://msdn.microsoft.com/en-us/library/cc241537(PROT.10).aspx
속도 문제는 RDP와 VNC는 비교가 어려울거 같고 VNC의 경우 말씀하신 것 처럼 
미러 드라이브를 쓰고 변경된 부분만 보내고 압축하고..그정도 외엔 없을 것 같아요.


....

모니터와 컴퓨터는 서로 분리된 기기입니다.
해상도가 꼭 모니터에 종속되어야한다는 생각은 접으세요 ^^;
구형 CRT 모니터 생각해보면 OS 에서는 얼마를 잡던간에 리프레시레이트등이 안맞으면 모니터에선 "OUT OF RANGE" 라고 해버릴뿐이죠.
이게 불편하니까 DDC(?) 라는걸로 모니터의 제원을 따와서 OS 최대해상도를 잡고 있는겁니다.

하여튼 해상도 바꾸는건 별일도 아니구요.
VNC 던 RDP 던간에 프로그램 만든사람 목적이 "화면을 그대로 가져오기" 이면 그냥 그 해상도를 유지할테고 "작업 환경을 가져오기 (그래봐야 화면이지만)" 이면 예...뭐 해상도를 바꿀수도 있겠죠.

신고

'Project > Remote' 카테고리의 다른 글

MyRemote Ver 1.41  (0) 2014.06.08
MyRemote_Install ver1.4  (0) 2014.05.13
RemoteOne  (0) 2013.07.27
Remote One 참고자료  (0) 2013.07.18
원격 데스크톱의 속도와 구동 원리에 대한 간단한 정보  (0) 2013.07.16
MyRemote_Install ver1.3  (0) 2013.02.22


Posted by injunech

티스토리 툴바