중앙 집중식 아키텍처는 클라이언트-서버
모델을 따른다.
클라이언트
는 서버에서 제공하는 특정 서비스를 요청하고 서버의 응답을 기다리는 프로세스이다.
서버
는 특정 서비스를 구현하는 프로세스이다.
이러한 클라이언트-서버 통신은 대개 신뢰성이 높은 지역 네트워크에서는 비교적 간단한 무연결 프로토콜(UDP)
로 구현되는 것이 일반적이다.
하지만, 무연결 프로토콜을 사용하는 경우 응답 메시지가 손실
될 가능성이 있어 클라이언트가 요청 메시지를 다시 보내야 하는 경우가 있다.
이 경우 클라이언트는 요청 메시지가 손실되었는지 아니면 응답 메시지 전송이 실패한 것인지 구분할 수 없기 때문에 요청 메시지를 다시 보내면 작업을 중복 수행
할 수 있다.
이때, 요청 메시지가 여러 번 반복 수행해도 문제가 없는 경우 이를 멱등성
이 있다고 한다.
이러한 문제를 해결하기 위해 연결 지향적인 프로토콜(TCP)
을 사용할 수 있다.
이 경우 클라이언트가 서비스를 요청하면 먼저 서버와 연결을 설정한 후 요청을 보내는 방식으로 동작한다.
하지만 연결을 설정하고 해제하는 데는 비용
이 들기 때문에 이를 고려해야 한다.