오늘은 분산 운영체제 시스템에 대하여 알아보자
그게 뭐냐구?
괜찮다 천천히 읽어보면 분명 이해할 수 있을 것이다.
우리 같이 데... 아니 공부 해보자
분산 운영체제 시스템
우리가 흔히 사용하는 운영체시 시스템은 분산 운영체제 시스템이다.
ex 클라이언트 / 서버
그래서 오늘은 클라이언트 / 서버 모델을 운영체제 관점에서 바라본
즉 분산 운영체제 시스템에 대하여 알아보자
개념
- 네트워크를 지원하는 컴퓨터에서 동작
- 원격에 있는 자원을 마치 지역 자원인 것처럼 활용
목적
- 자원 공유
- 연산 속도 향상
- 신뢰성 향상
- 컴퓨터 통신
장점
- CPU의 처리 능력 한계를 극복 : 원격 이용하기 때
- 단일 CPU의 경우 한 단계 높이기 위해 제곱만큼 비용 증가 => 분산 시스템으로 해결
- 병목 현상 제거를 위한 필요한 자원의 추가 용이 => 확장성 높음 : 네트워크 추가만 하면되서
- 부하 균등 배분 가능(Load Balancing)
- 다수 사용자가 데이터 공유 가능
- 통신이 용이
단점
- 보안에 취약
- 소프트웨어 개발이 어려움
- 하나의 CPU를 사용할 때보다 적응성이 떨어짐
- 에러 발생 시 원인 파악이 어려움
분산 시스템의 결함(Failure)
링크 결함
• 사이트(컴퓨터, 노드, 교환기) 간 잘못된 연결로 발생
사이트 결함
• 사이트 자체에서 발생할 수 있는 결함
메시지의 분실
• 통신회선 상에서 발생된 전송 오류에 따른 메시지 손실
• 사이트 간 전송되는 메시지의 분실
데이터 결함이 발생하지 않는 이유 :
분산 시스템은 신뢰성을 위해 TCP / IP를 통해 돌아감 만약 데이터 결함이 있으면 그냥 버려버림
네트워크 내 모든 업무가 동일 하면 하나의 사이트로 간주 하나다는 것은 : 네이버 생각 여러 페이지 == 사이트가
하나의 네이버 사이트임
분산 운영체제의 구조
구조(=위상, Topology) : 어떠한 형태로 네트워크 연결이 되는지
- 성형 연결(Star Connected) 구조
- 환형 연결(Ring Connected) 구조
- 다중 접근 버스 연결(Multi-access Bus Connection) 구조
- 완전 연결(Fully Connected) 구조
- 부분 연결(Partially Connected) 구조
- 계층 연결(Hierarchy Connected) 구조
성형 연결(Star Connected) 구조
- 각 노드가 1:1(Point – To - Point) 형태로 중앙 컴퓨터(노드) 에 연결
- 중앙 컴퓨터를 통해 중재(mediate) 및 제어(control)를 받음
- • 제어가 집중
- • 모든 동작이 중앙 컴퓨터에 의해 관리
- 중앙 컴퓨터의 과부하는 전체적의 성능에 영향을 줌
- 중앙 컴퓨터의 고장은 전체적의 시스템을 마비 : 제어 받지 못해서
- 터미널의 증가에 따라 통신 회선 수도 증가
환형 연결(Ring Connected) 구조
- 각 노드는 이웃하는 다른 두 노드와 물리적으로 연결
- 정보 전달은 단방향 또는 양방향 방식이 있음
- 기본 비용은 사이트 수에 비례
- 메시지가 링을 순환할 경우 통신 비용 증가 ex 바로 옆에 없을때 건더 건너 가야하니까
- 근거리 네트워크 구조로 많이 사용 ex (lan)
다중 접근 버스 연결(Multi-access Bus Connection) 구조
- 한 시점에 단지 하나의 전송만이 가능 : 한놈 전송중이면 모두 stop 길이 하나임 ㅠㅠ
- 물리적 구조가 단순 => 증설이 단순
- 버스의 사용을 위한 경쟁 발생
- 성능 저하 발생
- 버스의 이상은 전체 시스템을 마비
- 한 사이트의 고장은 나머지 사이트들 간 통신에 영향을 주지 않음
- 버스의 대역폭에 제한을 받음 ex 쉽게 02년식 마을버스/ 2022년식 전기 버스
완전 연결(Fully Connected) 구조
- 네트워크 내의 모든 사이트들이 서로 직접 연결(Direct Link) 된 구조
- 기본 비용이 높음 : 하나 추가하면 다연결 해줘야함
- 사이트 간 메시지는 매우 빠름 : 각각 다 연결 되어 있어서
- 하나의 링크가 고장 나더라도 우회가 가능 => 고 신뢰성
부분 연결(Partially Connected) 구조
- 네트워크 내 사이트 간 부분적으로 연결
- 증설 비용이 완전 연결보다 낮음
- 메시지가 경유 되는 경우 메시지 전달이 늦어 짐
- 완전 연결 대비 신뢰성이 낮음
- 환형 연결(Ring Connected)도 부분 연결 구조 중 하나 (안에 다 지우고 선 하나만 연결하면)
계층 연결(Hierarchy Connected) 구조
- 사이트들을 트리(Tree) 형태로 구성
- 루트(root)와 서브(sub) 사이트 관계로 존재
- 노드는 하나의 부모와 여러 개의 자식 사이트를 가짐
- 비용은 부분 연결보다 낮음
- 특정 사이트의 고장은 자식 사이트의 중단을 초래 : 사진 빨간색 선 보면 중간이 죽으면 아래 자식 노드들 다 죽어버림
분산 운영체제 설계 시 고려사항
설계 시 고려사항
- 투명성(Transparency) : 자원 위치를 알 필요가 없음
- 내 컴퓨터에 있는거 처럼 쓰면됨 네트워크 공유 되어 있기 때문에 가능 ex 서버 자원
- 자원 공유 때문
- • 위치 투명성 : 위치에 관계없이 사용을 보장
- • 이주 투명성 : 자원들의 이동을 사용자는 알 필요가 없음
- 이동 되는 자원은 크게 : 프로세스, 데이터, 연산을 말함
- • 복제 투명성 : 사용자 통보없이 자율적 복사 가능
- • 병행 투명성 : 자동 공유
- • 병렬 투명성 : 다수 처리기 사용제한 없음 ex CPU 몇개를 사용하던
- 융통성
- 신뢰성(Reliability) : 특정 사이트의 고장 후 작업 이관을 통한 해결
- 결함 내성(Fault Tolerance) : 고장 시 사용자의 요청 손실을 최소화
- 성능: 처리 속도가 느려지지 않도록 설계
- 확장성(Scalability) : 여러 형태의 기술을 확대할 수 있도록 설계
추가 개념
클라이언트/ 서버 시스템 이전의 시스템은 어떤 모습??
중앙 집중 시스템
- C/S(Client/Server) 시스템 이전의 시스템
- 호스트(Main-Frame) 컴퓨터와 더미(dummy) 단 말기의 관계로 네트워크를 구성
- 더미 단말의 증가는 호스트의 부담을 가중
- 호스트가 다운되면 전체가 중단
호스트만 CPU가 있음 더미 단말기는 CPU 없이 입력하고, 결과만 출력해주는 바보임
분산 처리를 위한 파일시스템 대표적 3가지
NFS(Network File System)
- 썬 마이크로시스템즈(Sun Microsystems, 1984)가 개발
- 원격지의 컴퓨터에 있는 파일을 마치 자신의 컴퓨터에 있는 것처럼 사용
- NFS 서버가 데몬(Daemon)으로 동작
- 원격 파일을 접근하기 위해서는 NFS 클라이언트 필요
- 대부분의 UNIX 계열의 운영체제에서 지원되고 있음
LoCUS 분산 파일 시스템
- Los Angeles의 캘리포니아 대학(UCLA)에서 개발
- 분산 운영체제를 구축하기 위한 파일 시스템
Andrew 분산 파일 시스템
- AFS : Andrew File System
- Carnegi-Mellon 대학(CMU)에서 개발
- 분산 컴퓨팅 환경을 위한 파일 시스템
'자료구조, 운영체제, 네트워크, 시스템설계 > NCS' 카테고리의 다른 글
정보통신 : 기술 면접 준비 1 통신 개요, 데이터 전송 기초 (0) | 2022.10.20 |
---|---|
운영체제 기술면접 준비12: UNIX와 명령들 (1) | 2022.10.11 |
운영체제 기술면접 준비9: 플린 분류법에 따른 컴퓨터 시스템 구조, 다중 처리를 위한 운영체제 (0) | 2022.10.11 |
운영체제 기술면접 준비8: 파일 시스템, 디렉터리, 자원 보호 및 보안 (0) | 2022.10.11 |
운영체제 기술면접 준비6: 가상 기억장치 구역성, 관리 전략, 교체 알고리즘 (0) | 2022.10.10 |