본문 바로가기
TIL

220407

by 김비누! 2022. 4. 7.

📙 TCP / UDP 개념

TCP / UDP는 OSI 7계층 중 전송계층에서 사용하는 프로토콜이다.

TCP

TCP는 Transmission Control Protocol로 연결형 서비스를 지원하는 가상회선 프로토콜이다. 신뢰성 있는 데이터를 전송하며, 흐름제어가 가능하다.
3-way handshaking을 통해 연결을 초기화하고 4-way handshaking으로 세션을 종료한다.

파일 전송과 같은 신뢰성이 중요한 서비스에 TCP 프로토콜을 사용한다.

UDP

UDP는 User Datagram Protocol로 비연결형 서비스를 지원하는 프로토콜로, 정보를 주고받을 때 연결하지 않고 데이터를 발신자가 일방적으로 전송한다. 데이터를 데이터 그램 단위로 처리하며 신뢰성 없는 데이터를 전송하며 TCP보다 전송속도가 빠르다.

스트리밍 서비스와 같은 연속성, 성능이 중요한 서비스에 UDP 프로토콜을 사용한다.

 

 

📝 서버 프로그램 구조

  1. ServerSocket 객체 생성
 ServerSocket serverSoc = new ServerSocket(portNumber, queueLength); //포트번호, 연결요청 보관하는 큐 길이

 

 

  1. accept() 메소드 호출
Socket clientSoc = serverSoc.accept(); //accept는 연결 성공시 socket 리턴

 

 

  1. 소켓으로부터 스트림 객체를 얻는다.
InputStream input = clientSocket.getInputStream();
OutputStream output = clientSocket.getOutputStream();

 

 

  1. 상호 대화 단계

read(), write() 사용

 

  1. 종료

사용한 reader, writer 자원 close
클라이언트, 서버 소켓 close

 

참고

파워 자바 3판

 

☕️ 잡담

네트워크 조금 재밌다!

'TIL' 카테고리의 다른 글

220412  (0) 2022.04.12
220408  (0) 2022.04.08
220406  (0) 2022.04.06
220405  (0) 2022.04.05
220401  (0) 2022.04.01

댓글