2012-02-10 2 views
0

저는 C++을 사용하는 전문 사용자를위한 데스크톱 애플리케이션을 작성하고 있습니다. 현재의 디자인은 API가 TCP/IP를 기반으로하는 타사 C++ 구성 요소에 의존합니다. 이 구성 요소를 통합하려면 네트워킹 코드를 기존 C++ API로 대체하기 위해이 구성 요소를 수정해야합니다.데스크톱 애플리케이션 루프백 연결 - 안정적이고 안전한가요?

구성 요소를 수정하지 않고 네트워크를 통해 예상대로 전달할 수 있다면 훨씬 쉽습니다. 그렇게하려면 루프백 연결을위한 높은 포트를 수신하는 서버로 구성 요소를 실행해야합니다.

이 루프백 접근 방식에는 두 가지 문제점이 있습니다. 누구나 내 두려움을 완화하거나 확인할 수 있습니까?

신뢰성 및 성능 루프백 연결이 바이러스 백신 소프트웨어에 의해 차단되거나 차단 될 수 있습니다. 이런 식으로 뭔가 : 나는 누군가가 내 루프백 패킷을 스니핑하지만 난 내 서버가 보안 위험 자체가 될 싶지 않아 대해 너무 걱정하지 오전 Loopback connections working in user's context but not working from Local System account

보안. 일부 높은 포트에서 수신 대기하는 것이 위험합니까?

많은 데스크톱 응용 프로그램이 이와 같이 작동합니까?

저는 처음에는 Windows에서 개발하고 있지만 나중에 Mac 및 Linux로 옮길 수도 있습니다. 따라서이 질문은 일반적인 데스크탑 OS 모두에 적용됩니다.

+0

이 타사 구성 요소의 본질 무엇인가 (등, 마스터 서비스 제어를 위해 그것을 사용, 자바는 상호을 위해 그것을 사용하는 이름) 사용됩니까? 그것이 무엇인지에 따라, TCP/IP를 포함하지 않는 일종의 "로컬"버전이 없다면 놀랄 것입니다. 네트워크에 연결되어 있지 않은 버전이 있는지 공급 업체에 문의하십시오. –

+0

제가 설명 할 수있는 가장 좋은 방법은 "웹 서버와 비슷합니다"입니다. – paperjam

답변

1

신뢰성 : 구성 요소 자체가 안정적이면 루프백 인터페이스 수신에 문제가 없습니다. 구성 요소가 안정적이지 않은 경우 함수를 직접 호출하는 대신 루프백 인터페이스를 통해 해당 구성 요소와 대화하는 것이 좋습니다. 연결 해제를 쉽게 처리하고 작업을 계속하기 위해 구성 요소를 다시 시작할 수 있지만 구성 요소에 링크하면 구성 요소가 실패하고 응용 프로그램도 실패합니다.

성능 : 약간의 성능 저하가 있습니다. 현재의 CPU 성능은 그리 크지 않습니다. 대부분의 응용 프로그램에서 허용되어야합니다.

보안 : 보안 문제를 피하려면 구성 요소가 로컬 호스트 주소에 바인딩되어야합니다. 그러나 충분한 액세스 수준을 갖춘 로컬 3 차원 파티 소프트웨어 (바이러스) 소프트웨어는 통신 스트림을 가로 채거나 수정할 수 있습니다. 다른 통신 방법과 동일합니다.

루프백 연결 Widly는

관련 문제