제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단계로 정의됩니다.
- Level 0: READ UNCOMMITTED (커밋되지 않은 읽기)
- 한 트랜잭션이 아직 커밋(Commit)하지 않은 변경 사항을 다른 트랜잭션이 그대로 읽을 수 있음.
- 데이터 정합성이 거의 보장되지 않아 실제로는 거의 사용되지 않음.
- Level 1: READ COMMITTED (커밋된 읽기)
- 한 트랜잭션이 커밋(Commit)을 완료한 데이터만 다른 트랜잭션이 읽을 수 있음. (가장 널리 사용되는 기본 수준, 예: Oracle, SQL Server)
- 'Dirty Read' 문제를 해결함.
- Level 2: REPEATABLE READ (반복 가능한 읽기)
- 한 트랜잭션이 시작되면, 그 트랜잭션이 끝날 때까지 다른 트랜잭션이 해당 데이터를 수정(UPDATE/DELETE)할 수 없음. (공유 락(Shared Lock) 유지)
- 'Non-Repeatable Read' 문제를 해결함. 즉, 한 트랜잭션 내에서 동일한 데이터를 여러 번 읽어도 항상 같은 값이 보장됨. (예: MySQL InnoDB 기본 수준)
- 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)를 효율적으로 수행하기 위한 기법입니다.
- 동작 원리:
- 송신측과 수신측은 미리 정해진 '윈도우 크기(Window Size, N)'(버퍼 크기)를 협의합니다.
- 송신측은 수신측의 ACK를 기다리지 않고, 윈도우 크기(N)만큼의 데이터 프레임(패킷)을 연속적으로 전송할 수 있습니다.
- 수신측이 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단계] 자산 식별 및 중요도 평가:
- 기관이 보유한 모든 정보자산(서버, DB, 단말기, 데이터)을 식별하고, 업무 중요도 및 민감도에 따라 보안 등급(예: 상, 중, 하)을 분류합니다.
- [2단계] 보호대상 정의 및 경계 설정:
- 등급 평가 결과에 따라, 반드시 보호해야 할 핵심 자산(보호대상)을 선별합니다.
- 이 보호대상을 중심으로 마이크로 세그먼테이션(Micro-Segmentation) 개념에 기반한 논리적인 보안 경계(SDP 경계)를 설정합니다.
- [3단계] 접근 주체 식별 및 인증 강화:
- 자산에 접근하는 모든 주체(사용자, 기기, 애플리케이션)를 식별합니다.
- 강화된 인증(MFA, Multi-Factor Authentication) 및 SSO(Single Sign-On) 체계를 구축하여 "신뢰할 수 있는 사용자"임을 검증합니다.
- [4단계] 접근 통제 정책 수립 (SDP/ZTNA 적용):
- 제로 트러스트 원칙(최소 권한)에 따라, '누가(주체)', '어디서(기기/위치)', '무엇을(자산)', '어떻게(애플리케이션)' 접근할 수 있는지 동적(Dynamic) 접근 통제 정책을 수립합니다.
- SDP(Software Defined Perimeter) / ZTNA(Zero Trust Network Access) 솔루션을 도입하여 정책을 구현합니다.
- [5단계] 모니터링 및 신뢰도 재평가:
- 모든 접근 시도 및 트래픽을 실시간으로 모니터링하고 로그를 분석합니다.
- 사용자 및 기기의 행위(신뢰도)를 지속적으로 재평가하여, 이상 징후 발생 시 접근 권한을 동적으로 차단하거나 재인증을 요구합니다.
다. 국가 망 보안체계 (N²SF) 고려사항
| 구분 | 주요 고려사항 |
|---|---|
| 정책/관리적 | - (중요) 보안등급 기반 차등 적용: 기관의 모든 자산을 일률적으로 최고 수준으로 보호하는 것이 아니라, 자산의 중요도와 민감도에 따라 보안 수준(예: 망 분리 방식, 인증 강도)을 차등 적용하여 효율성을 확보해야 함. |
| 기술적 | - 강화된 인증 (MFA/SSO): 기존의 ID/PW 방식이 아닌, 다중 인증(MFA)을 기본으로 적용하고, 통합 인증(SSO) 게이트웨이를 통해 인증 체계를 일원화. |
| - 마이크로 세그먼테이션: 기존의 VLAN 기반 망 분리를 넘어, 애플리케이션(워크로드) 단위로 세밀하게 네트워크를 분리하여, 침해 사고 발생 시 횡적 확산(Lateral Movement)을 차단. | |
| 운영적 | - 가시성 확보 및 자동화: 전체 네트워크와 자산, 사용자의 행위에 대한 통합 가시성(Monitoring)을 확보해야 하며, 위협 탐지 및 대응(SOAR)을 자동화. |
'정보관리기술사 > 2-4교시(서술)' 카테고리의 다른 글
| 제137회 정보관리기술사 4교시 기출문제&참고답안 (0) | 2025.11.05 |
|---|---|
| 제137회 정보관리기술사 2교시 기출문제&참고답안 (0) | 2025.11.05 |