Test Exam [FLIP] Flashcards Preview

PE > Test Exam [FLIP] > Flashcards

Flashcards in Test Exam [FLIP] Deck (29):
1

블록체인기술

▣ 정의
- P2P 네트워크를 이용하여 거래내용을 분산 및 저장함으로써 보안을 강화할 수 있는 기술
▣ 장점 (탈보신확)
- 탈중개성(P2P)
- 보안성(공동소유)
- 신속성(거래기록 자동실행)
- 확자성(연결, 확장 용이)
▣ 블록구조
1) 블록헤더 (80)
- 블록크기(4)
- 버전(4)
- 이전 블록해시(32)
- 머클루트(32)
- 타임스탬프(4)
- 난이도목표(4)
2) 트랜잭션(가변)
- 트랜잭션 카운트(1~9)
- 코인베이스 트랜잭션
- 트랜잭션
▣ 블록체인구조
- 블록길이(Depth)
- 블록높이(Height)
- 이전 블록 해시 -> 다음 블록
▣ 동작절차 (거암상분)
1) Transaction(거래)단계
- A와 B가 특정 금액 거래
2) Block(암호화)단계
- 거래 내용 블록하나에 저장 및 암호화
3) Chaining(상호연결)단계
- 거래들이 모인 블록을 이전 블록과 연결하여 거대한 관리대장 생성
4) Propagation(분산저장)단계
- 거래에 참여한 여러 대의 컴퓨터 들이 모두 장부를 똑같이 가짐
▣ 적용 현황
1) 국외
- 산탄데르 은행 : 2022년, 20조 절감
- R3CEV : 이더리움, 11개 은행 테스트 완료
- 씨티그룹 : 시티코인
- IBM : ADEPT, 이더리움, 텔레해시, 비트토렌트 이용 IoT 플랫폼 제시
2) 국내
- 한국은행 : 업계와 공동연구 추진 전략 발표
- KB은행 : 코인플러그와 해외송금 서비스 기술검증

2

SW 영향 평가 제도

▣ 정의
- 공공과 민간간 불필요한 경쟁 및 SW산업 위촉을 방지하기 위해 공공 정보화사업의 기획단계에서 민간 시장 침해 등 SW 산업 생태계에 미치는 영향을 평가하여 개선의견을 제시하는 제도
▣ 추진 배경
1) 특정 SW 무상 배포
- 정부가 특정 SW를 국민에게 무상배포
- 관련 SW기업 매출감소 및 산업 생태계 교란
2) 사례
- 안전행정부 온나라 시스템, 국가기록원 표준기록관리시스템, 사학진흥재단 사립대학 회계시스템
- SW사업비 축소, 기업 매출감소
3) 특정 모듈 강제
- 건강보험 심사원 의료기관 용 표준 SW 개발 타당성 연구, 대검찰청 차세대 지식포탈 전자정부프레임워크 의무사용화
- 기존 상용SW 폐기, 유지보수 공공 부담
▣ 유형
1) 기관 공동 사용형 평가방법
- SW산업계의 파급효과(높음, 낮음)
- 사업 추진의 필요성(높음, 낮음)
- SW영향평가 결과(사업재검토, 실행유의)
2) 대국민서비스형 평가방법
- 민간 유사서비스 침해여부(매우침해:2개이상, 침해:1개, 침해없음:0개)
- 추진 사업의 공공성(높음, 낮음)
- SW영향평가 결과(사업재검토, 실행유의)

3

혼돈(Confusion)

▣ 개념 (암호문과 암호키)
- 암호문과 암호키의 관계를 은닉함으로써, 암호문을 이용하여 암호키를 찾는 공격을 방지하는 기법
- 키의 단일비트가 변하면 암호문의 대부분 비트가 변할 수 있음
▣ 원리
- 평문의 특정 비트를 임의의 특정 값으로 대체
▣ 효과
- 암호문과 암호키간 관계 해동 방지
▣ 구현
- Replacement / Substitution (대체)
▣ 주요기법
- S-Box(Substitution)
▣ 암호화구조
1) 확장 P-Box : 확산
2) S-Box (8개) : 혼돈
3) 단순 P-Box : 확산
▣ 대표 알고리즘
- DES, SEED

4

확산(Diffusion)

▣ 개념 (암호문과 평문)
- 암호문과 평문 사이의 관계를 은닉함으로써, 암호문에 대한 통계테스트를 통해 평문을 유추하는 공격을 방지하는 기법
- 평문의 단일 비트가 변하면 암호문에 특정 비트나 모든 비트가 변할 수 있음
▣ 원리
- 평문의 각 비트의 재배열
▣ 효과
- 암호문과 평문간 관계 해동 방지
▣ 구현
- Transposition / Permutation (치환)
▣ 주요기법
- P-Box(Permutation)
▣ 암호화구조
1) S-Box와 확산함수가 반복적으로 사용되는 구조
2) SubBytes : 혼돈(S-BOX)
3) ShiftRows : 확산(P-BOX)
▣ 대표 알고리즘
- AES, ARIA

5

JOIN

▣ 개념
- 두 개 이상의 테이블들을 연결 또는 결합하여 하나의 데이터를 출력하는 방법
▣ 유형
1) 연산자 관계 관점의 유형
- Nested Loop
- Sort Merge
- Hash Match
2) DBMS 성능 관점의 유형
1) Inner Join
- Equi Join
- Natural Join
2) Outer Join
- Left Outer Join
- Right Outer Join
- Full Outer Join
- Cross Join
4) Self Join

6

Inner Join

▣ Equi Join
- 두 개의 테이블 간 컬럼값이 정확하게 일치하는 경우 사용
- PK <> FK 관계를 기반으로 조인 성립
- 조인 조건은 SQL의 Where절에 "=" 연산자를 사용하여 기술
▣ Natural Join
- Equivalent Join에서 중복 속성 중 하나가 제거된 조인
- 가장 많이 사용되는 조인방식

7

Outer Join

▣ Left Outer Join
- 하나의 테이블을 기준으로 나머지 테이블을 Left방향으로 조인
- 연결되는 항목에 존재하지 않는 경우, Null로 채움
▣ Right Outer Join
- 하나의 테이블을 기준으로 나머지 테이블을 Right 방향으로 조인
- 연결되는 항목에 존재하지 않는 경우 Null로 채움
▣ Full Outer Join
- 양 쪽 테이블이 데이터를 모두 유지한 채 테이블 병합
- 양쪽 테이블의 모든 row들이 표시되나 "ON" 조건에 기반해서 매칭되는 점이 Cross Join과 상이
- Select * from People p FULL OUTER JOIN Colors c ON p.fk = c.id;
▣ Cross Join
- Cartesian Produc
- 양쪽 테이블의 각각 Row가 매치되며 총 3x3=9 개의 row가 생성됨
- Select * From People p CROSS JOIN Colors C

8

Self Join

- 동일 테이블 내부의 서로 다른 Column 간의 값들을 비교할 때 편리하게 사용
- Self-join 하기 위해선 테이블을 두 번 리스트-업 한 후, 각각 서로 다른 alias 배정
- Select
Emp1.EmployeeId AS 'EmployeeID',
Emp1.EmployeeName AS 'Employee Name',
Emp2.EmployeeId AS 'ManagerID',
Emp2.EmployeeNames AS 'Manager Name'
FROM Employee Emp1
INNER JOIN Employee Emp2
ON Emp1.ManagerID = Emp2.EmployeeID

9

기가파이(Giga-Fi)

▣ 정의
- ISM 대역으로 할당된 60Hz 대역을 사용하여 데이터를 기가급으로 전송할 수 있는 기술
▣ 특징
- 60Ghz ISM Band, 4개 채널, 각 채널당 2.16GHz 대역폭
- 빔포밍을 이용하여 10미터 이내의 전송거리에서 안정적인 통신제공
- AES(Advanced Encryption Standard)암호화 알고리즘을 이용한 향상된 보안기능 제공
- HDMI, DisplayPort, USB, PCle의 기능을 무선으로 구현하도록 지원
▣ 상세스펙
- 주파수대역 : 57~64GHz (무한한 개발가능)
- 전송속도 : 3~6Gbps (UWB 대비 6~12배 성능향상)
- 통신거리 : 10m 이내 (확대가능)
- 응용서비스 : 무선인터넷, HDMI, USB (무선기간망으로 발전)
- 비디오서비스 : 무압축 (고화질 HD그대로 전송)
- 단말기 : TV/STB, 노트북, 핸드폰 (소형화, 저전력화)
- 대부분 60GHz 사용 (표준화 용이 ISO 13156)
▣ 산업화 동향
- 순수 국내 핵심 기술로 세계 최초 유럽, 북미 표준 이어 ISO/IEC 국제 표준 체택
- 세계적으로 주파수 고갈사태로 밀리미터파 대역 사용방안 부각

10

OSPF (Open Shortest Path First)

▣ 정의
- 링크상태 라우팅 프로토콜에 기초하여 자치시스템(AS : Autonomous System) 내부의 라우터들끼리(IGP) 라우팅 정보를 교환하는 라우팅 프로토콜
▣ 특징
- 빠른 Convergence : 라우팅 정보를 즉시 같은 그룹에 전파
- 작은 Traffic : 변경된 정보만 전송
- CIDR, VLSM 지원 : 서브넷 마스크 정보 함께 전송
- 뛰어난 확장성 : 라우터 제한 없음
- 인증을 통한 Routing Table 교환 : 암호화된 Password 인증
- 멀티케스트를 통한 라우팅 정보 교환 : 토폴로지 변경 시 변경된 정보만 전송
- 효율적인 경로 : Cost 기반 최적의 경로 선택
▣ 경로 계산 개념
- RIP는 경로 계산을 Hop Count를 이용하지만 OSPF는 Hot Count + 대역폭 + 이용도를 계산하여 최적의 경로를 선택
▣ 설계 시 고려사항
- 구조형태 : AREA 계층 구조로써, 트리형태가 아니면 운영불가
- Cost 값 수정 : 모든 OSPF Router에 설정 필요
- Routing 테이블 : 한 AREA에 많은 라우터 존재 시 다익스트라 알고리즘 적용할 경우 CPU자원 과다 사용
- AREA 관리 : 한 개의 AREA 안에 45개 내외의 라우터 수 권장

11

정보시스템 감리의 목적 및 유형

▣ 정보시스템 감리의 정의
- 감리발주자 및 피감리인의 이해관계자로부터 독립된 자가 정보시스템의 효율성을 향상시키고 안전성을 확보하기 위하여 제 3자의 관점에서 정보시스템의 구축 및 운영 등에 관한 사항을 종합적으로 점검하고 문제점을 개선하도록 하는 것 (전자정부법, 법률 제 11735호(2013.4.5))
▣ 목적
1) 정보시스템의 요건 준수 (준거성)
- 정보시스템을 구축, 운영함에 있어서 정보시스템 관련 법규, 기준, 표준 등을 준수하고 있는지 검토하여 요건의 미준수로 인한 불이익이나 제재 등을 회피하는 것
- 개인정보 보호법
- 행정기관 및 공공기관 정보시스템 구축, 운영 지침
- 공공기관의 데이터베이스 품질관리 지침
- 소프트웨어 사업 대가 기준
- 소프트웨어 기술성 평가 기준
- 소프트웨어 품질 평가 기준
2) 정보시스템의 안전성 향상
- 협의로는 기밀보호를 의미하지만, 일반적으로 정보의 무결성과 운영의 계속성을 포함하는 넓은 의미로 사용
- 기밀성
- 무결성
- 가용성
3) 정보시스템의 효율성 향상
- 투입된 정보시스템의 자원을 충분히 활용하는 것
- 사용자 측면 : turnaround time, response time
- 시스템 측면 : throughput, capacity, 자원이용도
4) 정보시스템의 효과성 향상
- 정보시스템이 사전에 설정된 목적을 달성하는 것
- 업무자동화
- 관리자에게 양질의 정보 제공
- 고객에 대한 서비스 개선
▣ 정보시스템 감리의 유형
1) 공정에 따른 감리 유형
- 기획 및 개발 감리
- 유지보수 감리
- 운영 감리
2) 다양한 시각에 따른 감리 유형
- 정보시스템 수명주기(12207)
∙ 기획감리
∙ 분석/설계감리
∙ 구현감리
∙ 운영감리
- 감리형태
∙ 상주감리
∙ 비상주감리
- 사업단계
∙ 사전감리
∙ 진행감리
∙ 사후감리
- 감리 책임 범위
∙ 일반감리
∙ 책임감리
- 감리 적용 기술
∙ 기술감리
∙ 품질감리
∙ 사업관리감리
∙ 보안감리
∙ 비용감리
- 감리대상
∙ 제품감리
∙ 공정감리
- 감리목적
∙ 체계감리
∙ 사업감리
∙ 성과감리
- 감리주체
∙ 내부감리
∙ 외부감리

12

node.js

▣ 개념
- 비동기 방식의 서버 어플리케이션 개발을 위해 V8 엔진 기반의 Server-Side JavaScript를 이용한 개발 프레임워크
▣ 구성도
- JavaScript
- C/C++
- node standard library
- node bindings(socket, http, etc)
- V8
- thread pool (libeio)
- event loop (libev)
- DNS (c-areas)
- crypto (OpenSSL)
▣ 내부구조
- Event Loop
- Single Thread
- Delegate
- POSIX Async Threads
- Non blocking I/O
▣ 장단점
1) 장점
- NPM(Node Package Manager) : npmjs.org 사이트에 5만개 이상 보유
- 비동기 I/O
- 이벤트 기반 프로그램 : 싱글 스레드 이면서 고성능
2) 단점
- 고 사양 하드웨어 필요
- 실시간 시스템에 적용 어려움

13

TCP 혼잡제어

▣ 개념
- 네트워크로 유입되는 사용자 트래픽의 양이 네트워크 용량을 초과하지 않도록 유지시키는 메커니즘 및 기술
▣ 혼잡제어 메커니즘
- 송신자의 전송률 제한 : Congestion Window의 값 조절
- 혼잡 감지 : 손실 이벤트 발생 시 송신률을 줄임
- 전송률의 조절 : Slow Start, Congestion Avoidance, Fast Recovery, Fast Retransmit
▣ 세부기술
1) 기본기술
- Slow Start : 송신측의 TCP에 CWnd를 통해 커넥션이 성립되면 1세그먼트 크기로 시작해서 ACK도착시마다 CWnd는 지수적으로 증가시키는 기법
- Congestion Avoidance : Slow Start의 지수적 증가가 어떤 임계치에 도달하게 되면 혼잡이 일어나게 됨을 간주하고 이를 회피하기 위해 cwnd 크기가 linear하게 증가하여 네트워크 혼잡을 예방하는 기법
2) 개선기술
- Fast Retransmit : TCP에서 Timeout, 수신자측에 발생시키는 Duplicate ACK를 Loss로 판단하는 것
- Fast Recovery : Fast Retransmit 이후 slow start가 아닌 congestion avoidance 상태에서 전송할 수 있도록 하는 기법

14

B 트리

▣ 정의
- 이진 트리를 확장해 하나의 노드가 가질 수 있는 자식 노드의 최대 숫자가 2보다 큰 트리 구조
▣ 조건
- 루트를 제외한 모든 노드는 k/2 ~ k 개의 키를 갖음 (k=각 노드가 가지고 있는 키의 개수)
- 모든 리프 노드는 같은 깊이를 갖음
- 모든 노드는 자식노드를 가질 시 2개 이상의 자식노드를 갖음

15

캐시 일관성

▣ 캐시 일관성 문제
- SMP와 같은 공유 메모리 방식의 병렬 컴퓨터에서 주 기억 장치(공유 메모리)와 캐시에 저장된 데이터가 달라지는 현상
▣ 캐시 일관성 유지 방식
1) 하드웨어 방식
- 개념 : 캐시 일관성 프로토콜이라고 하며, 잠재적인 불일치 조건들을 run time에 동적으로 검출하는 방식
- 특징 : SW방식에 비해 캐시 이용률이 좋고, 소프트웨어 개발 부담 최소화
- 유형 : 디렉토리 프로토콜, 스누피 프로토콜
2) 소프트웨어 방식
- 개념 : 컴파일러와 OS를 이용하여 잠재된 문제를 검출하는 방식
- 특징 : 설계 복잡도가 하드웨어에서 소프트웨어로 이동하는 장점, Compile time에 문제를 검출해야 하므로 캐시 이용률이 저하되는 단점
- 유형 : 공유 캐시 사용/미사용
▣ 하드웨어 방식
1) 디렉토리 프로토콜
- Full Map : 중앙집중식, 복사본을 가진 Cache를 가리키는 포인터와 상태 저장
- Limited : Full Map Directory를 작게 유지하여 기억장치의 부담 감소
- Cache Directory : 디렉토리 포인터를 Linked List로 연결, Cache에는 디렉토리 정보저장
2) 스누피 프로토콜
- 캐시 제어기 : 스누피 프로토콜을 이용해 다른 캐시와 공유 및 갱신 제어
- 쓰기 갱신(Write-update, Write-broadcast) : 다중 읽기/쓰기 가능, 공유 블록 갱신 시 다른 모든 Cache에 갱신되는 정보를 전달
- 쓰기 무효(Write invalid) : Write 발생시 Cache에 Invalid 메시지를 받으면 각 캐시는 Broadcasting 된 캐시 갱신 정보를 무효화
▣ 소프트웨어 방식
- 공유 Cache 사용 : 모든 프로세서들이 하나의 Cache 사용
- 공유 Cache 미사용 : 공유 변수를 Cache에 저장하지 않는 기법

16

MESI 프로토콜

▣ 개념
- SMP에서 사용하는 write-invalidate 방식의 Snoopy 프로토콜
- 데이터 캐시는 태그 당 두개의 상태 비트를 포함하여 MSIE 상태 정보 중 하나를 저장
▣ MESI 다이어그램
1) Read miss : E
2) Write hit : E - M
3) Read Miss : E-S
3,4) Read Miss : S
4) Cache miss : M-S
5) Invalidate Signal : S-I, S-M
6) Write hit : M(재귀)
7) Read miss : I-M
8) Write miss : M
▣ Cache 상태 유형
- M(Modified) : 수정 상태, 데이터가 수정(변경)된 상태
- E(Exclusive) : 배타 상태, 유일한 복사본이고, 메인 메모리의 내용과 동일한 상태
- S(Shared) : 공유 상태, 데이터가 2개 이상의 프로세서 캐시에 적재되어 있는 상태
- I(Invalid) : 무효 상태, 데이터가 다른 프로세서에 이해 수정되어 무효화 된 상태

17

ISO/IEC 25010

▣ 정의
- ISO/IEC 25000(SQuaRE)의 품질 모델 부분 ISO/IEC 2501n(사용상 품질모델, 제품 품질모델, 데이터 품질모델) 중 한 부분으로, 컴퓨터 시스템 및 소프트웨어 제품의 품질에 대한 내부/외부 품질특성을 제시한 국제표준
▣ 25010 구성
1) 기능 적합성
- 기능 성숙도
- 기능 정확도
- 기능 타당성
2) 수행 효율성
- 시간 반응성
- 요소 활용
- 기억 용량
3) 호환성
- 공존
- 상호 운용성
4) 유용성
- 타당성 식별력
- 학습성
- 운용성
- 사용자 오류
- 보호
- 사용자 인터페이스 미학
- 접근성
5) 신뢰도
- 성숙도
- 가용성
- 결점 완화
- 회복 가능성
6) 보안
- 기밀성
- 무결성
- 부인방지
- 책임성
- 인증성(진본성)
7) 유지 가능성
- 모듈성
- 재사용성
- 분해성(분석성)
- 수정 가능성
- 시험 가능성
8) 이동성(이식성)
- 적용성
- 설치성
- 대치성

18

Bit Torrent

▣ 정의
- 개인들간에 P2P로 연결하여 대용량 파일을 빠른 속도로 전송 및 공유하는 프로토콜이자 응용소프트웨어
▣ 특징
- Piece 파일 이용 : 전송속도 최대화
- 조정자 : 중앙 서버 역할의 트래커
- 적은 대역폭 : 조정자는 실제 파일 내용은 취급 하지 않음
- 1:N공유 : 무수한 세션 생성
▣ 동작설명
1) 피어와 트래커 간 통신
- HTTP 프로토콜 이용
- 클라이언트에서 토렌트 파일에 포함된 정보를 기반으로 트래커에서 피어리스트 요청
- 트래커는 클라이언트에서 보내온 hash 정보를 기반으로 피어들의 리스트를 알림
- 트래커는 2가지 형태 request 방식지원(Scrape, Announce)
2) 피어간 통신
- BitTorrent 프로토콜 이용 통신
- 파일을 교환하기 위해 서로 정보 주고 받음(HandShake)
- 필요 조각 정보를 주기적으로 송수신
3) 동작 절차
- 토렌트 파일(.torrent) 다운받기
- 트래커에 피어 리스트(IP 주소 리스트) 요청하기 : Tracker Request
- 피어리스트(IP 주소 리스트) 받아오기 : Tracker Response
- 파일 다운로드 받기
▣ 구성요소
1) 웹서버
2) 메타 정보 파일
- Tracker 주소 및 파일에 대한 해쉬 및 메타 정보
3) 트래커
- P2P 중개 서버
- 각 클라이언트 간, 파일 업/다운 조정
4) 피어
- Seeder : 컨텐츠 서버, 공유 파일의 완전체를 가지고 있는 클라이언트
- Leecher : 공유 파일의 불완전체를 가지고 있는 클라이언트

19

QoS(Quality of Service)

▣ 개념
- 다양한 통신/응용 서비스에 대해 품질, 성능보장, 사용자 요구를 충족시키는 기술
▣ 필요성
- 사용자 증가에 따른 통신 품질 저하
- 인터넷 트래픽 양의 증가
- 인터넷 트래픽 내용의 변화
▣ 특정지표
- 대역폭 : 특정 Application에 할당된 NW자원량
- 지연 : E2E 간 패킷 전달 소요시간
- 패킷손실 : 전송과정 충돌, 간섭 등으로 인한 패킷 Drop
- 지터 : 전송되는 패킷의 왜곡된 정도
▣ 향상기술
1) 스케줄링
- FIFO Queuing
- Priority Queuing
- CBQ(Class-Based Queuing)
- WFQ(Weight Fair Queuing)
2) 트래픽 조정
- Leaky Bucket
- Token Bucket
- Hybrid
3) 자원예약
- 통합 서비스 모델
4) 수락제어
- Flow Specification 에 따른 흐름 수락 또는 거절
▣ 기대효과
- 트래픽 분산 처리 및 제어
- 트래픽 차단 및 보안 기능
- 트래픽 분석, 모니터링
- 레포팅

20

세마포어(비교)

▣ 주체
- OS, 개발자 주체의 동시성 지원
▣ 상호작용
- 모니터에게 이론적 기반제공
- 모니터에게 효과적인 기법제공
▣ 특징
- S의 타입에 따라 Binary/Counting 세마포어로 구분
▣ 구현사례
Semaphores S;
P(S); // 검사역할, S--;
임계구역()
V(S); //증가역할, S++;
▣ 언어사례
- P, V 연산으로 구현
▣ 공통점
- 동시성 지원을 위한 조정 기능 수행

21

모니터(비교)

▣ 주체
- 프로그래밍 언어 수준의 동시성 지원
▣ 상호작용
- 세마포어의 단점인 타이밍 오류 해결
- 세마포어의 단점인 개발편의성의 보완
▣ 특징
- 한 시점에 하나의 프로세스만 모니터 내부에서 수행
- 세마포어와 계산 능력은 동일
▣ 구현방법
Monitor monitor-name
{
//지역변수 선언
Public entry p1(...) {
}
Public entry p2(...) {
}
}
▣ 언어사례
- JAVA의 synchronized Object
- .Net 의 모니터
▣ 공통점
- 동시성 지원을 위한 조정 기능을 수행

22

데이터베이스 장애 유형을 설명하고 회복 기법 유형 3가지 설명

1. 데이터베이스 장애 유형 개요
가. DB시스템 및 사용자 장애 유형
1) 시스템 장애
- 트랜잭션 장애 : 논리적 오류(내부오류), 시스템 오류(DeadLock)
- 시스템 장애 : 전원, 하드웨어, 소프트웨어 고장, 종료안된 Rollback
- 디스크 장애 : 스토리지 일부 붕괴, 디스크 블록 파괴
2) 사용자 장애
- 관리 장애 : 이해부족, DBA 실수
나. 장애 관점에 따른 분류
1) 하드웨어
- 미디어 : CPU, Memory, Disk
- 시스템 : OS 장애, 병행 프로세스 장애, 인스턴스 장애
2) 소프트웨어
- 트랜잭션 : 논리오류, Data Not Found, Overflow, 비효율적 SQL
- 관리장애 : DB이해부족, DBA운영실수
3) 환경
- 데이터 센터 : 항온항습, 온도, 환풍, 전원공급
- 외부환경 : 천재지변, 해킹
2. 데이터베이스 회복기법
가. 데이터베이스 회복
- 장애가 발생했던 이전의 상태로 복구 시켜 일관된 데이터베이스 상태를 만드는 기법
나. 회복기법 특징
- 원자성 : 트랜잭션 단위 회복 (회복단위)
- 일관성 : 회복 이후 데이터 일관성 유지 (회복결과)
- 독립성 : 회복 수행 중 외부의 요인에 의한 영향성 없음 (회복 수행)
- 영속성 : 회복 적용 후 영속성 데이터 저장, 관리 (데이터 관리)
다. 회복을 위한 기본 조치
1) 회복의 기본원칙 (중복)
- 데이터의 중복
- Archive 또는 Dump
- Log 또는 Jounal
2) 회복을 위한 조치
- REDO (Forward Recovery) : 재실행
- UNDO (Backward Recovery) : 취소연산
3) 시스템
- 회복관리기
3. 회복기법의 유형
1) 로그기반 회복기법
- 즉시 갱신 기법
- 지연 갱신 기법
2) 체크포인트 회복기법
- 검사점 이전에 처리된 트랜잭션은 회복작업에서 제외하고 이후에 처리된 내용에 대해서만 회복작업 수행
- 장애 이전 트랜잭션 종료 : Redo
- 장애 시점 트랜잭션 진행 : Undo
3) 그림자페이지 기법
- 현재 테이블은 주기억장치, 그림자 페이지 테이블은 하드디스크 저장
- 트랜잭션 시작 시점에 현재 페이지 테이블의 내용과 동일한 그림자 페이지 테이블 생성
- 트랜잭션 변경 연상 수행 시, 주기억장치의 현재 페이지 테이블의 내용만 변경하고 그림자 페이지 테이블의 내용은 변경하지 않음
- 트랜잭션이 성공적으로 완료될 경우, 현재 페이지 테이블 내용을 그림자 페이지 테이블로 최종 저장
- 장애 발생 시, 그림자 페이지 테이블의 내용을 이용하여 회복 수행

23

IoT 장치의 설계부터 폐기 단계까지의 LifeCycle 전단계에 걸친 보안 요구사항 및 방안 설명

1. IoT 장치의 Lifecycle 전단계에서 보안의 필요성
- IoT 장치 설계/개발 보안
- 배포(재)설치/(재)구성 보안
- IoT 장치 운영/관리/폐기 보안
2. 전 단계에서의 보안 요구사항
1) 설계/개발 단계
- 정보보호, 프라이버시 강화 고려한 IoT 제품, 서비스 설계
- 안전한 소프트웨어 및 하드웨어 개발 기술 적용 및 검증
2) 배포/설치/구성 단계
- 안전한 초기 보안 설정 방안 제공
- 보안 프로토콜 준수 및 안전한 파라미터 설정
3) 운영/관리/폐기 단게
- IoT 제품, 서비스의 취약점 보안 패치 및 업데이트 지속이행
- 안전한 운영, 관리를 위한 정보보호 및 프라이버시 관리체계 마련
- IoT 침해사고 대응체계 및 책임추적성 확보 방안 마련
3. 전 단계에서의 보안 방안
가. 설계 단계
1) IoT 장치 특성 고려
- 경량 디바이스, 경량 암호기술, 경량 통신기술
2) IoT 서비스 운영환경에 적합한 접근권한 관리
- 인증, 종단 간 통신보안, 데이터 암호화 방안
3) HW/SW 보안기술 적용과 검토 및 안전성이 검증된 보안 기술 활용
- 하드웨어 기반 보안기술, 안전성 검증
4) IoT 장치 및 서비스에서 수집하는 민감정보 처리
- 암호화, 비식별화, 접근관리
5) 민감정보에 대한 이용목적 및 운영정책 가시화 : 투명성 보장
나. 개발 단계
1) 시큐어 코딩 적용
- 설계 부터 개발 단계 까지
2) 취약점 점검 수행 및 보안패치
- 공개 소프트웨어, 점검도구, OWASP
3) 하드웨어 보안 기법 적용
- 펌웨어/코드 암호화
- 실행코드 영역제어
- 역공학 방지기법
다. 배포 설치 단게
1) 안전한 초기 보안 설정 방안
- 제조사 보안설정
2) 보안 프로토콜 준수
- 안전한 파라미터 설정
라. 운영/관리/폐기 단계
1) IoT 제품, 서비스 취약점 패치 및 업데이트 지속 이행
2) 안전 운영관리를 위한 정보보호 및 프라이버시 관리체계 마련
3) IoT 침해사고 대응체계 및 책임추적성 확보 방안 마련

24

스마트 자동차
가. 스마트 카 개념
나. 자율운행 기술 분류
다. 자동운행 기술 설명

1. 스마트 자동차 개요
가. 개념
- 자동차기술에 차세대 전기전자, 정보통신, 기능제어 기술을 접목하여 자동차의 내외부 상황을 실시간 인식하여 고안전, 고편의기능을 제공할 수 있는 인간 친화적 자동차
= 최근 자율 주행 차량으로 발전
나. 부각 배경
1) 정책적
- 안전규제 및 법규강화
- 정부정책 및 추진전략 수립
2) 경제적
- 자동차/통신/IT 회사 융합 가속화
- 신사업모델, 성장모델 창출필요
3) 사회적
- 고안전, 친환경, 친인간, 사회공존, 융복합
- 패러다임 전환 및 신기술 선제확보
4) 기술적
- 융복합 가속화 및 자동차의 전자화
- 선도기술 R&D 기술확보 필요
2. 자율주행 분류
가. 자율 주행차 발전 단계별 분류
0단계 : 위험 경고
- 수동적 안전 시스템
- 자동제어 없음
1단계 : 선택적 능동 제어
- 1개의 ADAS 장착
- 운전대 또는 패달 중, 선택적 자동 제어
2단계 : 통합 능동 제어
- 2개 이상의 ADAS 장착
- 운전대와 페달을 동시에 자동 제어
3단계 : 제한적 자율 주행
- 제한된 조건(주차장, 자동차 전용도로 등)에서의 자율주행
4단계 : 완전 자율 주행
- 모든 상황, 모든 도로에서 자율주행
나. 자율 주행 기여도별 분류
1) 보조 운행
- 사람과 자동차가 역할 분담
- auto-cruise : 종방향(차), 횡방향(사람) 제어
- 주차보조
2) 자동 운행
- 자동차가 종횡 방향 제어
- 언제던지 사람의 간섭 가능
3) 무인 운행
- 사람이 없는 상태, 자동차 스스로 운행
4) 자율 운행
- 사람의 개입이 필요 없음
3. 자율 주행 주요 기술
가. 정보수집 및 인지기술
1) 첨단 센서와 컴퓨팅 기술
- 운전자 시선 모니터링, 졸음운전과 판단실수에 따른 사고 예방
- 카메라, 초음파 센서, Lidar(Laser Radar), 적외선, GPS, 관성항법장치 (INS, Intertial Navigation System)
2) 통신 기술
- Telematics
- WAVE, V2X, DSRC
- 5G
3) IoV (Internet of Vehicle)
- 안전성, 편의성 추구
- 클라우드 서버 연동
나. 정보처리 및 판단기술
1) 인공지능
- 센서정보 이용
2) 고안전
- 주변상황 감지용 센서 이용
3) 고편의
- 원격제어, 오토비서 등 운전지원기능
- 스마트 정보처리, 모바일 오피스
4) HVI 기술
- Human Vehicle Interface
- 사용자 오감, 정서적 만족감, 인간 감성
다. 주행 및 제어기술
1) 첨단 운전자 보조 시스템
- Advanced Driver Assistance System
- 차량 자세제어 장치(VDC), 사고발생 순간 감지해 운전자보호하는 에어백
- 전방충돌 회피, 차선 이탈 결고, 사각지대 감시, 후방 감시
2) 조향 장치, 엔진 제어
- 차량주행을 효율적으로 지원
- 조향, 가감속, 기어, 액츄에이터 제어

25

무선전력전송
가. 무선전력전송의 개념
나. 무선전력전송 기술유형과 개발동향
다. 무선전력전송의 시사점과 정책제안

1. 무선전력전송의 개념
- 전자기기에 필요한 전력을 전선 없이 무선으로 공급하는 기술
2. 기술유형과 개발동향
가. 기술유형
1) 자기유도 (초근접형)
- 코일 간 전자기유도 현상
- 수 mm ~ 수 cm 근거리
- 수 W ~ 수 kW 전송전력
- 고효율 전송(70%)
- WPC1, PMA2 표준
- 모바일 디바이스, 주방기기 등
2) 자기공진 (근접형)
- 코일간 공명 현상
- ~수 m 원거리
- 수 W ~ kW 전송전력
- 고효율 전송(50~70%)
- A4WP3 표준
- 모바일 디바이스, 정보가전
3) RF 방식 (원격형)
- 안테나 방사원리 (전계)
- 수 mm ~ 수 m 원거리
- 1W 이하
- 스마트 센서 등
4) 에너지 하베스팅
- 전자기, 진동, 열, 빛(광)
- 저효율 에너지 수집
- 인체 안전성
- 모바일 디바이스, 스마트 센서 등
나. 개발 동향
1) 가정내, 옥외의 디지털 가전의 소전력 무선전력전송
- 휴대기기, 노트북, 게임기
- 디지털 카메라, 비디오 카메라
- 벽걸이 TV, 휴대용 TV
2) 디지털 가전의 비접촉 전력전송
- 휴대기기, 노트북
3) 극소전력 무선전력전송
- 스마트 센서
- 웨어러블 디바이스
4) 가전이 중전력 무선전력전송
- 낸장고, 세탁기, 드라이어
- 다리미, 대형 TV
5) 대전력 무선전력전송 및 특수용도
- 전기자동차, 노면전차
3. 주요 시사점
- 상호 호환성
- 효율
- 수m 원거리 활성화
- 애플리케이션 다양화
- 전자파 인체 안전성

26

증강현실
가. 증강현실의 개념
나. 증강현실과 가상현실 비교
다. 증강현실 서비스 활용 사례

1. 증강현실 개념
가. 증강현실의 정의
- 가상객체를 실 세계에 추가하여 가상과 실제공간이 공존하여 실 세계를 보완하는 시스템
나. 증강현실 기술요소
1) HW
- 센싱 : 카메라, GPS, 자이로센서, RFID, 광학식 모션 캡쳐
- 디스플레이 : HMD, 휴대용 프로젝터, 모바일 단말
2) 그래픽
- CAD
3) NW
- 데이터 통신 : 4G/5G, Wifi
2. 증강현실과 가상현실 비교
- 현실
- 혼합현실 (증강현실, 증강가상)
- 가상현실
3. 강현실 서비스 활용 사례
가. 마케팅 측면
- 메이크업
- 가구 배치
- 신발 시착
나. 제조업 측면
- 제조공정관리
- 물류관리
- 조사관리
다. 의료분야
- 의료정보 활용
- 의사 및 간호사 교육
- 건강관리

27

소프트웨어 테스트 설계 기법
가. 명세기반기법 테스트
나. 구조기반기법 테스트
다. 효율적인 테스트 설계방안 제시

1. 개요
가. 기법의 종류
1) 화이트 박스 테스트
- 구조기반 테스트
- 단위 테스트
2) 블랙 박스 테스트
- 명세기반 테스트
- 통합 테스트
나. 설계 기법 3가지 유형
1) 명세기반 기법
2) 구조기반 기법
3) 경험기반 기법
2. 명세기반 기법
가. 개념
- 분석 및 설계 명세서를 바탕으로 테스트 케이스 작성 및 테스트 데이터를 설계하고, 이를 수행하는 방법
나. 방법
- 동등분할
- 경계값분석
- 원인-결과 그래프
- 오류 예측 기법
- 의사결정 테이블
- 유스케이스 테스팅
- 페어와이즈 테스팅
3. 구조기반 기법
가. 개념
- 특정 커버리지를 달성하기 위한 테스트를 설계하고 케이스를 도출하기 위해 사용되는 테스트 기법
나. 방법
- 기본 경로 검사
- Loop 테스트
- 구문 커버리지
- 결정 커버리지
- 조건 커버리지
- 조건/결정 커버리지
- 변경조건/결정 커버리지
4. 효과적인 테스트 케이스 적용 방안
- 테스트 자동화
- 테스트 전문가 육성
- 품질 보증

28

병렬컴퓨팅을 Flynn의 분류, 기억장치 엑세스 모델에 따른 분류, 시스템 구성방식에 따른 분류 3가지로 설명하시오

1. Flynn의 분류 개요
가. Flynn의 분류 개념
- 구조적 특징에 따른 병렬컴퓨터 분류 방식으로, 프로세서들이 처리하는 명령어와 데이터 스트림의 수에 따라 분류하는 방식
- 명령어 스트림(Instruction stream) : 프로세서에 의해 실행되기 위하여 순서대로 나열된 명령어 코드들의 집합
- 데이터 스트림(Data Stream) : 그 명령어들을 실행하는 데 필요한 순서대로 나열된 데이터들의 집합
나. Flynn의 분류
1) SISD
- CU - PU - MM
- 한번에 한 개씩 명령어와 데이터를 순서대로 처리하는 단일프로세서 시스템
2) SIMD
- CU - PU*n - MM*n
- 배열 프로세스
- 여러 개의 프로세싱 유니트(PU)들로 구성되고, PU들의 동작은 모두 하나의 제어 유니트에 의해 통제
- 모든 PU들은 하나의 명령어 스트림을 실행
- 데이터 스트림은 여러개를 동시에 처리
3) MISD
- CU*n - PU*n - MM
- N개의 프로세서들이 서로 다른 명령어들을 실행하지만, 처리하는 데이터 스트림은 한 개
- 비현실적이므로 실제 구현된 경우는 없음
4) MIMD
- CU*n - PU*n - MM*n
- N 개의 프로세서들이 서로 다른 명령어들과 데이터들을 처리
- 프로세서들간의 상호작용 정도에 따라 두 두가지로 분류
- Tightly Coupled System
- Loosely Coupled System
2. 기억장치 액세스 모델에 따른 분류
가. UMA(Uniform)
- 균일 기억장치 엑세스 모델
- 모든 프로세서들이 상호연결망에 의해 접속된 주기억장치 공유
- 프로세서들은 주기억장치의 어느 영역이든 엑세스할 수 있으며, 그에 걸리는 시간이 동일
- 장점 : 하드웨어가 간단하고, 프로그래밍이 용이
- 단점 : 공유 자원에 대한 경합이 높아지기 때문에 시스템 크기에 한계
나. NUMA(Non-Uniform)
- 불균일 기억장치 엑세스
- UMA 모델의 한계를 극복하고 더 큰 규모의 시스템의 구성하기 위한 모델
- 다수의 UMA모델들이 상호연결망에 의해 접속
- 분산 공유-기억장치 구조
- 기억장치 엑세스 시간은 기억장치의 위치에 따라 달라짐
∙ 지역 기억장치 액세스
∙ 전역 기억장치 액세스
∙ 원격 기억장치 액세스
다. NORMA(No-Remote)
- 무-원격 기억장치 액세스
- 프로세서가 원격 기억장치는 직접 액세스할 수 없는 시스템 구조
- 프로세서들과 기억장치들은 메시지-전송을 지원하는 상호연결망으로 접속
- 분산-기억장치 시스템으로도 부름
- 주요 연결망 : 매시, 하이퍼큐브, 토러스
라. COMA(Cache-Only)
- 캐쉬-온리 기억장치 액세스
- 시스템 내에 기억장치가 존재하지 않음
- 각 프로세서가 가지고 있는 기억장치들이 모두 캐쉬로서 동작하며, 하나의 공통 주소 공간을 가짐
- 다른 캐쉬에 대한 액세스는 분산 캐쉬 디렉토리에 의해 지원
- 초기에는 데이터들이 임의의 캐쉬에 저장되어 있으며, 실행시간 동안에 그 데이터를 사용할 프로세서의 캐쉬로 이동
3. 시스템 구성 방법에 따른 분류
가. SMP(Symmetric MultiProcessor)
- 대칭적 다중 프로세서
- 64개 이하의 프로세서들을 가지는 중대형급 시스템
- 완전-공유구조 : 프로세서들이 시스템 내의 모든 자원들을 공유
- 시스템 내의 하나의 OS만 존재
나. MPP(Massively Parallel Processor)
- 대규모 병렬 프로세서
- 무공유 구조를 기반으로 하는 대규모 병렬처리시스템
- 수백 혹은 수천 개의 프로세서들로 구성
- 간단한 구조의 노드 프로세서 사용
- 마이크로 커널 수준의 노드 OS 탑재
- 노드들 간의 통신은 message-passing 방식 이용
- 복합도 높은 상호연결망 이용
다. CC-NUMA(Cache-Coherent)
- 캐시-일관성
- 독립적인 노드들(UMA or NUMA)이 상호연결망에 의해 접속
- 모든 노드들의 캐시 및 주기억장치들 사이에 데이터 일관성 유지
- 시스템 내의 모든 기억장치들이 전역 주소공간을 가지는 분산 공유 기억장치 시스템
- 장점 : SW변경없이 SMP보다 더 큰 시스템 구축 가능
라. 분산시스템
- 독립적인 노드들이 전통적인 네트워크에 의해 접속
- 노드들 간의 정보 교환 혹은 병렬처리를 수행할 때만 네트워크를 이용하여 통신
마. 클러스터 컴퓨터
- 모든 시스템 자원들을 단일 시스템 이미지로 통합

29

가. Smart Home 개념
나. 메시지 전달에 사용되는 XMPP, MQTT 설명
다. 디바이스 통신에 사용되는 Z-Wave, Zigbee 비교 설명

ㄴㄴㄴ