[정보처리기사] 5과목 - 정보시스템 구축 관리 (IT 프로젝트 정보시스템 구축 관리)
정보시스템 구축 관리 이론 - IT 프로젝트 정보시스템 구축 관리 정리
네트워크 관련 신기술
1. 소프트웨어 정의 기술
SDE/SDx: Software-Defined Everything
- 소프트웨어 정의 네트워크 (SDN)
- 네트워크를 컴퓨터처럼 모델링하여 여러 사용자가 각각의 소프트웨어들로 네트워킹을 가상화하여 제어하고 관리하는 네트워크
- 하드웨어에 의존하는 네트ㅜ어크보다 효율적
- 기존 네트워크에는 영향을 주지 않으면서 특정 서비스의 전송 경로 수정을 통해 인터넷상에서 발생하는 문제 처리
- 소프트웨어 정의 데이터 센터 (SDDC)
- 데이터 센터의 모든 자원을 가상화하여 인력 개입 없이 소프트웨어 조작만으로 관리 및 제어되는 데이터 센터
- 소프트웨어 정의 스토리지 (SDS)
- 물리적인 데이터 스토리지를 가상화하여 여러 스토리지를 하나처럼 관리하거나, 하나의 스토리지를 여러 스토리지로 나눠 사용
2. IoT
- 올조인 (AllJoyn)
- 오픈소스 기반 IoT 플랫폼
- 서로 다른 OS나 HW를 사용하는 기기들이 표준화된 플랫폼을 이용함으로써 서로 통신 및 제어 가능
- 메시 네트워크 (Mesh Network)
- 차세대 이동통신, 홈 네트워킹, 공공 안전 등 특수 목적을 위한 네트워크
- 수많은 디바이스를 그물망(Mesh)과 같이 유기적으로 연결하여 모든 구간을 동일한 무선망처럼 구성하여 사용자가 안정적인 네트워크를 사용
- 와이선 (Wi-SUN)
- 스마트 그리드와 같은 장거리 무선 통신을 필요로 하는 IoT 서비스를 위한 저전력 장거리 통신 기술
- 낮은 지연 속도, 메시 네트워크 기반 확장성, 펌웨어 업그레이드 용이성 등으로 짧은 시간 동안 데이터 전송이 빈번한 검침 분야에 유용
- UWB (Ultra-wideband, 초광역대)
- 짧은 거리에서 많은 양의 디지털 데이터를 낮은 전력으로 전송하기 위한 무선 기술
- 무선 디지털 펄스, 블루투스와 비교 (근거리)
- 땅 속이나 벽면 뒤로도 전송이 가능, 지진 등 재해가 일어났을 때 탐지 가능
- 피코넷 (PICONET)
- 여러 개의 독립된 통신장치가 블루투스나 UWB를 통해 통신망을 형성하는 무선 네트워크 기술
- 주로 수십 미터 이내의 좁은 공간에서 네트워크를 형성
- USN (Ubiquitous Sensor Network, 유비쿼터스 센서 네트워크)
- 각종 센서로 다양한 정보를 무선으로 수집
- 필요한 모든 곳에 RFID1 태그를 부착, 이를 통해 사물의 인식 정보와 주변 환경 정보까지 탐지한 모든 데이터 관리
- SON (Self Organizing Network, 자동 구성 네트워크)
- 주변 상황에 맞추어 스스로 망을 구성
- 장애 발생 시 자체 치유 가능
- 저전력 블루투스 기술 (BLE: Bluetooth Low Energy)
- 일반 블루투스와 동일한 2.4GHz 주파수를 사용하지만 연결되지 않은 대기 상태에서는 절전모드 유지
- NFC (Near Field Communication, 근거리 무선 통신)
- 고주파(HF)를 이용한 근거리 무선 통신, 아주 가까운 거리에서 양방향 통신을 지원하는 RFID1 기술의 일종
3. 클라우드 컴퓨팅
- 클라우드 기반 HSM
- 클라우드 기반 암호화 키의 생성, 저장, 처리 등의 작업을 수행하는 보안기기
- 암호화 키 생성이 HW적으로 구현되기 때문에 SW적으로 구현된 암호 기술이 가지는 보안 취약점 무시
- 파스-타 (Pass-TA)
- 소프트웨어 개발 환경을 제공하기 위해 개발한 개방형 클라우드 컴퓨팅 플랫폼
- 국내 IT 서비스 경쟁력 강화를 목표로 하며, 인프라 제어 및 관리 환경, 실행 환경, 개발 환경, 서비스 환경, 운영 환경으로 구성
- 징 (Zing)
- 10cm 이내 거리에서 데이터 전송이 가능한 초고속 NFC
- 기기를 키오스크에 갖다 대면 원하는 데이터를 바로 가져가는 기술
- 근거리로 가까이 가면 지이이잉 하고 소리가 난다고 외우면 쉬움
- NGN (Next Generation Network, 차세대 통신망)
- ITU-T에서 개발하고 있는 유선망 기반의 차세대 통신망
- WBAN (Wireless Body Area Network)
- 웨어러블, 몸에 심는 형태의 센서나 기기를 무선 연결
- 스마트 그리드 (Smart Grid)
- 정보 기술을 전력에 접목해 효율성을 높인 시스템, 전력 IT라고도 함
- 전력선을 기반으로 모든 통신, 정보, 관련 애플리케이션 인프라를 하나의 시스템으로 통합
- 효율적인 에너지 관리
네트워크 구축
1. 버스형 (Bus)
- 한 개의 통신 회선에 여러 대의 단말장치 연결
- 물리적 구조 간단
- 단말기 추가 제거 용이
- 단말장치가 고장나도 전체에 영향을 주지 않아 신뢰성이 높음
- 기밀 보장이 어려움, 통신 회선의 길이 제한
2. 링형 (Ring, 루프형)
- Point-to-Point 방식
- 분산 및 집중 제어 가능
- 각 단말장치에서 전송 지연 발생
- 단방향 또는 양방향 가능
- 단방향의 경우 하나만 고장나도 전부 먹통
3. 계층형 (Tree, 분산형)
- 분산 처리 시스템 구성 방식
4. 성형 (Star, 중앙 집중형)
- Point-to-Point 방식
- 단말장치 추가 제거 쉬움
- 하나의 단말장치가 고장나도 괜찮은데 중앙 고장나면 안됨
- 중앙 집중식으로 교환 노드의 수가 적음
5. 망형 (Mesh)
- 많은 단말장치로부터 많은 양의 통신이 필요할 때
- 공중 데이터 통신망에 사용, 통신 회선의 총 경로가 가장 긺
- 통신 회선 장애시 다른 경로를 통해 데이터 전송
- 노드가 $n$개일 때 $\frac{n(n-1)}{2}$ 회선 필요, 노드당 $n-1$개 필요
6. CSMA/CD2
- 데이터 프레임 간의 충돌이 발생하는 것을 인정하고 이를 해소하기 위해 CSMA 방식에 충돌 검출 기능과 충돌 발생시 재송신하는 기능 추가
- 통신 회선이 사용 중이면 일정 시간 동안 대기하고, 통신 회선 상에 데이터가 없을 때만 데이터를 송신, 송신 중에도 전송로의 상태를 계속 감시
- 유선, 감시
7. CSMA/CA3
- 무선 랜에서 데이터 전송 시 매체가 비어있음을 확인한 뒤 충돌을 피하기 위해 일정한 시간을 기다린 후 데이터를 전송
- 회선을 사용하지 않는 경우에도 확인 신호를 전송하여 동시 전송에 의한 충돌 예방
- 무선, 회피
경로 제어 프로토콜 (Routing Protocol)
1. IGP (Interior Gateway Protocol, 내부 게이트웨이 프로토콜)
- RIP (Routing Gateway Protocol)
- 가장 많이 사용하는 라우팅 프로토콜
- 거리 벡터 라우팅 프로토콜이라 불림
- 최단 경로 탐색에 벨만-포드 알고리즘 사용
- 소규모 네트워크에 효율적
- 최대 홉 수를 15홉으로 제한
- OSPF (Open Shortest Path First Protocol)
- RIP의 단점 해결, 대규모 사용
- 최단 경로 탐색에 다익스트라 알고리즘 사용
2. EGP (Exterior Gateway Protocol)
- 자율 시스템 간의 라우팅, 즉 게이트웨어 간의 라우팅에 사용
3. BGP (Border Gateway Protocol)
- 자율 시스템 간의 라우팅 프로토콜, EGP 단점 보안
트래픽 제어
1. 흐름 제어 (Flow Control)
- 네트워크의 패킷의 양이나 속도를 규제하는 기능
- 정지-대기 (Stop-and-Wait)
- 수신 측의 Ack을 받은 후 다음 패킷 전송
- 한번에 하나의 패킷만 전송
- 슬라이딩 윈도우 (Sliding Window)
- 확인 신호를 이용해 송신 데이터 양 조절
- 한번에 여러 개의 패킷을 보내 전송 효율이 좋음
- 수신 측의 신호를 받지 않더라도 미리 정해진 패킷의 수만큼 연속 전송
- 송신 측은 수신 측으로부터 확인 신호(Ack) 없이도 보낼 수 있는 패킷의 최대치를 미리 약속받는데, 이 패킷의 최대치가 윈도우 크기
- 긍정 수신 응답이 전달되면 윈도우 크기 증가
- 부정 수신 응답이 전달되면 윈도우 크기 감소
2. 폭주(혼잡) 제어 (Congestion Control)
- 네트워크 패킷 수를 조절하여 오버플로우 방지
- 느린 시작(Slow Start)
- 윈도우의 크기를
1, 2, 4, 8
과 같이 2배씩 증가시켜 처음에는 느리지만 갈수록 빨라짐
- 전송 데이터 크기가 임계값에 도달하면 혼잡 회피 단계로 넘어감
- 윈도우의 크기를
- 혼잡 회피 (Congestion Avoidance)
- 느린 시작이 임계값에 도달하면 혼잡으로 간주하고 회피를 위해 윈도우의 크기를 1씩 선형적으로 증가시켜 혼잡을 예방
SW 관련 신기술
1. 그레이웨어 (Grayware)
- 유용할 수도, 악의적일 수도 있는 애드웨어, 트랙웨어 같은 프로그램
2. 매시업 (Mashup)
- 웹에서 제공하는 정보 및 서비스를 이용하여 새로운 소프트웨어나 서비스, DB 등을 만드는 기술
3. 증발품 (Vaporware)
- 판매 계획, 배포 계획은 있으나 실제로 판매되지 않은 SW
4. 서비스 지향 아키텍처
SOA: Service Oriented Architecture
- 기업의 소프트웨어 인프라인 정보 시스템을 공유와 재사용이 가능한 서비스 단위나 컴포넌트 중심으로 구축하는 정보 기술 아키텍처
- 기업의 IT 시스템을 유연하게 사용할 수 있음
- SOA 기반 애플리케이션 계층
- 표현 계층
- 업무 프로세스 계층
- 서비스 중간 계층
- 애플리케이션 계층
- 데이터 저장 계층
5. 서비스형 소프트웨어 (SaaS)
- SW의 여러 기능 중, 사용자가 필요로 하는 서비스만 이용할 수 있도록 하는 소프트웨어
- 공급 업체가 하나의 플랫폼을 이용해 다수의 고객에게 소프트웨어 서비스를 제공하고, 사용자는 이용한 만큼의 비용을 지불
6. 디지털 트윈
- 현실 속의 사물을 대신해 모의 실험을 하기 위한 용도로 사용
7. 텐서플로 (TensorFlow)
- 구글 제작
- 다양한 작업에 대해 데이터 흐름 프로그래밍을 위한 오픈소스 라이브러리
- C++ 제작, 구글 검색, 음성 인식, 번역 등에 사용 가능
8. 도커 (Docker)
- 컨테이너 기술을 자동화하여 쉽게 사용할 수 있게 하는 오픈소스 프로젝트
- 컨테이너 안에 프로그램들을 배치시켜 일을 자동화해줌
9. 스크래피 (Scrapy)
- Python 웹 크롤링 프레임워크
보안 관련 신기술
1. 블록체인
- 분산 컴퓨팅 기술 기반의 데이터 위변조 방지 기술
2. 분산 원장 기술
DLT: Distributed Ledger Technology
- 중앙 서버 없이 여러 노드에 데이터를 분산하여 저장하고 관리하는 기술
3. 프라이버시 강화 기술
PET: Privacy Enhancing Technology
- 보안 및 개인 정보 보호를 보장하면서 데이터 공유와 처리를 보장하기 위한 기술의 총칭
4. 양자 암호키 분배
QKD: Quantum Key Distribution
- 양자 통신을 위해 비밀키를 분배/관리하는 기술
5. 비트로커 (Bit Locker)
6. 스비스형 블록체인 (BaaS)
- 블록체인 앱의 개발 환경을 클라우드 기반으로 제공하는 서비스
- 다른 블록체인 기술을 보다 편리하게 사용하게 해줌
7. OWASP
the Open Web Application Security Project, 오픈 웹 애플리케이션 보안 프로젝트
- 보안 취약 부분을 연구하는 비영리 단체
8. TCP 래퍼 (TCP Wrapper)
- 외부 컴퓨터의 접속 여부를 점검하여 허용 및 거부하는 보안 도구
9. 허니팟 (Honeypot)
- 비정상적인 접근을 탐지하기 위해 설치해둔 시스템
10. DPI (Deep Packet Inspection)
- OSI 7 전 계층의 프로토콜과 패킷 내부의 콘텐츠를 파악하여 침입시도, 해킹을 탐지하고 트래픽을 조정하기 위한 패킷 분석 기술
HW 관련 신기술
1. 고가용성 솔루션
HACMP: High Availability Clustering MuliProcessing
- 안정적인 서비스 운영을 위해 장애 발생시, 즉시 다른 시스템으로 대체 가능한 환경을 구축하는 매커니즘
- 각 시스템 간에 공유 디스를 중심으로 클러스터링으로 엮어 다수의 시스템을 동시에 연결
2. RAID
Redundant Array of Inexpensive Disk, Redundant Array of Independent Disk
- 여러 개의 하드디스크로 디스크 배열을 구성하여 파일을 구성하고 있는 데이터 블록들을 서로 다른 디스크에 분산하여 저장할 경우, 그 블록들을 여러 디스크에서 동시에 읽거나 쓸 수 있음
- 디스크 속도 매우 향상
- RAID는 한 디스크에만 문제가 생겨도 전체가 손상됨
- 오류 검출 방법에 따라 RAID 1 ~ RAID 5 5종류가 있음
3. N-Screen
- 여러 개의 서로 다른 단말기에서 동일한 콘텐츠를 자유롭게 보는 것
DB 관련 신기술
1. 빅데이터
- 규모가 크고 다양하며 빠르게 증가하는 데이터 세트
2. 브로드 데이터
- 빅데이터와 달리 다양한 정보를 뜻함, SNS나 위치 정보 등
3. 메타 데이터
- 데이터를 정의하고 설명해주는 데이터
- 주로 빠르게 검색하거나 내용을 간략하고 체계적으로 하기 위해 사용
- 엘라스틱 서치같은 느낌
4. 디지털 아카이빙
- 지속적으로 보존할 가치를 가진 디지털 객체를 장기간 관리하여 이후의 이용을 보장하는 활동
5. 하둡 (Hadoop)
- 오픈소스 기반 분산 컴퓨팅 플랫폼
- 일반 PC급 컴퓨터들로 가상화된 대형 스토리지를 형성, 그 안에 거대한 데이터 세트를 병렬 처리
- 하둡과 RDBMS 간 대용량 데이터를 전송할 떄 스쿱(Sqoop) 사용
6. 맵 리듀스
- 구글에서 대용량 데이터 처리를 분산 병렬 컴퓨팅에서 처리하기 위해 제작, 2004년에 발표한 소프트웨어 프레임워크
7. 타조 (Tajo)
- 한국에서 주도하여 개발
- 아파치 하둡 기반의 분산 데이터 웨어하우스 프로젝트
- 대규모 데이터 처리와 실시간 상호분석에 사용
8. 데이터 다이어트
- 새로운 기준에 따라 나누어 저장하는 작업
- 인터넷과 이동통신 이용이 늘면서 각 기관・기업의 데이터베이스에 쌓인 방대한 정보를 효율적으로 관리하는 방안
9. 데이터 마이닝 (Data Mining)
- 대량의 데이터를 분석하여 데이터 속에 내재되어 있는 변수 사이의 상호관계를 규명하여 패턴화
- 효율적인 데이터 추출 가능
10. OLAP (Online Analytical Processing)
- 다차원으로 이루어진 데이터로부터 통계적인 요약을 분석하여 사용
- OLAP 연산
- Roll-up
- Drill-down
- Drill-through
- Drill-across
- Pivoting
- Slicing
- Dicing
회복 기법
트랜잭션들을 수행하는 도중에 장애가 발생하여 DB가 손상되었을 때 손상 이전으로 복구하는 작업
장애 유형
트랜잭션 장애
시스템 장애
미디어 장애
1. 연기 갱신 기법 (Deferred Update)
- 트랜잭션이 성공적으로 완료될 때까지 DB에 대한 실질적인 갱신을 연기
- 트랜잭션이 수행되는 동안 갱신된 내용은 로그에 보관
- Redo 작업만 가능
2. 즉각 갱신 기법 (Immediate Update)
- 트랜잭션이 데이터를 갱신하면 부분 완료되기 전이라도 즉시 실제 DB에 반영
- Redo와 Undo 사용
3. 그림자 페이지 대체 기법 (Shadow Paging)
- 갱신 이전의 데이터베이스를 일정 크기로 페이지 복사본인 그림자 페이지로 별도 보관, 장애가 발생하여 Rollback할 때 갱신된 이후 실제 페이지 부분에 그림자 페이지를 대체하여 회복
- 로그, Undo, Redo 필요없음
4. 검사점 기법
- 일정 지점부터 회복하는 것
병행 제어 기법
여러 개의 트랜잭션을 병행 수행할 때, 동시에 실행되는 트랜잭션들이 데이터베이스의 일관성을 파괴하지 않도록 트랜잭션 간의 상호작용을 제어하는 것
목적
데이터베이스의 공유 최대화
시스템의 활용도 최대화
데이터베이스의 일관성 유지
사용자 응답 시간 최소화
1. 로킹 (Locking)
- 주요 데이터의 액세스를 상호 배타적으로 하는 것
- 트랜잭션들이 어떤 로킹 단위를 액세스하기 전에 Lock(잠금)을 요청해서 Lock이 허락되어야 그 로킹 단위를 액세스할 수 있음
2. 타임 스탬프 순서 (Time Stamp Ordering)
- 직렬성 순서를 결정하기 위해 트랜잭션 간의 처리 순서를 미리 선택
- 가장 보편적
- 교착 상태가 발생하지 않음
3. 최적 병행수행 (검증 기법, 확인 기법, 낙관적 기법)
- 트랜잭션이 Read Only일 경우, 충돌률이 매우 낮아서 병행제어 기법을 사용하지 않아도 일관성 있게 유지됨
4. 다중 버전 기법
- 타임 스탬프 기법을 이용, 다중 버전 타임 스탬프 기법이라고도 함
- 타임 스탬프가 시간표를 이용한다면, 다중 버전은 버전을 이용함
로킹 단위
병행제어에서 한꺼번에 로킹할 수 있는 객체의 크기
DB, 파일, 레코드, 필드 등이 로킹 단위가 될 수 있음
로킹 단위가 크면(↑) 로크 수가 작아(↓) 관리하기 쉽지만 병행성 수준이 낮아짐
로킹 단위가 작으면(↓) 로크 수가 많아(↑) 관리하기 복잡해 오버헤드 증가, 병행성 수준이 높아짐
교착 상태 (Dead Lock)
1. 교착 상태 필요 충분 조건
- 상호 배제 (Mutual Exclusion)
- 한 번에 한 개의 프로세스만 공유 자원을 사용할 수 있어야 한다.
- 점유와 대기 (Hold and Wait)
- 최소 하나의 자원을 점유하고 있으면서 다른 프로세스에 할당되어 있는 자원을 추가로 점유하기 위해 대기하는 프로세스가 존재해야 한다.
- 비선점 (Non-preemption)
- 다른 프로세스에 할당된 자원은 사용이 끝날 때까지 강제로 빼앗을 수 없어야 한다.
- 환형 대기 (Circualr Wait)
- 공유 자원과 공유 자원을 사용하기 위해 대기하는 프로세스들이 원형으로 구성되어 있어, 자신에게 할당된 자원을 점유하면서 앞이나 뒤에 있는 프로세스의 자원을 요구해야 한다.
2. 교착 상태의 해결 방법
- 예방 기법 (Prevention)
- 교착 상태가 발생하지 않도록 사전에 시스템을 제어
- 교착 상태 발생의 4가지 조건 중, 어느 하나를 제거하여 수행
- 자원의 낭비가 가장 심함
- 회피 기법 (Avoidance)
- 교착 상태가 발생할 가능성을 배제하지 않고 교착 상태가 발생하면 적절히 회피하는 방법
- 은행원 알고리즘6 사용 (Banker’s Algorithm)
- 발견 기법 (Detection)
- 시스템에 교착 상태가 발생했는지 점검하여 교착 상태에 있는 프로세스와 자원을 발견하는 것
- 교착 상태 발견 알고리즘과 자원 할당 그래프 사용
- 회복 기법 (Recovery)
- 교착 상태를 일으킨 프로세스를 종료하거나 교착 상태의 프로세스에 할당된 자원을 선점하여 프로새스나 자원을 회복하는 것
참고 사이트
RFID (Radio-Frequency Identification): 무선 주파수를 이용하여 사물에 부착된 태그를 인식하는 기술 ↩︎ ↩︎2
Carrier Csese Muliple Access/Collision Detection ↩︎
Carrier Csese Muliple Access/Collision Avoidance ↩︎
TPM(Trusted Platform Module, 신뢰할 수 있는 플랫폼 모듈): 보안 암호화 프로세서에 관한 국제 표준을 말하며, 암호화 키들을 통합하여 관리하기 위해 설계된 전용 마이크로컨트롤러(칩)을 말함 ↩︎
고급 암호 표준(Advanced Encryption Standard)의 한 종류로, 128비트 키를 사용하여 데이터를 암호화하는 대칭 키 암호화 알고리즘 ↩︎
다익스트라, 은행에서 모든 고객의 요구가 충족되도록 현금을 할당하는데서 유래 ↩︎