728x90
클라이언트와 서버
클라이언트-서버 모델
클라이언트 : 클라이언트는 서비스를 요청하는 쪽이다. 마치 식당에서 음식을 주문하는 손님처럼, 클라이언트는 어떤 정보를 얻거나 작업을 처리해달라고 요청하는 역할을 한다
서버 : 서버는 클라이언트의 요청을 받아들이고, 그 요청에 맞게 서비스를 제공하는 쪽이다. 식당에서 음식을 준비해서 손님에게 가져다주는 주방이나 웨이터가 서버의 역할을 한다.
Main 객체가 Service 객체의 메서드를 호출하면 Main 객체는 Service 객체에게 특정 작업을 요청한 것이다. 요청을 받은 Service 객체는 요청을 수행하고 결과를 반환한다. 여기서는 Main 객체가 클라이언트이고, Service 객체가 서버가 된다.
- Main 객체와 Service 객체의 관계에서 Main 객체는 클라이언트가 되고, Service 객체는 서버가 된다.
- Service 객체와 Repository 객체 사이의 관계에서 Service 객체는 클라이언트가 되고, Repository 객체는 서버가 된다.
- Service 객체는 상황에 따라 서버이면서 동시에 클라이언트가 된다.
IP 프로토콜의 한계
- 비연결성 : Packet을 받을 대상이 없거나 서비스 불가해도 패킷 전송을 한다.
- 비신뢰성: 중간에 패킷이 사라지거나 순서대로 안올 수 있다.
- 프로그램 구분: 같은 ip를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상이라면 어떻게 해야할까
TCP 특징
- 연결지향: 3 handshake
- 데이터 전달 보증
- 순서보장
- 신뢰할 수 있는 프로토콜
UDP 특징
- 연결지향 X -> 3 handshake X
- 데이터 전달보증 X
- 순서보장 X
- BUT 단순하고 빠르다.
728x90
'컴퓨터 네트워크' 카테고리의 다른 글
Network program - 2 (0) | 2024.12.24 |
---|---|
Network program (0) | 2024.12.24 |
InputStream, OutputStream (1) | 2024.12.22 |
컴퓨터 네트워크 4장- 라우터 내부 (0) | 2024.05.18 |
컴퓨터 네트워크 4장- 네트워크 계층 개요 (0) | 2024.05.18 |