2009-08-14 2 views
2

:VB.Net - 내 첫 번째 질문은 그렇게 나를 쉽게 갈

을 클라이언트/서버 게임 네트워킹 방법 나는 웹 서비스를 사용하여 년 동안 개발 봤는데 너무 많은 응용 프로그램 (대부분의 웹 앱) 작성했습니다 - SOAP/WSDL/etc에 만족합니다. 이전의 좋은 winsock을 사용하여 TCP/IP 클라이언트 서버 응용 프로그램을 다시 작성했습니다.

나는 약간 지루 내 능력을 확장하기 위해 새로운 프로젝트를 찾고 그래서 게임이나 내가 결정하지 않은

서버 모니터링 및 원격 제어 응용 프로그램의 일종 중 하나를 수행에서 이동을하기로 결정 해요 이 질문에 대한 대답은 내 결정을 알리는 데 도움이 될 것입니다.

내가 원하는 것은 통신을 처리하기 위해 어떤 방법을 사용해야하는지에 대한 조언입니다.

나는 잠시 동안 게임을하고 있다고 가정 해 봅시다. 낮은 대기 시간과 가능한 많은 동시 연결을 처리 할 수있는 양방향 통신이 필요합니다.

웹 서비스를 고려해 보았지만 오버 헤드가 많은 것처럼 보입니다. 특히 클라이언트를 노출해야 할 필요가 있습니다.

TCP/IP는 다소 저급 인 것처럼 보이지만 정의와 같은 많은 장점이 있습니다. 아마도 나는 통신 등을위한 새로운 프로토콜을 공식화 할 필요가있을 것입니다 ... 또한 한 클라이언트가 동시 정보 (예 : 채팅 및 위치 정보 업데이트)를 위해 다중 채널을 사용하게하는 방법을 확신하지 못합니다. 어떤 방식 으로든 이것을 다중화하려고 시도 할 수는 있지만 초기 아이디어는 다음과 같습니다. 대기열 작업은 꽤 복잡해 보입니다.

.Net 원격 - 저는이 부분을 전혀 다루지 않았습니다. 오버 헤드가 적고 웹 서비스보다 유연성이 좋아 보이지만 적절하게 평가할만큼 충분한 지식이 없습니다.

난 정말 당신의 도움이 사전에 (환상적 일 것입니다 및 튜토리얼에 대한 링크)

편집을

감사를 당신이 제공 할 수있는 모든 입력을 감사하겠습니다

: 나는 나를 가리키는 대답을 했어 UDP 라이브러리에서. UDP가 이에 적합합니까? 방문 기록이 필요없는 위치 정보/유사 콘텐츠의 경우 유익한 방법을 알 수 있지만 채팅의 경우 손실 된 패킷이 문제가 될 수 있습니까? 아니면 수동으로 수신 확인을 다시 보내야합니까? 그렇다면 제한적 이점을 위해 TCP/IP 기능을 복제하지 않습니까?

사과이 질문에 확장하는 잘못된 방법 인 경우 - 그 평가도 :

답변

1

, 당신은 WCF를 사용합니다. 당신은 웹 서비스를 사용하지 않는 말을하고 당신을 의미하는 것을에서 나는 가정 HTTP를 통한 SOAP 사용을 원하지 않는 경우 WCF는 HTTP를 통한 SOAP보다 훨씬 많은 작업을 수행하며 특히 동일한 인프라를 사용하여 TCP/IP를 통한 바이너리 작업을 수행 할 수 있으며 피어 - 투 - 피어를 지원합니다.

+0

감사합니다. WCF를 다루었지만 SOAP 웹 서비스로만 활동했습니다. P2P 측면을 살펴 보겠습니다. 이것은 내가 뭘 찾고 있는지 - 감사합니다. – Basic

+0

WCF SOAP 서비스를 빌드하는 방법의 대부분이 바이너리 및 TCP/IP를 사용하여 서비스에 액세스하는 데 정확히 사용한다는 것을 기억하십시오. 사실, 단일 서비스는 SOAP 및 TCP/IP와 기타 여러 전송을 처리 할 수 ​​있으며 대부분 통지하지 않습니다. –

+0

감사합니다. 이것은 확실히 유망 해 보입니다. 유연성이 좋습니다. – Basic

1

에 대한 지침은 Lidgren 같은에서 봐, 그리고 어떻게 그 일의를 참조하십시오. VB.Net에서 사용할 수 있도록 작성된 C# #

Lidgren은 소켓 래퍼이므로 필자는 몇 가지 소규모 멀티 플레이어 게임에서 주로 사용합니다. (주로 첫 번째 바이트는 패킷을 나타냅니다. 당신이 .NET 3.5 SP1에 최신 경우 유형,

Lidgren

+0

빠른 응답을 주셔서 감사합니다. - 지금보고 있습니다.나는 또한 그것을 편집하여 (UDP에 관한 질문을 포함하여) 할 나의 질문을 확장하고 싶다. 나는 이것이 올바른 방법이되기를 바란다 ... – Basic

+0

그래, 내가 아는 한도 없기에 전문가 중 하나 : P – Fusspawn

+0

둘 다 당신이 http://stackoverflow.com/faq로 시작하여 _ 전문가가 될 수있다. –

관련 문제