tcp ip 통신 예제
소켓은 서버 역할을 하고 들어오는 메시지를 수신하거나 클라이언트로 다른 응용 프로그램에 연결하도록 구성할 수 있습니다. TCP/IP 소켓의 양쪽 끝이 연결되면 통신은 양방향입니다. 클라이언트가 서버와 통신할 수 있도록 서버를 올바른 주소에 바인딩하는 것이 중요합니다. 이전 예제에서는 모두 `localhost`를 IP 주소로 사용했으며, 이 주소는 동일한 서버에서 실행되는 클라이언트에 대한 연결을 제한합니다. gethostname()에서 반환된 값과 같은 서버의 공용 주소를 사용하여 다른 호스트가 연결할 수 있도록 합니다. 이 예제는 명령줄 인수를 통해 지정된 주소에서 수신하도록 에코 서버를 수정합니다. 아래 섹션에서는 네트워크를 통해 메시지를 보내는 방법을 설명합니다. 단순화를 위해 처음에는 TCP 연결을 설정하고 닫을 필요가 없습니다. 기본 개념을 이해하면 예제를 완료하기 위해 이 개념을 추가합니다.
TCP/IP는 대상에서 패킷, 주소 지정, 전송, 라우팅 및 수신하는 방법을 식별하는 종단 간 통신을 제공하여 인터넷을 통해 데이터를 교환하는 방법을 지정합니다. TCP/IP는 중앙 관리가 거의 필요하지 않으며 네트워크의 모든 장치의 오류로부터 자동으로 복구할 수 있는 기능을 통해 네트워크를 안정적으로 만들도록 설계되었습니다. TCP/IP 연결은 누군가가 전화를 걸어 연결을 시작해야 하는 전화 통화와 유사한 방식으로 작동합니다. 연결의 다른 쪽 끝에서 누군가가 전화를 듣고 전화가 올 때 전화를 받아야합니다. TCP/IP 통신에서 IP 주소는 전화 번호와 유사하며 통화에 응답한 후 포트 번호는 특정 확장과 유사합니다. TCP/IP 연결의 “클라이언트”는 “전화 걸기”와 “서버”가 들어올 통화에 대해 “수신 대기”하는 컴퓨터 또는 장치입니다. 즉, 클라이언트는 연결하려는 서버의 IP 주소를 알아야 하며 연결이 설정된 후 데이터를 보내고 받을 포트 번호도 알아야 합니다. 서버는 연결을 수신 대기하고 클라이언트에서 시작할 때 연결을 수락하거나 거부하기만 하면 됩니다. 라우터는 로컬 네트워크 MAC에서 WAN(광역 네트워크) 또는 인터넷 MAC으로 소스 MAC을 변경해야 합니다. 대상 MAC 주소도 라우터의 기본 게이트웨이로 변경해야 하며, 이 예에서는 ISP의 라우터입니다. 로컬 라우터는 ARP 테이블을 참조하여 ISP(인터넷 서비스 공급자) 라우터의 MAC 주소를 가져옵니다.
TCP/IP 또는 전송 제어 프로토콜/인터넷 프로토콜은 인터넷에서 네트워크 장치를 상호 연결하는 데 사용되는 통신 프로토콜 모음입니다. TCP/IP는 개인 네트워크(인트라넷 또는 엑스트라넷)의 통신 프로토콜로도 사용할 수 있습니다. TCP/IP는 네트워크내의 다른 컴퓨터(서버)가 사용자 또는 컴퓨터(클라이언트)가 서비스를 제공하는 통신의 클라이언트/서버 모델을 사용합니다. TCP/IP 통신(및 TCP/IP 장치에서 데이터 수집)은 처음에는 어려워 보일 수 있지만 실제로는 매우 간단한 통신 도구입니다. 위의 설명은 매우 기본이며 TCP/IP 통신이 가장 간단한 개념 수준에서 작동하는 방식에 대한 일반적인 개념을 설명하기 위한 것입니다.