본문 바로가기

Distributed System/이론 공부

분산시스템) 분산시스템 종류 및 Pitfalls

Types of distributed systems

1) Distributed computing systems

컴퓨팅 파워를 필요로하는 서비스를 요청할 때 사용할 수 있다. 주로 공학 시뮬레이션과 같이 계산량이 많은 task를 대신 수행해주는 시스템이다.

2) Distributed information systems

우리가 주로 아는 분산 시스템은 이 부류에 들어간다. 정보를 제공해주는 시스템이다. 정보는 여러가지가 있을 수 있다. WWW나 게임도 이 부류에 들어간다.

3) Distributed pervasive systems

가장 마지막에 나온 것이다. 무선 네트워크 기능이 활성화되고 컴퓨팅 디바이스의 크기가 작아지면서 등장하였다. 분산 시스템을 제공하는 환경이 다이나믹한 환경에서 제공된다는 것이다. 모바일 디바이스와 같이 client도 물론이고 서비스를 제공하는 서버측 component 또한 이동할 수 있게 다이나믹 해졌다. 다이나믹한 환경에서 여러 클라이언트의 데이터를 수집해서 요구에 맞는 서비스를 사용자가 언제 어디서든 제공받을 수 있는 시스템이다. 예를 들어 스마트 모바일 헬스케어 시스템, 유비쿼터스 시스템 등이 이 부류에 들어간다.

Pitfalls

컴퓨터 네트워크를 사용하는 시스템을 개발할 때 개발자들이 자주 빠지는 함정이 있다. 평상시에는 문제가 되지 않지만 문제가 되는 상황이 발생할 수 있는 것들이다. 이 모든 사항들을 고려햐여 개발하면 좋은 시스템이 되겠지만 그러기 쉽지 않다.

 

1.The network is reliable
이는 TCP를 사용하여 해결할 수 있다.

 

2.The network is secure
보안이 중요한 시스템이면 그냥 넘어가면 안되지만 중요하지 않은 시스템이라면 그냥 넘어갈 수 있다.

 

3.The network is homogeneous
실제 네트워크는 heterogeneous하다.

 

4.The topology does not change
모바일 환경으로 실험하면 topology가 변경될 수 있다.

 

5.Latency is zero
건대 내에서만 사용하면 딜레이 문제가 안생길 수 있지만 하나는 한국 하나는 미국에서 사용하면 딜레이 문제가 발생한다.

 

6.Bandwidth is infinite
네트워크 대역폭은 실제로 무한대가 아니지만 무한대라 가정하고 개발한다.

 

7.Transport cost is zero
메세지를 전송하고 전송된 메세지를 수신하는 비용이 실제로는 0가 아니다.

 

8.There is one administrator