자바
자바(JAVA) 채팅 프로그램(1) (웹 소켓 TCP/IP)
태태딩
2019. 6. 27. 10:43
반응형
이번엔 자바로 웹소켓을 사용하여 채팅 프로그램을 만드는 것을 해보았다.
설명하기에 앞서 실행결과를 보여주면 (자바 스윙으로 짰다.)
밑에 커서를 두고 채팅을 치면 실시간으로 채팅이 반영되는 것을 볼 수 있다.
업로드 버튼으로 파일을 불러오고 목록을 보면 업로드한 파일의 목록을 볼 수 있다. 그 후 다운로드로 자신의 PC에 파일을 다운할 수 있다.
이 프로그램은 TCP/IP 웹소켓 을 기반으로 하여 만들었다.
먼저 TCP/IP에 대해서 알아보자.
TCP/IP의 개념(Transmission Control Protocol / Internet Protocol)의 개요
가. TCP/IP 정의
- TCP/IP는 네트워크를 상호 연결시켜 정보를 전송할 수 있도록 하는 기능을 가진 다수의 프로토콜이 모여 있는 프로토콜의 집합
- TC/IP의 가장 대표적인 프로토콜은 3 계층의 IP와 4 계층의 TC로 대부분의 응용서비스가 TCP상에서 이루어지나, 최근 인터넷의 단점을 보완하기 위해 UDP를 적극적으로 이용하는 추세임
나. TCP/IP 특징
- 독립적: Hardware, Operaing System, 물리적 Network에 무관한 전송 규약
- 전 세계의 유일한 주소체계 확립
다. TCP/IP의 표준화 이점
- 네트워크의 변화와 서비스 유형에 따라 다양한 프로토콜을 동시에 허용
- 표준규격이 실증에 기초하고 있음
- 표준규격과 표준화의 과정이 RFC(Request for Comments;인터넷 표준화기구[IETF]에서 전 세계적으로 인터넷의 표준으로 정의된 문서) 형태로 개방되어 있음
TCP/IP 통신 기능
가. Listen()
- 클라이언트 요청이 올 때까지 대기하는 Passive Socket
나. Accept()
- 클라이언트의 요청을 수락하여 Active Socket mapping
다. Connect()
- 클라이언트에서 생성된 Active Socket과 서버 측의 Passive Socket을 서로 연결
웹소켓에 대해 알아보았다.
코드에 대한 것은 다음 글에서 알아보자
반응형