[네트워크] client-server, peer to peer

tae_in·2022년 10월 14일
0

CS

목록 보기
5/10

Application architectures

Application architectures는 두가지가 있다.

1. client-server

2. peer-to-peer(P2P)

Client-Server

Client-server 구조는 client와 server간에 데이터를 주고받는 형태이며 client는 데이터를 요청해서 받는 쪽이고, server는 데이터를 보내는 쪽이다.

Server

  • client가 언제 데이터를 요청할 지 모르기 때문에 server는 항상 ON상태읻.
  • client가 같은 IP주소로 정보를 요청하므로 server의 IP주소는 고정되어 있다.
  • data center(cloud 기반)를 통해서 서버가 운용되는 경우도 있다.

Client

  • 시간 간격을 두고 일어나는 방식(간헐적)으로 연결된다.
  • 일반적으로 동적 IP주소를 가진다.(IP주소가 충분하지 않기 때문에)
  • Clients끼리 직접적으로 communication을 못한다. 반드시 server를 통해서 데이터를 주고받는다.

Peer-to-Peer(P2P)

P2P방식은 서로 동등한 Peers(end systems)끼리 직접적으로 communication을 해서 정보를 주고 받는 방식이다. 새로운 peers가 나타나면 스스로 규모가 늘어나며 P2P link가 많아진다. 이것을 self scalability(자기 확장성)라고 한다.

<특징>

  • server같이 항상 ON되어 있는 것이 없다.
  • peers는 IP주소를 변경할 수 있다. 새로운 IP주소가 부여 된 상태여도 여전히 P2P link를 유지하고 있다.
    *제약조건: 사용자의 IP주소가 동적으로 바뀌면 P2P 네트워크를 뚫고 들어가지 못하는 경우가 있다. 그래서 네트워크 환경에 따라 P2P가 될수도 안될수도 있다.

0개의 댓글