ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • C/S 아키텍처, P2P 아키텍처
    네트워크 2024. 3. 16. 16:08

      Client-Server 아키텍처는 네트워크에서 어떠한 리소스나 서비스를 요청하는 클라이언트(엔드 시스템)와, 요청에 응답하는 서버로 이루어집니다. 보통 서버는 다수의 클라이언트의 요청을 받아야 하기에 높은 성능을 갖춥니다.

      C/S 아키텍처를 사용하면 좋은 점은 클라이언트와 서버 간 분산 처리가 가능하다는 점, 중앙에서 데이터를 관리하기에 효율적으로 데이터 관리 및 보안이 가능하다는 점 등이 있습니다. 그리고 서버는 항상 고정된 IP를 가져야 한다는 특징이 있습니다. 이것은 DoS 공격의 취약점이 됩니다.

     

    서버

    - 항상 호스트

    - 고정적인 IP 주소

    - 확장을 위한 데이터 센터가 있을 수도

    - 클라우드 환경을 이용할 수도

     

    클라이언트

    - 서버와 통신

    - 간헐적인 연결

    - 고정적이지 않은 IP 주소

    - 클라이언트 간 직접적으로 연결하지 않음


      P2P는 피어 투 피어, 라는 이름처럼 컴퓨터 네트워크 상에서 중앙 집중식 서버가 아닌, 여러 컴퓨터가 직접 연결되어 데이터를 공유하는 방식입니다. 중앙에 집중되지 않기 때문에 네트워크가 분산되어 있어 어느 특정 지점에 장애가 생겨도 전체 시스템이 다운되지 않으며, 대규모 트래픽이 있어도 부하가 분산된다는 장점이 있습니다. 또한 피어의 수가 증가해도 그만큼 리소스가 증가하는 것이기 때문에 전체 시스템의 성능이 유지될 수 있습니다. (자가확장성, Self-Scalability)

      중앙 제어가 되지 않는다는 점은 장점이 될 수도 있으나 그만큼 단점 또한 있습니다. 클라이언트가 서버의 역할을 하기에 자연스레 자신의 IP 주소가 노출되고, 컴퓨터 성능이 보장되어야 합니다. 또한, 검색 속도가 느리다는 단점이 있습니다. 하이브리드 P2P 방식이라는 검색 제공은 서버에서 해주지만 데이터 교환은 P2P로 하는 방식이 있으나, 서버가 다운되면 사용할 수 없다는 클라이언트-서버 아키텍쳐의 단점을 그대로 가집니다.

    - 항상 서버는 아니고 왔다갔다 함

    - 임의의 엔드 시스템이 직접 소통 가능

    - 피어끼리 서비스를 요청하고 제공 -> 자가확장성(Self Scalability, 새 피어는 새 서비스 요청과 새 서비스 캐퍼시티 들고 옴)

    - 피어는 간헐적으로 연결되고 IP 주소가 바뀔 수 있음


      블록체인의 경우 P2P를 사용합니다. 애초에 탈중앙화된 화폐라는 점에서 이슈를 끌었다는 점에서 당연할 것입니다. 각 노드는 전체 블록체인 데이터베이스의 복사본을 가지고, 동기화되어 모든 노드는 동일한 블록체인 데이터를 가지고 있습니다. 서로서로 검증하는 방식이기에 중앙이 통제하는 신뢰가 필요가 없는 것입니다. 

    '네트워크' 카테고리의 다른 글

    네트워크 가장자리  (0) 2024.03.24
    IPC  (0) 2024.03.16
    클라우드 컴퓨팅  (0) 2024.03.16
    웹 애플리케이션 언어  (0) 2024.03.16
    인터넷의 역사  (0) 2024.03.16
Designed by Tistory.