클라이언트
클라이언트(client)란 네트워크를 이용하여 서버 시스템에 연결된 PC나 스마트폰 등 사용자 측을 말한다. 클라이언트는 서버에서 받아온 데이터를 단말기 화면에 표시하고 사용자의 요청을 서버에 전달하기 위해 웹브라우저를 사용한다. 반대말은 서버(server)이다.
개요
클라이언트의 사전적인 의미는 고객이라는 의미이나 정보통신분야에서는 정보를 열람하거나 특정의 프로그램을 사용하는 컴퓨터 또는 소프트웨어를 말한다. 정보를 공급하는 컴퓨터를 말하는 서버의 반대개념으로 사용된다. 클라이언트 서버는 하나 또는 여러 개의 관련 있는 응용 프로그램을 둘 또는 그 이상의 상호 협력적인 처리 환경에서 운용하는 다양한 형태의 분산 컴퓨팅을 의미한다. 서버는 망을 통해서 요청을 받으며 자신의 서비스를 수행하고 그 결과를 서비스 요청자에게 돌려준다. 서버에게 요청을 하고 응답을 기다리는 실행 프로그램은 클라이언트가 된다.[1]
클라이언트/서버(client/server) 구성에서 사용자측. 사용자가 서버에 접속했을 때 클라이언트는 사용자 자신을 지칭할 수도 있고, 사용자의 컴퓨터를 가리키기도 하며, 컴퓨터에서 동작하고 있는 프로그램이 될 수도 있다. 컴퓨터 시스템의 프로세스는 또 다른 컴퓨터 시스템의 프로세스를 요청할 수 있다. 네트워크에서는 네트워크 서버에 정보나 응용 프로그램을 요구할 수 있는 PC 등의 처리 기능이 있는 워크스테이션을 말하며 객체 연결 및 포함(OLE)에서는 서버 응용 프로그램이라는 다른 응용 프로그램에 데이터를 포함시켜 놓은 응용 프로그램을 말한다. 파일 서버로부터 파일의 내용을 요청하는 워크스테이션을 파일 서버의 클라이언트라 한다. 각각의 클라이언트 프로그램은 하나 또는 그 이상의 서버 프로그램에 의하여 자동 실행될 수 있도록 디자인되며, 또한 각각의 서버 프로그램은 특별한 종류의 클라이언트 프로그램이 필요하다.[2]
비교
- 서버(server)
- 클라이언트에게 네트워크를 통해 정보나 서비스를 제공하는 컴퓨터 시스템으로 컴퓨터 프로그램 또는 장치를 의미한다.특히, 서버에서 동작하는 소프트웨어를 서버 소프트웨어라 한다. 주로 리눅스 등의 운영 체제를 설치한 대형 컴퓨터를 쓰지만, 그렇지 않은 경우도 있다. 서버는 프린터 제어나 파일 관리 등 네트워크 전체를 감시, 제어하거나, 메인프레임이나 공중망을 통한 다른 네트워크와의 연결, 데이터·프로그램·파일 같은 소프트웨어 자원이나 모뎀·팩스·프린터 공유, 기타 장비 등 하드웨어 자원을 공유할 수 있도록 도와주는 역할을 한다.
- 서버는 사용자(클라이언트)의 요청에 의하여 서비스를 하는데 이와 같이 구성된 시스템을 서버-클라이언트 시스템이라고 하며, 이는 하나 이상의 응용 프로그램을 상호 협력적인 환경에서 운용하는 분산처리 형태를 의미한다. 즉, 서비스를 요청하는 클라이언트와 클라이언트의 요청을 처리하는 서버와의 협동작업을 통해서 사용자가 원하는 결과를 얻는 처리방식을 뜻한다. 클라이언트의 수가 5~20대 저오인 소규모 랜LAN의 경우에는 한 대의 서버로 충분히 모든 서비스를 소화할 수 있으나, 대규모 랜의 경우에는 여러 대의 서버를 배치하고, 파일 관리는 파일 서버, 프린터 제어는 프린터 서버, 인터넷 등의 외부와의 교환은 통신 서버가 담당하는 등 각각 역할을 세분하게 된다.
- 컴퓨팅에서의 서버라는 용어의 이용은 대기 행렬이론에서 비롯한 것이다. 컴퓨팅에서 서버는 적어도 RFC 5(1969년)로 거슬러 올라가며, 이 RFC는 아르파넷(ARPANET)을 기술하는 최초의 문서들 가운데 하나이며 사용자와 대비되고 있고 두 가지 종류의 호스트와는 구별하고 있다. 서버 호스트, 사용자 호스트, 서비스를 제공하는 것을 뜻하는 서빙(serving)이라는 용어 또한 RFC 4와 같은 초기 문서들로 거슬러 올라간다. 또한, 서버의 제조사에 따라 IBM 서버, HP 서버, 델(Dell) 서버 등이 있다.[3]
특징
컴퓨터에서 클라이언트는 서버 시스템과 연결해서 주된 작업이나 정보를 서버에게 요청하고 그 결과를 돌려받는 컴퓨터 시스템을 말한다. 클라이언트는 네트워크를 통해서, 서버라는 다른 컴퓨터 시스템 상의 원격 서비스에 접속할 수 있는 응용 프로그램이나 서비스를 말하는 것이다. 또는 특정 프로그램을 사용하거나 정보를 열람하는 소프트웨어 나 컴퓨터를 지칭하기도 하며, 이렇게 원격을 당하거나 정보를 열람당하거나 사용당하는 것들을 말하기도 한다.
종류
- 팻 클라이언트(fat client)
- 리치 클라이언트(rich client), 씩 클라이언트(thick client)라고도 한다. 스스로 다량의 데이터를 처리하는 클라이언트로 서버에 꼭 의지하지는 않는다. 팻 클라이언트는 개인용 컴퓨터의 한 형태로 가장 흔하게 쓰이며 개인용 컴퓨터나 노트북 컴퓨터는 독립적으로 수행한다. 인터넷 환경이 없으면 일을 할 수 없어 편리성이 떨어지는 씬 클라이언트에 비해 서버에 의존하지 않아 편리성이 높지만 업무용 PC를 분실하게 되는 경우 기밀 정보가 유출되는 사고가 발생할 수 있다. 팻 클라이언트에서는 PC 상에서 대부분의 처리를 하기 때문에 데이터도 PC에 저장된다. 그래서 PC 자체를 분실하면 보안상의 위험이 상당히 커진다.
- 씬 클라이언트(thin client)
- 최소한의 클라이언트로, 호스트 컴퓨터의 리소스를 사용한다. 다량의 데이터를 처리하는 애플리케이션 서버가 제공한 사진을 그래픽으로 보여 주는 것이 임무이다. 씬 클라이언트는 클라이언트 서버 시스템에 있어서 클라이언트 측에는 거의 아무런 처리를 하지 않고 대부분의 처리를 서버 측에 맡기는 시스템을 말한다. 씬 클라이언트는 원래 1990~2000년대 전반에 널리 보급되던 시스템 구성이며 처리 방식이다. 당시는 클라이언트 단말기의 메모리나 중앙처리장치CPU 등의 처리 성능이 부족했었기 때문에 부하가 높은 처리가 가능한 한 성능이 높은 서버 측에서 수행함으로써 전체 처리의 퍼포먼스를 향상시키는 것을 목적으로 했었다. 그 PC의 처리 성능이 눈에 띄게 향상되어 서버 측에서 하던 처리를 클라이언트 측에서 수행하게 되었는데 이러한 시스템 구성이나 처리 방식을 팻 클라이언트라고 한다. 팻 클라이언트의 사용이 크게 늘어 씬 클라이언트의 사용이 줄었다가 보안 관점에서 씬 클라이언트의 필요성이 높아지고 있다.
- 단말기에는 데이터를 저장하는 기구를 장치하지 않고, 서비에는 데이터를 처리한 결과를 표시하기만 하는 단말기가 있어 보안에 효과적이다. 새로운 씬 클라이언트의 주요 방식은 서버에서 네트워크를 경유하여 클라의 OS를 가동시키는 네트워크 부팅 방식, 화면처리는 서버에서 하고 이미지만 클라에 전송하는 화면 전송 방식, VMWare 등과 같은 가상 머신을 이용하는 가상형 방식 등이 있다.
- 하이브리드 클라이언트(hybrid client)
- 팻 클라이언트와 씬 클라이언트를 합쳐놓은 것이다. 팻 클라이언트처럼 비슷하게 기능을 하지만, 데이터 보관을 위해 서버에 의지한다. 멀티미디어 지원과 고성능을 위한 팻 클라이언트와 뛰어난 관리 능력과 유연성을 위한 씬 클라이언트의 장점을 제공한다.[4]
각주
- ↑ 클라이언트 네이버 지식백과 - https://terms.naver.com/entry.nhn?docId=17210&cid=43659&categoryId=43659
- ↑ 클라이언트 네이버 지식백과 - https://terms.naver.com/entry.nhn?docId=817848&cid=42344&categoryId=42344
- ↑ 서버 위키백과 - https://ko.wikipedia.org/wiki/%EC%84%9C%EB%B2%84
- ↑ 클라이언트 위키백과 - https://ko.wikipedia.org/wiki/%ED%81%B4%EB%9D%BC%EC%9D%B4%EC%96%B8%ED%8A%B8_(%EC%BB%B4%ED%93%A8%ED%8C%85)
참고자료
- 클라이언트 네이버 지식백과 - https://terms.naver.com/entry.nhn?docId=17210&cid=43659&categoryId=43659
- 클라이언트 네이버 지식백과 - https://terms.naver.com/entry.nhn?docId=817848&cid=42344&categoryId=42344
- 서버 위키백과 - https://ko.wikipedia.org/wiki/%EC%84%9C%EB%B2%84
같이 보기