본문 바로가기

정보관리기술사/2-4교시(서술)

제137회 정보관리기술사 3교시 기출문제&참고답안

제137회 정보관리기술사 3교시 참고답안

제137회 정보관리기술사 3교시 참고답안

1. 운영체제 스케줄링 기법

가. CPU 스케줄링과 디스크 스케줄링의 개념

스케줄링은 다중 프로그래밍 운영체제에서 한정된 시스템 자원(CPU, Disk)을 여러 프로세스(작업)가 효율적으로 사용할 수 있도록 할당 순서를 결정하는 정책입니다.

구분 CPU 스케줄링 디스크 스케줄링
대상 자원 CPU (중앙처리장치) 디스크 암(Arm) / 헤드(Head)
목적 - CPU 이용률 극대화, 시스템 처리율(Throughput) 향상
- 평균 대기시간(Waiting Time) 및 응답시간(Response Time) 최소화
- 기아(Starvation) 현상 방지 및 공정성(Fairness) 확보
- 디스크 접근 시간(Access Time) 최소화
- 탐색 시간(Seek Time) 최소화가 주 목적
- 디스크 처리율 향상 및 응답시간 편차 최소화
주요 기법 - (비선점) FCFS, SJF
- (선점) Round Robin, SRT, 다단계 큐
- FCFS, SSTF, SCAN, C-SCAN, LOOK
- (회전 지연 고려) SLTF

나. SJF (Shortest Job First)와 SRT (Shortest Remaining Time)

두 기법 모두 CPU의 총 실행 시간(Burst Time)이 가장 짧은 프로세스를 먼저 처리하여 평균 대기 시간을 최소화하는 것을 목표로 합니다.

구분 SJF (Shortest Job First) SRT (Shortest Remaining Time)
스케줄링 방식 비선점 (Non-preemptive) 선점 (Preemptive)
동작 원리 - 일단 CPU를 할당받은 프로세스는 실행이 끝날 때까지 CPU를 독점함.
- 프로세스가 종료되면, 준비 큐(Ready Queue)에 있는 작업 중 총 실행 시간이 가장 짧은 다음 작업을 선택.
- SJF의 선점형 버전.
- 현재 실행 중인 프로세스의 '남은 실행 시간'보다 더 짧은 실행 시간을 가진 새로운 프로세스가 도착하면, 현재 작업을 중단(선점)하고 새 작업을 즉시 실행.
특징 - 평균 대기 시간을 최소화하는 이론적으로 최적인 기법 (비선점 중).
- 기아 현상(Starvation) 발생 가능 (실행 시간이 긴 작업이 계속 대기).
- 선점을 통해 SJF보다 평균 대기 시간을 더욱 줄일 수 있음.
- 잦은 선점으로 인한 문맥 교환(Context Switching) 오버헤드가 큼.
단점 - 공통 단점: 각 작업의 총 실행 시간을 사전에 정확히 예측하기 어려움.

다. SSTF (Shortest Seek Time First)와 SLTF (Shortest Latency Time First)

두 기법 모두 디스크 접근 시간을 줄이는 것을 목표로 하지만, 고려하는 시간 요소가 다릅니다.

구분 SSTF (Shortest Seek Time First) SLTF (Shortest Latency Time First)
주요 최적화 대상 탐색 시간 (Seek Time) 회전 지연 시간 (Latency Time)
동작 원리 - 디스크 헤드의 현재 위치에서 가장 가까운 트랙(Cylinder)에 대한 I/O 요청을 먼저 처리.
- 헤드의 이동 거리를 최소화하는 데 중점을 둠.
- (탐색 시간이 짧은 요청들을 모은 후) 해당 트랙에 헤드가 도착했을 때, 디스크가 회전하여 원하는 섹터(Sector)가 헤드 밑에 가장 먼저 도착하는 요청부터 처리.
- '섹터 큐잉(Sector Queuing)'이라고도 함.
특징 - FCFS보다 평균 탐색 시간이 짧고 처리율이 높음.
- 헤드 위치에서 멀리 떨어진 트랙의 요청은 계속 대기하는 기아 현상(Starvation) 발생 가능.
- 탐색 시간(SSTF 등)과 회전 지연 시간을 동시에 최적화할 때 사용.
- 구현이 복잡하지만 디스크 접근 시간을 가장 효과적으로 줄일 수 있음.

2. 정보시스템 감리 (시스템 운영 및 유지보수 감리)

정보시스템 감리는 「전자정부법」 및 「정보시스템 감리기준」에 의거하여, 정보시스템 구축 및 운영의 전 과정에서 효율성을 향상시키고 안전성을 확보하기 위해 제3자의 관점에서 점검하고 개선사항을 권고하는 활동입니다.

가. 시스템 운영, 유지보수 감리의 개념

  • 시스템 운영 감리:
    • 정보시스템이 본격적으로 운영되는 단계에서 실시하는 감리.
    • 운영 중인 시스템의 효율성, 안정성, 보안성, SLAs(서비스 수준 협약) 준수 여부 등 운영 성과와 관리 체계를 종합적으로 점검합니다.
    • 목적은 '안정적인 서비스 제공'과 '운영 효율성 확보'에 있습니다.
  • 유지보수 감리:
    • 운영 중인 정보시스템의 기능을 개선하거나, 장애를 처리하고, 환경 변화에 대응하는 유지보수 사업(프로젝트)에 대해 실시하는 감리.
    • 유지보수 절차의 준수 여부, 변경 관리의 적정성, 테스트의 충실성 등을 점검합니다.
    • 목적은 '유지보수 작업의 품질 확보'와 '변경으로 인한 장애 방지'에 있습니다.

나. 시스템 운영 감리의 점검분야

「정보시스템 감리기준」 [별표 4]에 따라, 시스템 운영 감리는 크게 '운영 관리'와 '운영 성과' 분야로 나누어 점검합니다.

대분류 주요 점검 분야 주요 점검 항목 (예시)
운영 관리
(관리 체계)
운영 조직 및 인력 - 운영 조직, 역할, 책임(R&R)의 적정성
- 운영 인력의 전문성 및 교육 훈련
서비스 수준 관리 (SLA) - SLA 항목 및 목표 수준의 적정성
- 모니터링, 보고, 패널티 체계의 실효성
자원 관리 - 하드웨어, 소프트웨어, 네트워크 용량 관리(Capacity)
- 구성 관리(CMDB), 자산 관리
보안 관리 - 접근 통제, 보안 정책, 취약점 점검, 백업 및 복구
운영 성과
(성과 측정)
서비스 성과 - SLA 준수율 (가용성, 응답시간)
- 사용자 만족도, 장애 발생 및 처리 현황
운영 효율성 - 시스템 성능 및 자원 활용률
- 운영 비용의 적정성

다. 유지보수 감리의 점검분야

유지보수 감리는 유지보수 사업의 절차적 측면을 중점적으로 점검합니다.

점검 분야 주요 점검 항목 (예시)
유지보수 계획 및 절차 - 연간 유지보수 계획의 적정성
- 유지보수 지침 및 절차의 수립 및 준수 여부
요청 및 처리 관리 - 장애/변경 요청(SR)의 접수, 처리, 이력 관리 체계
- 장애 등급 분류 및 처리 시간 준수 여부
변경 관리 - 변경 영향 분석(Change Impact Analysis)의 충실성
- 변경 승인 절차(CCB) 준수 여부
릴리즈 및 테스트 - 변경 사항에 대한 테스트(단위, 통합, 회귀)의 적정성
- 릴리즈(배포) 계획 및 절차 준수
산출물 관리 - 유지보수 완료 후 관련 산출물(설계서, 코드, 매뉴얼)의 현행화 여부

3. 다중지역 동시 가동방식 (Multi-Region Active-Active) 재해복구시스템

가. 개념 및 특징

1. 개념

다중지역 동시 가동방식(Multi-Region Active-Active)은 지리적으로 분리된 2개 이상의 데이터센터(Region)가 모두 '운영(Active)' 상태로 동시에 대고객 서비스를 처리하는 재해복구(DR) 시스템의 최고 수준 모델입니다.

이는 한쪽(주 센터)은 운영하고 다른 쪽(DR 센터)은 대기(Standby)하는 전통적인 Active-Standby 방식과 달리, 모든 센터가 부하를 분산하여 실시간으로 동작합니다. 재해(지진, 화재)로 인해 하나의 센터가 마비되더라도, 다른 센터가 즉시 전체 서비스를 중단 없이 이어받아 처리합니다.

2. 특징

  • 최고 수준의 가용성 (RTO/RPO):
    • RTO (복구목표시간) ≈ 0: 재해 발생 시 사실상 서비스 중단이 없음. (Failover 즉시 발생)
    • RPO (복구목표시점) ≈ 0: 모든 센터의 데이터가 실시간 동기화되므로 데이터 유실이 거의 없음.
  • 자원 효율성 극대화:
    • Active-Standby 방식의 '대기(Standby)' 센터는 평상시 유휴 자원이지만, Active-Active 방식은 모든 자원(DR 센터 포함)을 평상시 서비스 처리에 활용하므로 자원 효율성이 높습니다.
  • 성능 향상 (부하 분산):
    • 글로벌 라우팅을 통해 사용자와 가장 가까운 지역(Region)의 센터로 트래픽을 자동 분산(Load Balancing)시켜, 응답 속도(Latency)를 향상시킬 수 있습니다.
  • 높은 구축 비용 및 복잡도:
    • 데이터의 실시간 동기화, 트래픽의 자동 분배, 상태(세션) 공유 등을 위한 고도의 기술이 필요하며 구축 비용이 매우 높습니다.

나. 주요 기술 요소

Multi-Region Active-Active를 구현하기 위해서는 다음 기술 요소들이 필수적입니다.

기술 요소 설명
GSLB
(Global Server Load Balancing)
- (트래픽 분산) DNS 기반으로 동작하며, 사용자의 위치, 서버 부하, 센터 상태(Health Check)를 감안하여 가장 최적의 지역(Region) 센터로 사용자 트래픽을 자동 분배하는 기술.
- 재해 발생 시 장애가 난 센터를 감지하고 트래픽을 정상 센터로 자동 우회(Failover)시킴.
데이터 실시간 동기화
(Data Replication)
- (데이터 일관성) 한 센터의 데이터베이스(DB)에서 발생한 트랜잭션(쓰기)이 즉시(Synchronous) 다른 지역 센터의 DB에도 복제되어야 함.
- (기술) CDC(Change Data Capture), 트랜잭션 리플리케이션, 클라우드 네이티브 DB(Spanner, Aurora Global DB) 등.
글로벌 세션 관리
(Session Clustering)
- (상태 유지) 사용자가 A센터에 로그인한 상태(세션)에서 재해로 B센터에 접속하더라도, 로그인 상태가 유지되어야 함.
- (기술) Redis, Memcached 등 인메모리(In-Memory) DB를 이용한 글로벌 세션 클러스터링.
마이크로서비스 아키텍처 (MSA) - (무상태(Stateless) 설계) 애플리케이션을 기능 단위로 분리하고, 상태(State)를 외부(세션/DB)에 저장하는 무상태(Stateless)로 설계하여, 어느 센터에서 요청을 처리해도 동일한 결과를 보장.
고속 네트워크 - 지역(Region) 간 데이터 실시간 동기화를 위해 지연시간(Latency)이 매우 낮은 고속의 전용 네트워크 회선이 필수적.

4. 데이터베이스 트랜잭션 격리 수준 (Transaction Isolation Level)

트랜잭션 격리 수준은 여러 트랜잭션이 동시에(Concurrency) 실행될 때, 한 트랜잭션이 다른 트랜잭션의 변경 사항(데이터)을 어느 정도까지 노출(허용)할 것인지를 결정하는 수준(단계)입니다. 이는 동시성과 데이터 일관성 간의 트레이드오프(Trade-off) 관계를 가집니다.

가. 데이터베이스 트랜잭션 격리 수준 4가지 (ANSI/ISO SQL 표준)

격리 수준은 낮은 순서(동시성 높음, 일관성 낮음)에서 높은 순서(동시성 낮음, 일관성 높음)로 4단계로 정의됩니다.

  1. Level 0: READ UNCOMMITTED (커밋되지 않은 읽기)
    • 한 트랜잭션이 아직 커밋(Commit)하지 않은 변경 사항을 다른 트랜잭션이 그대로 읽을 수 있음.
    • 데이터 정합성이 거의 보장되지 않아 실제로는 거의 사용되지 않음.
  2. Level 1: READ COMMITTED (커밋된 읽기)
    • 한 트랜잭션이 커밋(Commit)을 완료한 데이터만 다른 트랜잭션이 읽을 수 있음. (가장 널리 사용되는 기본 수준, 예: Oracle, SQL Server)
    • 'Dirty Read' 문제를 해결함.
  3. Level 2: REPEATABLE READ (반복 가능한 읽기)
    • 한 트랜잭션이 시작되면, 그 트랜잭션이 끝날 때까지 다른 트랜잭션이 해당 데이터를 수정(UPDATE/DELETE)할 수 없음. (공유 락(Shared Lock) 유지)
    • 'Non-Repeatable Read' 문제를 해결함. 즉, 한 트랜잭션 내에서 동일한 데이터를 여러 번 읽어도 항상 같은 값이 보장됨. (예: MySQL InnoDB 기본 수준)
  4. Level 3: SERIALIZABLE (직렬화 가능)
    • 가장 높은 격리 수준. 트랜잭션을 순차적으로(직렬로) 실행하는 것과 동일한 결과를 보장.
    • 한 트랜잭션이 특정 범위(Range)를 읽으면, 그 트랜잭션이 끝날 때까지 다른 트랜잭션이 해당 범위에 새로운 데이터를 삽입(INSERT)할 수 없음.
    • 'Phantom Read' 문제를 해결하여 완벽한 데이터 일관성을 제공하지만, 동시성이 가장 낮아 성능 저하가 큽니다.

나. 격리 수준에 따라 발생할 수 있는 이상 현상

격리 수준이 낮을수록 동시성은 높아지지만, 다음과 같은 데이터 부정합(Anomaly) 현상이 발생할 수 있습니다.

격리 수준 (Isolation Level) 발생 가능한 이상 현상
Dirty Read Non-Repeatable Read Phantom Read
1. READ UNCOMMITTED 발생 (O) 발생 (O) 발생 (O)
2. READ COMMITTED 방지 (X) 발생 (O) 발생 (O)
3. REPEATABLE READ 방지 (X) 방지 (X) 발생 (O)
4. SERIALIZABLE 방지 (X) 방지 (X) 방지 (X)

이상 현상 설명

  • Dirty Read (더티 리드):
    • T1이 A를 10에서 20으로 수정하고 아직 커밋(Commit)하지 않았는데, T2가 A를 20으로 읽어감. 이후 T1이 롤백(Rollback)되면, T2는 존재하지 않는(유령) 데이터(20)를 읽은 셈이 됨.
  • Non-Repeatable Read (반복 불가능 읽기 / Fuzzy Read):
    • T1이 A를 10으로 읽음. T2가 A를 20으로 수정하고 커밋(Commit)함. T1이 다시 A를 읽었더니 20으로 조회됨.
    • 한 트랜잭션 내에서 동일한 데이터를 읽었는데 결과가 달라지는 현상.
  • Phantom Read (유령 읽기):
    • T1이 특정 범위(예: '급여 > 500')를 검색하여 10명의 직원을 조회함. T2가 해당 범위에 속하는 새로운 직원 1명을 삽입(INSERT)하고 커밋함. T1이 동일한 범위로 다시 검색했더니 11명의 직원이 조회됨.
    • 한 트랜잭션 내에서 동일한 범위 검색 결과가 달라지는(없던 데이터가 생기는) 현상.

5. 통신 프로토콜

가. 오류 제어, 혼잡 제어

오류 제어와 혼잡 제어는 신뢰할 수 있는 데이터 전송(예: TCP)을 보장하기 위한 핵심 메커니즘입니다.

구분 오류 제어 (Error Control) 혼잡 제어 (Congestion Control)
목적 - 1:1 (송신측↔수신측) 간의 문제.
- 전송 과정에서 데이터가 손상(Error)되거나 분실(Lost)되는 것을 감지하고 복구.
- 다수(네트워크)의 문제.
- 네트워크(라우터)에 송신자들의 트래픽이 과도하게 몰려(혼잡) 패킷 손실이나 지연이 발생하는 것을 방지.
주요 기법 - ARQ (Automatic Repeat reQuest)
- (긍정 확인) 수신측이 제대로 받으면 ACK (Acknowledgement) 전송.
- (부정 확인) 오류 발생 시 NACK 전송 또는 ACK 미전송.
- (재전송) 송신측은 NACK 또는 타임아웃(Timeout) 발생 시 해당 데이터를 재전송.
- (종류) Stop-and-Wait, Go-Back-N, Selective Repeat
- AIMD (Additive Increase / Multiplicative Decrease)
- (합 증가) ACK 수신 시 윈도우 크기를 1씩 증가.
- (곱 감소) 패킷 손실(혼잡) 감지 시 윈도우 크기를 절반(1/2)으로 급격히 감소.
- Slow Start: 초기 윈도우 크기를 지수적으로(2배씩) 빠르게 증가시켜 대역폭을 탐색.
- Fast Retransmit / Fast Recovery: 3개의 중복 ACK 수신 시, 타임아웃 전 즉시 재전송.

나. 슬라이딩 윈도우 (Sliding Window) 기법

슬라이딩 윈도우는 오류 제어흐름 제어(Flow Control)를 효율적으로 수행하기 위한 기법입니다.

  • 동작 원리:
    1. 송신측과 수신측은 미리 정해진 '윈도우 크기(Window Size, N)'(버퍼 크기)를 협의합니다.
    2. 송신측은 수신측의 ACK를 기다리지 않고, 윈도우 크기(N)만큼의 데이터 프레임(패킷)을 연속적으로 전송할 수 있습니다.
    3. 수신측이 ACK(예: 3번까지 받음)를 보내오면, 송신측은 윈도우를 다음 칸으로 이동(Slide)시켜(예: 4번부터 전송 시작) 전송을 계속합니다.
  • 주요 역할:
    • 오류 제어 (ARQ와 결합): Go-Back-N, Selective Repeat ARQ가 슬라이딩 윈도우를 기반으로 동작하여 연속적인 재전송을 지원합니다.
    • 흐름 제어 (Flow Control): 수신측이 자신의 현재 버퍼 처리 상태(남은 공간)를 윈도우 크기에 반영하여 송신측에 알려주면(예: 윈도우 크기를 0으로), 송신측은 수신측이 처리 가능할 때까지 전송을 중지(Stop)합니다. 이는 수신측 버퍼의 오버플로우를 방지합니다.

다. 프로토콜 설계 시 고려 사항

효율적이고 신뢰성 있는 통신 프로토콜을 설계하기 위해 다음 요소들을 고려해야 합니다.

  • 신뢰성 (Reliability): 오류 제어(ARQ), 순서 제어(Sequencing)를 통해 데이터가 손상, 분실, 순서 뒤바뀜 없이 전달될 것을 보장해야 하는가? (예: TCP vs UDP)
  • 효율성 (Efficiency): 데이터 전송률(Throughput)을 높이기 위한 방안 (예: 슬라이딩 윈도우 크기, 헤더(Header)의 오버헤드 최소화)
  • 연결 관리 (Connection Management): 연결 지향형(TCP, 3-way handshake)으로 할 것인가, 비연결형(UDP)으로 할 것인가?
  • 주소 지정 (Addressing): 송신자와 수신자를 식별하기 위한 주소 체계 (예: IP 주소, Port 번호)
  • 흐름 제어 (Flow Control): 송신측의 속도가 수신측의 처리 속도보다 빠르지 않도록 제어하는 메커니즘.
  • 혼잡 제어 (Congestion Control): 네트워크의 혼잡 상황을 감지하고 전송량을 조절하는 메커니즘.
  • 단편화 및 재조립 (Fragmentation & Reassembly): 하위 계층의 MTU(Maximum Transmission Unit)보다 큰 데이터를 분할하고, 수신측에서 재조립하는 방안.
  • 보안 (Security): 데이터의 기밀성(암호화), 무결성, 인증을 고려할 것인가? (예: TLS/SSL)

6. 국가 망 보안체계 (N²SF) 보안 가이드라인

2025년 1월 국가정보원이 발표한 N²SF(National Network Security Framework)는 기존의 경계 기반(Boundary-based) 보안 모델의 한계를 극복하고, 클라우드 및 제로 트러스트(Zero Trust) 환경에 대응하기 위해 공공기관의 망 분리 및 보안 체계를 전면 개편하는 새로운 프레임워크입니다.

가. 국가 망 보안체계 (N²SF) 개념

N²SF는 "신뢰할 수 없는 네트워크(인터넷)로부터 국가 정보자원을 안전하게 보호하기 위해, 기존의 물리적 망 분리 중심에서 제로 트러스트(Zero Trust) 원칙에 기반한 논리적 접근 통제 및 다계층 방어 체계로 전환"하는 것을 핵심 개념으로 합니다.

즉, "내부망은 안전하다"는 기존의 신뢰를 버리고, "절대 신뢰하지 말고, 항상 검증하라(Never Trust, Always Verify)"는 제로 트러스트 원칙을 공공 망 보안에 적용하는 것입니다.

나. 국가 망 보안체계 (N²SF) 적용 절차

N²SF 가이드라인은 기관의 특성에 맞게 보안 체계를 구축하기 위한 5단계 적용 절차를 제시합니다.

  1. [1단계] 자산 식별 및 중요도 평가:
    • 기관이 보유한 모든 정보자산(서버, DB, 단말기, 데이터)을 식별하고, 업무 중요도 및 민감도에 따라 보안 등급(예: 상, 중, 하)을 분류합니다.
  2. [2단계] 보호대상 정의 및 경계 설정:
    • 등급 평가 결과에 따라, 반드시 보호해야 할 핵심 자산(보호대상)을 선별합니다.
    • 이 보호대상을 중심으로 마이크로 세그먼테이션(Micro-Segmentation) 개념에 기반한 논리적인 보안 경계(SDP 경계)를 설정합니다.
  3. [3단계] 접근 주체 식별 및 인증 강화:
    • 자산에 접근하는 모든 주체(사용자, 기기, 애플리케이션)를 식별합니다.
    • 강화된 인증(MFA, Multi-Factor Authentication) 및 SSO(Single Sign-On) 체계를 구축하여 "신뢰할 수 있는 사용자"임을 검증합니다.
  4. [4단계] 접근 통제 정책 수립 (SDP/ZTNA 적용):
    • 제로 트러스트 원칙(최소 권한)에 따라, '누가(주체)', '어디서(기기/위치)', '무엇을(자산)', '어떻게(애플리케이션)' 접근할 수 있는지 동적(Dynamic) 접근 통제 정책을 수립합니다.
    • SDP(Software Defined Perimeter) / ZTNA(Zero Trust Network Access) 솔루션을 도입하여 정책을 구현합니다.
  5. [5단계] 모니터링 및 신뢰도 재평가:
    • 모든 접근 시도 및 트래픽을 실시간으로 모니터링하고 로그를 분석합니다.
    • 사용자 및 기기의 행위(신뢰도)를 지속적으로 재평가하여, 이상 징후 발생 시 접근 권한을 동적으로 차단하거나 재인증을 요구합니다.

다. 국가 망 보안체계 (N²SF) 고려사항

구분 주요 고려사항
정책/관리적 - (중요) 보안등급 기반 차등 적용: 기관의 모든 자산을 일률적으로 최고 수준으로 보호하는 것이 아니라, 자산의 중요도와 민감도에 따라 보안 수준(예: 망 분리 방식, 인증 강도)을 차등 적용하여 효율성을 확보해야 함.
기술적 - 강화된 인증 (MFA/SSO): 기존의 ID/PW 방식이 아닌, 다중 인증(MFA)을 기본으로 적용하고, 통합 인증(SSO) 게이트웨이를 통해 인증 체계를 일원화.
- 마이크로 세그먼테이션: 기존의 VLAN 기반 망 분리를 넘어, 애플리케이션(워크로드) 단위로 세밀하게 네트워크를 분리하여, 침해 사고 발생 시 횡적 확산(Lateral Movement)을 차단.
운영적 - 가시성 확보 및 자동화: 전체 네트워크와 자산, 사용자의 행위에 대한 통합 가시성(Monitoring)을 확보해야 하며, 위협 탐지 및 대응(SOAR)을 자동화.