2009-12-13 4 views
10

WCF 응용 프로그램이 TCP 대신 UDP를 통해 통신하도록하려면 어떤 바인딩을 사용해야합니까?WCF와 UDP 프로토콜 사용

WCF와 UDP를 사용할 수 있도록 누군가가 올바른 방향으로 나를 가리킬 수 있습니까?

감사합니다.

답변

11

이것은 rather long winded이지만 시작하는 데 도움이 될 정도로 포괄적입니다. 이 기사의 대부분은 자신의 UDP 전송을 작성하는 방법을 다루며, 맨 아래에 WCF 서비스와 연결합니다.


편집 2016 년 월 (5 년 이상) : 링크가 동일한 아카이브 (confirmed via Archive.org's Wayback Machine mirror copy of the URL)의 거울에 업데이트되었습니다. 빠른 검색을 통해 새로운 .NET WCF에서 UDP를 수행하는 데 사용할 수있는 더 많은 잠재적 인 기본 지원 및 옵션이 있음을 알 수 있습니다. 더 이상 .NET 기술에서 작업하지 않습니다. 다른 사람들은 구식이거나 구식이 될 원래 응답을 찾고 더 새로운 방법을 연구하고자합니다.

+0

링크가 더 이상 작동하지 않습니다. – Jan

+1

@Jan 같은 기사의 미러에 대한 대안 링크가 업데이트되었습니다. –

+0

Very thanks - thanks! – Jan

1

나는 이것을 수행하기 위해 사용자 지정 전송을 작성해야한다고 생각합니다. 멀티 캐스팅을 제외하고 내가 아는 기본 UDP 지원은 없습니다. UDP는 UDP가 부족한 메시지 전달 방법에 대해 TCP가 확실한 보장을 제공하기 때문에 가능할 수 있습니다.

-2

여기에 microsoft's take on the problem;

나는 개인적으로 염려하는 바에 따르면, http 바인딩은 꽤 쓸모가 없으며 아무도 기본 예제 바인딩이 아니면 아무도 사용하지 않을 것입니다. 이론적으로 다른 플랫폼과의 상호 운용성을 위해 사용될 수 있습니다. 실제로 그것은 효과가 없습니다. 또한 콜백 기능을 구현하려는 경우 wsDualHttpBinding은 큰 시간을 허비하며 나중에 두통을 일으킬 수 있습니다.

UDP 바인딩은 매우 전문화되어 있으므로 앱에 통합하려면 몇 가지 추가 작업을해야합니다.

이것은 대부분의 용도로 권장되는 바인딩 인 TCP를 남겨 둡니다.

+0

OP의 질문에 실제로 대답하지 않기 때문에 Downvoted. 누군가가 UDP를 필요로한다면 TCP (및 HTTP)의 프로세스 흐름과 오버 헤드가 특정 시나리오에서 작동하지 않기 때문입니다. – Didaxis