2010-05-07 6 views
0

... 클라이언트 측 NAT (NAT 뒤에있는 클라이언트) 용 NAT를 지원하는 방식으로 .NET 4.0에서 현재 어떤 옵션이 존재합니다.WCF, 4.0, Bidirectional

나는 HTTP 기반의 것을 사용하고 싶다.하지만 그것은 약한 조건이다 - 나는 중기에 어쨌든 WCF 외부에서 비 http 통신을 할 것이므로 프록시 트래버 설은 내가 지연 할 수있는 것이라고 생각한다.

Pre .NET 4.0 기본적으로 서버 -> 클라이언트 채널이 NAT에서 불가능한 NAT를 만들었던 서버에서 열리는 문제가있었습니다.

폴링이 허용되지 않습니다. 여기서 우리는 시간에 민감한 정보를 말합니다.

이제 내 옵션은 무엇입니까?

답변

1

당신은 클라이언트에서 연결을 열고 열어를 유지할 수 있습니다. 또는 NAT 포트를 클라이언트에 전달하므로 NAT에 연결 : 34823은 192.168.xxx.xxx:80으로 이동합니다. 또는 Microsoft에서 서비스 버스를 사용하려면 약간의 돈을 지불해야합니다. 서비스 버스는 정확하게 완료되지 않았고 불확실한 미래가 있습니다. 아니면 클라이언트와 서버 모두에 Skype를 설치하고 API를 통해 메시지를 보내십시오.

0

.net 4.0에만 국한되지 않지만 Windows Azure Service Bus를 사용할 수 있습니다. 어느 사용 가능한 해결 방법에 내기 과 ( 비트 토런트가하는대로) 결과와 함께 살고하거나 구축하고 가 어떤 형태 운항합니다 : 응용 프로그램이 양방향 연결을 필요로하는 경우

효과적으로 두 가지 선택이 응용 프로그램 에 대한 릴레이 서비스 중계 서비스 은 방화벽 및/또는 NAT 클라이언트와라우터 간의 메시지 연결을 수락하고 유지 관리합니다. 실질적으로 모든 채팅, 인스턴트 메시징, 화상 회의, VoIP, 및 멀티 플레이어 게임 응용 프로그램 및 기타 많은 대중적인 인터넷 응용 프로그램은 릴레이 서비스의 일부 형식에 따라 달라집니다.

릴레이 서비스와 도전은 그들이 큰 인스턴트 메시징 네트워크로 수천 또는 연결도 수백만 사이 라우팅 할 필요가 인터넷 스케일을 제공 할 수있는 방식으로 을 구축 할 매우 어려운 것을 입니다 해야 할 것. 그리고 일단 규모가 큰 을 지원할 수있는 계전기가 있으면 매우 비싸고 작동하려면 입니다. 실제로 필요한 투자와 의 운영 비용이 많은 소프트웨어 회사의 광대 한 에 대한 도달 범위가 전체적으로 입니다. 연결 문제는 혁신 차단 장치이며 중요한 진입 장벽을 나타냅니다.

좋은 소식은 마이크로 소프트 .NET 서비스 버스가 전달 통신을 포함 양방향, 피어 - 투 - 피어 연결 옵션의 범위를 제공하는 것입니다. 너 자신을 만들거나 자신을 실행할 필요가 없습니다. 대신이 빌딩 블록 을 사용할 수 있습니다. .NET 서비스 버스는 네이밍, 레지스트리, 연결 및 이벤트와 같은 네 가지 논리적 주소 범위 을 다룹니다.

http://vasters.com/clemensv/PermaLink,guid,92d78bee-2cfd-4a29-95ab-c5abb9b905e7.aspx