더 효율적인 X 전달?

더 효율적인 X 전달?

-X(또는 ) 플래그를 사용하여 SSH를 통해 GUI 원격 프로그램을 엽니다. -Y예를 들어,

$ ssh -Y [email protected]

최근에 웹 검색만으로 이 작업을 수행할 수 있는 더 효율적인 방법이 있다는 것을 발견했습니다.

$ ssh -DNNNN [email protected]

NNNN4자리 포트 번호는 어디에 있습니까? 그런 다음 포트 NNNN의 프록시를 통해 연결하도록 로컬 브라우저를 구성했습니다. 이는 모든 GUI 정보를 터널링할 필요가 없고 요청한 웹 데이터만 터널링할 필요가 있기 때문에 첫 번째 SSH 방법보다 훨씬 더 효율적입니다.

내 질문은 다음과 같습니다일반적으로 SSH 및 X-전달에 더 효율적인 방법이 있습니까?? 어쩌면 로컬 라이브러리나 렌더링을 활용하는 솔루션이나 원격 호스팅 GUI 프로그램을 작동하는 데 도움이 되는 솔루션이 있을까요?

답변1

용어가 헷갈리네요. 첫 번째는 X11 전달로 정의상 비효율적이며 이에 대해 수행할 수 있는 작업이 거의 없습니다(수십 년 전에는 대기 시간이 긴 연결용으로 설계되지 않았습니다). 새로운 네트워크를 통해 전체 GUI(브라우저?)를 전송하기 때문에 다른 방법에 비해 비효율적입니다.

다른 하나는 관심 있는 네트워크 데이터(SOCKS 프로토콜 및 SSH에 캡슐화됨)만 전송하는 SOCKS 프록시(완전히 다른 것)로, 이는 분명히 더 효율적입니다.

귀하의 질문은 대답할 수 없는 방식으로 요청되었습니다. 무엇을 달성하고 싶나요? GUI 프로그램을 실행하시겠습니까? 프록시 네트워크 연결? 뭔가 완전히 다른데요?

답변2

상대적으로 빠른 네트워크에서도 X 전달이 느린 경우가 많습니다. 이는 대역폭과 대기 시간의 영향을 받습니다. 많은 애플리케이션이 종종 서버의 응답을 기다리므로 상당한 지연이 발생할 수 있습니다.

압축을 통해 대역폭을 늘릴 수 있습니다. SSH는 압축을 위해 이 옵션을 사용할 수 있습니다 -C. 당신은 또한 사용할 수 있습니다DXPC, X 프로토콜을 이해하므로 범용 압축보다 더 나은 성능을 발휘할 수 있는 특수 목적 압축기입니다. 그러나 제한 요소가 대기 시간인 경우에는 도움이 되지 않습니다. 일반적으로 dxpc는 느린 링크의 경량 애플리케이션에 큰 영향을 미치지만 빠른 링크의 중량 애플리케이션에는 큰 개선을 제공하지 않습니다.

NXdxpc의 고급 대체품입니다. dxpc와 달리 일부 데이터를 압축할 뿐만 아니라 캐시하므로 대기 시간이 줄어듭니다.

큰 차이를 만들 수 있는 한 가지는 클라이언트 측 렌더링(fontconfig) 대신 서버 렌더링 글꼴(클래식 X11 텍스트 렌더링)을 사용하는 것입니다. 원격 링크보다 훨씬 빠릅니다. 그러나 서버 렌더링 글꼴에는 단점이 있습니다. 더 보기 흉하고(앤티앨리어싱 없음) 응용 프로그램이 아닌 서버에서 관리됩니다(그 자체로는 단점은 아니지만 많은 응용 프로그램이 글꼴을 완전히 제어하기를 원함). 응용 프로그램은 더 이상 지원하지 않습니다.

답변3

Xpra를 사용해 보세요. 최고의 X11 포워딩 애플리케이션이며 더욱 안전합니다. x264까지 다양한 코덱과 압축 형식을 지원합니다. 업무상 부득이하게 Skype를 실행해야 하고 내 컴퓨터에서 오픈 소스 코드만 사용하고 싶을 때 원격 측에서 Skype를 실행하는 데 사용합니다. 애플리케이션은 지속적으로 실행되므로 연결이 끊어지면 GNU 화면과 마찬가지로 다시 연결할 수 있습니다.

또한 활발하게 개발 중인 오픈 소스 NX 구현 X2GO에 대해서도 주목해 보세요.

관련 정보