본문 바로가기
JAVA

Java 소켓(Socket) 프로그래밍과 연결 방식

by 코딩이라구 2022. 12. 20.

이번에는 자바(Java)에서 소켓(Socket)을 통한 프로그래밍과 어떻게 소켓 통신으로 연결하는지에 알아보도록 하겠습니다. 소켓은 서버와 클라이언트 네트워크를 사용하는 통신 프로그래밍입니다.


Java 소켓(Socket) 프로그래밍(Programming)

 

1. 소켓(Socket) 프로그래밍

 

자바 언어는 대부분 네트워크 지원 기능을 소켓 프로그래밍의 방식으로 제공하고 있기 때문에 네트워크 프로그래밍을 위해서는 먼저 소켓 프로그래밍에 대한 이해가 있어야 합니다.

 

소켓은 서버(Server)와 클라이언트(Client)의 실제 네트워크 연결과 관련된 것들에 대해서는 신경쓰지 않고, 마치 각각의 소켓만 가지고 있다면 서로 언제든지 쉽고 간편하게 연결할 수 있도록 해 놓은 것입니다. 그러므로 프로그래머는 소켓이 생선된 서버의 주소(IP)와 포트번호(PORT)만 알고 있다면 쉽게 서버에 접속할 수 있습니다.

 

즉, 소켓은 서버와 클라이언트 네트워크를 연결하는 역할을 하는 통신 프로그래밍입니다.


2. 소켓(Socket) 연결 방식

 

  1. 서버(Server) 측에서 서버 소켓을 생성하고, accept() 메서드를 호출함으로써 클라이언트(Client)의 접속을 대기합니다.
  2. 클라이언트에서 소켓을 생성하여 서버에 연결 요청을 하고 수락하면, 서버와 통신이 가능합니다.
    (서버와의 연결을 위하여 서버의 주소(IP)와 포트번호(PORT)를 알아야 합니다.)
  3. 클라이언트 서버는 생성된 소켓을 통하여 서로에게 데이터를 읽고, 내보내기 위한 입/출력 스트림을 생성한 후 서로 간에 데이터를 송수신합니다.
  4. 통신을 종료하기 위해서 클라이언트와 서버 측에서 각각 socket_close()를 호출하여 통신을 종료합니다.

 

이상으로 자바(Java)에서 소켓(Socket) 프로그래밍에 대한 설명과 연결 방식에 대하여 알아보았습니다.

 

댓글