ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Java | Network (2) ServerSoket & Socket
    JAVA/JAVA 2020. 2. 11. 17:42

    ServerSocket & Socket Class

    java.net.[Server]Socket
    자바에서 서버-클라이언트 프로그램 작성을 위해 제공하는 클래스


    ServerSocket

    서버 측에서 실행되는 애플리케이션을 작성하기 위해 사용하는 클래스


    ServerSocket 생성자

    생성자 설명
    ServerSocket(int port) 클라이언트 요청을 받아들일 포트(port)번호를 가지고 ServerSocket 객체 생성
    포트 번호는 1024~49151 사이에서 몇 가지 번호를 제외하고 사용 가능

    ServerSocket Method

    메소드 설명
    Socket accept() 클라이언트 요청을 받아서 Socket 객체 생성 후 반환
    InetAddress getInetAddress() 현재 서버 소켓의 지역 주소 정보를 InetAddress 객체로 반환
    void close() 서버 소켓을 닫음

    Socket

    서버로 접속할 클라이언트 프로그램에서 사용하는 클래스


    Socket 생성자

    생성자 설명
    Socket(String host, int port) 연결할 host(접속할 서버 IP 주소)와 port(접속 포트 번호)로 소켓 생성
    Socket(InetAddress addr, int port) 접속할 서버의 InetAddress 객체와 port 번호로 소켓 생성

    Socket Method

    메소드 설명
    InputStream getInputStream() 현재 소켓과 관련된 InputStream 객체 반환
    OutputStream getOutputStream() 현재 소켓과 관련된 OutputStream 객체 반환
    void close() 소켓 닫기
    InetAddress getInetAddress() 소켓에 연결된 원격 컴퓨터의 InetAddress 객체 반환
    InetAddress getLocalAddress() 소켓에 연결된 지역 컴퓨터의 InetAddress 객체 반환
    int getPort() 소켓에 연결된 컴퓨터의 포트 번호 반환
    int getLocalPort() 소켓에 연결된 지역 컴퓨터의 포트 번호 반환

    TCP 소켓 / UDP 비교

    TCP UDP
    상호 연결된 상태에서 통신하는 방법이기 때문에
    높은 신뢰성이 요구되는 어플리케이션에 적합
    User Datagram Protocol의 약자로
    TCP 소켓에 비해 신뢰성과 안정성 측면에서 뒤떨어짐
    네트워크에 부담을 주기 때문에 신뢰성이 충족되지 않거나
    많은 양의 데이터를 전송하는 경우 부적합
    연결을 설정하지 않으므로 네트워크에 부담을 주지 않음

    서버 소켓 및 소켓 클래스에 대해 간단히 살펴보았습니다.

    서버 소켓 클래스는 서버에서 소켓의 접속만을 관리하며
    소켓 클래스가 서버와 클라이언트간 직접적인 통신을 담당한다고 할 수 있습니다.

    예제로는 채팅 프로그램 만들기를 하게 되었는데
    지금까지 배웠던 모든 내용이 나오기 때문에 정리 차원에서 따로 한 번에 올리도록 하겠습니다.

    'JAVA > JAVA' 카테고리의 다른 글

    Java | Properties Class  (0) 2020.02.12
    Java | Socket & Thread 채팅 프로그램 만들기  (1) 2020.02.12
    Java | Network (1) InetAddress & URL  (0) 2020.02.11
    Java | Singleton Pattern 싱글톤 패턴  (0) 2020.02.11
    Java | I/O RandomAccessFile  (0) 2020.02.11

    댓글

Designed by Tistory.