c# tcp/ip 소켓 프로그래밍 예제

이 목록은 TcpClient에 연결된 소켓의 인스턴스에 연결된 NetworkStream의 WriteAsync 방법을 사용하여 연결된 모든 클라이언트에 데이터를 보내는 데 사용되었습니다. 소켓에 주소가 있어야 합니다. 그것은 유형 IpEndPoint입니다. 각 소켓은 IP 주소를 통해 식별되며, 호스트의 컴퓨터를 찾는 데 유용하며 컴퓨터 내부의 소켓을 사용하는 프로그램을 식별하는 포트 번호도 있습니다. 소켓은 네트워크를 사용하여 데이터를 전송하므로 프로토콜을 사용합니다. 이 컨텍스트에서 가장 잘 알려진 것은 빠르지만 신뢰할 수 없는 UDP와 신뢰할 수 있지만 빠르지는 않은 TCP입니다. 메시지를 보낼 때 안정성을 권장합니다. 이것이 바로 TCP를 사용하는 이유입니다. 클라이언트의 소켓을 만들기 전에 사용자는 연결하려는 `IP 주소`를 결정해야 합니다.

동시에 소켓 자체에 속하는 `패밀리` 메서드도 필요합니다. 그런 다음 `연결` 방법을 통해 소켓을 서버에 연결합니다. 메시지를 보내기 전에 바이트 배열로 변환해야 합니다. 그런 다음에야 `보내기` 방법을 통해 서버로 보낼 수 있습니다. 나중에 `수신` 메서드 덕분에 서버에서 대답으로 바이트 배열을 얻을 수 있습니다. C 언어와 마찬가지로 `보내기` 및 `수신` 메서드는 여전히 보내거나 받은 바이트 수를 반환합니다. C # .Net에서 소켓 프로그래밍에 대한 학습을 강화하는 짧은 퀴즈. 이렇게 하면 소켓에서 어떤 IP 주소와 포트가 작동에 사용할지 알 수 있습니다. 다음 비디오에서 코드를 실행하고 소켓 코드가 작동하는지 보여 줍니다.

소켓 프로그래밍은 네트워크에서 두 노드를 연결하여 서로 통신하는 방법입니다. 기본적으로 클라이언트가 연결하고 서버에 메시지를 보내고 서버가 소켓 연결을 사용하여 표시하는 단방향 클라이언트 및 서버 설정입니다. 한 소켓(노드)은 IP에서 특정 포트에서 수신을 수신하는 반면 다른 소켓은 다른 소켓에 연결하여 연결됩니다. 클라이언트가 서버에 도달하는 동안 서버는 수신기 소켓을 형성합니다. 서버 및 클라이언트 코드를 자세히 보기 전에 TCP/IP 모델을 자세히 살펴보고하는 것이 좋습니다. 이것은, 우리는 좋은 모양에있어. 다음 비디오에서 소켓 네트워크 스트림에서 데이터를 읽기 위한 논리를 추가합니다. 또한 콘솔 응용 프로그램에 새로 추가 된 이러한 호출 하 고 나중에 데모를 가지고 있습니다. 다음 비디오에서 뵙겠습니다! 코드에 네트워크 및 소켓 기능을 제공하는 네임스페이스를 추가합니다. 이러한 .Net 네임스페이스는 이 섹션의 목적은 서버에서 소켓이 작동하는 방식을 숙지하는 것입니다. 서버 소켓 프로그램은 C# 콘솔 기반 응용 프로그램을 통해 수행됩니다. 여기서 서버는 클라이언트의 요청을 수신 대기 하고 C# 서버가 클라이언트 소켓에서 요청을 받으면 서버는 클라이언트에 대한 응답을 보냅니다.