mfc tcp 통신 예제

연결 기반 서비스가 표준이지만 일부 서비스는 데이터그램 소켓사용을 기반으로 합니다. 특히 rwhod 서비스는 사용자에게 로컬 영역 네트워크에 연결된 호스트에 대한 상태 정보를 제공합니다. 특정 네트워크에 연결된 모든 호스트에게 정보를 브로드캐스트하는 기능에 기반을 두었지만 이 서비스는 데이터그램 소켓을 사용하는 방법의 예로 흥미를 불러올 수 있습니다. 예를 들어 텔넷에 대해 이야기해 보겠습니다. 포트 23의 원격 호스트에 텔넷(클라이언트)을 연결하면 해당 호스트의 프로그램(텔넷, 서버라고 함)이 생겨나게 됩니다. 그것은 들어오는 텔넷 연결을 처리, 로그인 프롬프트 등으로 우리를 설정합니다. 소켓 프로그래밍은 대부분의 프로그래밍 언어에서 매우 흥미로운 활동입니다. 네트워크를 통해 통신하는 서버와 클라이언트를 작성하는 것은 좋은 작업입니다. 윈도우 플랫폼에서 소켓 통신은 Microsoft Winsock 아키텍처를 기반으로 합니다.

Windows는 스트림 기반(TCP) 및 UDP(데이터그램 기반) 소켓 통신을 모두 지원합니다. Windows API는 소켓 프로그래밍에 사용할 수 있지만 많은 사람들이 이 API로 작업하기가 어렵습니다. 예를 들어 인터넷 제품군의 원시 소켓을 사용하여 IP 위의 새 프로토콜을 구현할 수 있습니다. 소켓은 지정된 프로토콜에 대해서만 패킷을 수신합니다. 특정 프로토콜을 얻으려면 getprotobyname() 함수를 사용하여 통신 도메인 내에서 정의된 프로토콜 번호를 결정합니다. 주요 응용 프로그램 스레드. 창 스레드에서 무언가를 실행해야 하는 경우 CMySocket 예제에서 볼 수 있듯이 PostMessage를 사용하여 메시지를 보내야 합니다. MFC 개체에는 이 필수가 됩니다. 스레드 간에 전달되는 경우 작동하지 않으며 정의된 동일한 스레드에서 이러한 개체를 사용해야 합니다. 예를 들어 원격 로그인 서버의 기본 루프는 다음과 같은 형태입니다. 통신 프로토콜이 대역 내 신호만 지원하는 경우(예: TCP)를 고려합니다.

긴급 데이터는 일반 데이터와 순서대로 전달되지만 긴급 데이터가 도착하면 일반 데이터 스트림에서 추출되어 별도로 저장됩니다. 이러한 방식으로 클라이언트 프로그램은 통신 프로토콜이 대역 내 또는 대역 외 시그널링을 지원하는지 여부에 관계없이 일반 데이터와 순서대로 또는 순서를 벗어나 긴급 데이터를 수신하도록 선택할 수 있습니다.