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

thethe의 이미지

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

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

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

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

들었습니다.

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

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

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

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

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

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

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

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

nthroot의 이미지

윈도우 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의 경우 말씀하신 것 처럼
미러 드라이브를 쓰고 변경된 부분만 보내고 압축하고..그정도 외엔 없을 것 같아요.

------식은이 처------
길이 끝나는 저기엔 아무 것도 없어요. 희망이고 나발이고 아무 것도 없어.

hiseob의 이미지

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

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

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo]. PHP 소스 코드는 다음과 같이 사용할 수 있습니다: <?php ... ?> 또는 <% ... %>.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo]. PHP 소스 코드는 다음과 같이 사용할 수 있습니다: <?php ... ?> 또는 <% ... %>.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo]. PHP 소스 코드는 다음과 같이 사용할 수 있습니다: <?php ... ?> 또는 <% ... %>.
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo]. PHP 소스 코드는 다음과 같이 사용할 수 있습니다: <?php ... ?> 또는 <% ... %>.
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.