Chapter 06 이더넷과 LAN 프로토콜
 1. LAN 프로토콜과 그 특성
 2. IEEE 802.3 LAN 프로토콜
 3. 고속 이더넷 기술

Chapter 06 이더넷과 LAN 프로토콜
 1. LAN 프로토콜과 그 특성
   LAN 프로토콜인 IEEE 802.3 LAN(이더넷) 프로토콜

  1.1 LAN 프로토콜 구조

   
· LAN(Local Area Network)이란?
    하나의 빌딩이나 대학 캠퍼스 정도의 범위 내에 있는 개인용 컴퓨터, 서버, 프린터, 라우터, 워크스테이션 등이 상호연결되어 구성된 네트워크 시스템을 일컫는다.
   
· LAN 기술 이더넷(Ethernet)
    IEEE 802.3 표준안으로 승인된 기술

   · LAN 프로토콜
    · IEEE 802.3 CSMA/CD
    · IEEE 802.5 토큰 링(token ring) 표준
    · IEEE 802.4 토큰 버스(token bus) 표준

   · IEEE 802 LAN 표준의 계층구조


    
    ·
물리 계층, 데이터링크 계층, 응용 계층 등 3가지 계층만을 갖는 구조로 구성
    · 그래서 보완책으로 데이터 링크 계층의 기능을 강화하여 보다 구체적으로 정의할 필요성에 따라 MAC 부계층과 LLC 부계층으로 나누어 구현

    · 물리 계층: 전기, 기계적인 특성에 대한 표준을 정의
    · 데이터 링크: 오류 없이 패킷을 전송하는 기능을 수행
    
· 데이터링크 계층의 부계층
     
· MAC(Media Access Control): 공유미디어에 대한 접근의 조정 기능
     
· LLC(Logical Link Control): 공유미디어에 대한 접근 감독 기능

  1.2 LAN 토폴로지(topology)
    
· 성형 토폴로지
    
· 버스형 토폴로지(기본)
    
· 링형 토폴로지
    
    
▶ 성형 토폴로지


     · 중앙 노드에 직접 연결되는 형태
     · 어느 한 노드에서의 데이터 전송은 중앙 노드로 전송되고, 중앙 노드에서 다시 다른 모든 링크로 재전송된다.
     · 논리적으로는 버스형 토폴로지와 유사하다.

     · 장점
      각 노드에서의 연결은 하나의 링크와 I/O 포트만을 요구하므로 설치비용이 저렴
      하나의 링크가 끊어져도 이는 다른 링크에 영향을 주지 않으므로 안정성 측면에서 유리
      접속하는 링크가 서로 독립적이어서, 노드의 확장성 측면에서 유리

     
· 단점
      중앙 노드에 문제가 발생하면 네트워크 전체에 영향
      버스형이나 링형에 비해 연결에 필요한 링크의 수가 증가
      데이터 양이 증가하면 지연시간이 길어짐

    ▶ 버스형 토폴로지


     · 모든 노드가 선형의 링크에 직접 연결되는 형태
     · 링크의 시작과 끝에는 종단장치(terminator)가 부착되어 전송신호의 순환을 방지
     · 링크에 연결된 노드가 전송을 하면 브로드캐스트(방송) 형태가 되어, 연결된 모든 노드들에 의해 수신

     · 장점
      · 설치가 간단, 비용이 저렴
      · 확장성이 양호, 한 노드의 오류가 다른 노드에 영향을 주지 않음(안전성)
      · 연결에 필요한 링크의 길이가 최소화

     · 단점
      · 노드 수가 증가하면 네트워크 성능이 떨어짐
      · 유도선이 아닌 링크에 문제가 발생하면 네트워크 전체에 문제가 생김
      · 링크의 길이가 길어지면 신호의 감쇄현상으로 중계기(repeater)를 사용해야 한다.
      · 둘 이상의 노드가 동시에 신호를 전송하게 되면 충돌 현상이 발생한다. 따라서 데이터양이 많아지거나 노드 수가 증가하면, 충돌 현상이 빈번해져서 네트워크의 성능이 떨어진다.

    ▶ 링형 토폴로지

     · 닫힌 원의 형태로 구성, 이때 링크는 한쪽 방향으로만 전송이 가능하도록 설정
     · 전송 측 및 목적지 주소, 그리고 여러 제어정보가 들어있는 데이터 패킷이 링을 따라 순환하다가 목적지 노드에 도착하면, 해당 노드는 패킷의 데이터 영역의 값을 버퍼(buffer)에 복사해서 처리하게된다.
     · 패킷은 링을 따라 계속 돌다가 전송 측 노드에서 제거된다.

     · 장점
      · 구조가 간단하여 설치와 재구성이 쉽다.
      · 성형보다 링크의 길이를 줄일 수 있어 경제적
      · 링크로 보내진 신호는 순환되어 모든 노드를 거치므로, 어느 노드에 문제가 발생하면 그 위치를 파악하기 쉬움
      · 문제 발생 시 링을 신속하게 복구할 수 있다.

     
· 단점
      · 제어 절차가 복잡
      · 한 노드의 오류는 링 전체에 영향을 미친다.

  1.3 LAN의 특성
   · 처리율
   · 시간지연성
   · 보안성과 신뢰성

   ▶ 처리율
    단위시간당 링크가 처리할 수 있는 데이터양
   ▶ 시간지연성
    하나의 패킷이 전송 측 네트워크 인터페이스로부터 목적지 컴퓨터까지 전송되는 데 걸리는 시간
   ▶ 보안성과 신뢰성
    보안성은 외부로부터 발생되는 사이버 위협이나 공격으로부터 시스템을 보호하거나, 혹은 데이터의 유출에 대처하는 것과 관련됨
    신뢰성은 노드나 링크에 이상이 발생했을 경우 동작이 중지되지 않고 계속 유지될 수 있도록 하는 특성

 2. IEEE  802.3 LAN 프로토콜
  이더넷은 MAC(Media Access Control) 프로토콜로 CSMA / CD 방식을 사용한다.

  2.1 CSMA 방식
   · 데이터 전송을 원하는 호스트 컴퓨터(이하 스테이션으로 표현)가 전송채널을 감지(Sensing)하여 사용 가능 여부를 진단
     즉, CSMA방식은 경쟁(contention)을 기반으로 하는 전송 방식


  2.2 CSMA / CD 방식
   · LWT(Listen While Talk)방식
   · CSMA에서 두 데이터 패킷 사이에 충돌이 발생하면, 그 결과 전송지연이 발생하게 되어 처리율이 저하
   · CSMA / CD에서는 데이터 전송 중에 계속해서 전송미디어를 검사함으로써(LWT방식) 충돌에 의한 전송 지연을 줄인다.

   즉, 데이터 전송 중에도 충돌 감지(Collision detection) 프로세스를 수행하여 충돌을 신속하게 감지한다.
   만일 충돌이 감지되면, 프레임 전송을 즉시 중단시켜 효율성을 향상시킨다.

   
· 데이터를 전송하는 도중 충돌을 감지하면, 짧은 신호를 보내서 모든 스테이션에 충돌이 일어난 것을 알린다.
   · 짧은 신호란 32비트 크기의 임의의 데이터의 충돌신호(재밍신호)를 뜻한다.
   · 충돌 신호를 보낸 다음 임의의 시간, 즉 대기시간을 기다린 후에 CSMA를 사용하여 재전송을 시도한다.
   · 결과적으로 충돌을 감지할 때까지만 시간 낭비가 발생한다.
   
· 충돌이 감지되면 재밍 신호를 통해 모든 스테이션에 충돌이 일어난 것을 알리고, 각 스테이션을 임의 시간 동안 기다린 후에 이진지수 백오프 과정에 의해 재전송을 시도한다.


  2.3 IEEE 802.3 프레임 구조

    · 프리앰블(Preamble)
     프레임의 처음에 위치
     각 MAC 장치의 수신회로가 실제 프레임의 내용을 수신하기 전에 비트 동기화 수행
     '10101010'과 같은 7개의 옥텟(octet)의 일련변호 패턴을 갖는다.
     
     
· SFD(Start of Frame Delimiter)
      비트 패턴은 '1010111'로서 프레임의 시작을 수신측에 알린다.

     
· DA(Destination MAC Address)목적지 주소, SA(Source MAC Address)전송 측 주소
      48비트로 구성되어 목적지 주소의 첫 번째 비트는 개별 주소인지 그룹에 속한 주소인지 알려줌
      만약 방송형인 경우 주소 영역의 모든 비트가 1이 되도록 한다.

     
· 길이 표시자(Length)
      데이터 영역의 바이트 수를 표시
     
     · 유료부하(Payload)
      사용자 데이터로 채워진다. 최대값은 1500바이트
     
     
· FCS(Frame Check Sequence)
      오류 검출을 위한 CRC(Cyclic Redundancy Check)코드값이다.

     
· IEEE 802.3의 전송라인


 3. 고속 이더넷 기술
  
  3.1 프레임의 구성요소

   · 목적지 주소 영역 : 프레임을 받게 되는 노드의 주소
   · 전송 측 주소 영역 : 프레임을 보내는 노드의 주소
   · L / T (Length / Type): 데이터가 보내지는 형태
   
· FCS(Frame Check Sequence)영역 : 프레임이 목적지 노드에 정확하게 전송되었는지를 확인해주는 부분

   

   · I / G 비트 :  개별 또는 그룹 주소 표시 영역
     0 → 개별 주소(MAC 주소)
     1 → 그룹 주소(멀티캐스트 주소, 기능 주소)
   
· U / L 비트 : 범용 또는 지역관리 표시 영역
   
· OUI(Organizationally Unique Identifier)
    IEEE에서 네트워크 어댑터의 제조업자와 인터페이스 제조업자에게 할당해준다.
   
· OUA(Organizationally Unique Addreses)
    제조회사가 노드에 지정할 수 있는 주소를 나타내는 숫자


  3.2 프레임 세부사항
   · 동작원리
    
   · 고속 이더넷 리피터
    리피터(repeater)는 거리가 증가함에 따라서 감쇄되는 신호를 재생시키는 장치

Chapter 03 네트워크 보안

01. 네트워크에 대한 이해
    01. (1계층) 물리 계층
    02. (2계층) 데이터 링크 계층
    03. (3계층) 네트워크 계층
    04. (4계층) 전송 계층
    05. (5계층) 세션 계층
    06. (6계층) 표현 계층
    07. (7계층) 응용 프로그램 계층

02. 서비스 거부(DoS) 공격
    01. 취약점 공격형
    02. 자원 고갈 공격형
    03. 분산 서비스 거부(DDoS) 공격

03. 스니핑 공격
    01. 스니핑의 원리
    02. 스위치 재밍 공격
    03. SPAN 포트 태핑 공격
    04. 스니퍼의 탐지

04. 스푸핑 공격
    01. ARP 스푸핑 공격
    02. IP 스푸핑 공격
    03. ICMP 리다이렉트 공격
    04. DNS 스푸핑 공격

05. 세션 하이재킹 공격

06. 무선 네트워크 공격과 보안
    01. AP보안
    02. 무선 랜 통신 암호화
    03. EAP와 802.1x의 암호화

Chapter 03. 네트워크 보안
  Section 01. 네트워크에 대한 이해
    - OSI 7계층
      
· 국제표준화기구(ISO: International Organization for Standardization)는 다양한 네트워크의 호환을 위해 OSI 7계층이라는 표준 네트워크 모델을 만들었다.
      
1계층(물리 계층, Physical Layer)
        
· 실제 장치들을 연결하기 위한 전기적·물리적 세부 사항을 정의한 계층
      
② 2계층(데이터 링크 계층, Data Link Layer)
        
· 포인트 투 포인트(Point to Point) 간 신뢰성 있는 전송을 보장하기 위한 계층
      
③ 3계층(네트워크 계층, Network Layer)
        
· 여러 개의 노드를 거칠 때마다 경로를 찾아주는 역할을 하는 계층.
        · 다양한 길이의 데이터를 네트워크들을 통해 전달하고, 전송 계층이 요구하는 서비스 품질(QoS)을 제공하기 위한 기능적·절차적 수단을 제공하는 계층
      ④ 4계층(전송 계층, Transport Layer)
        · 양 끝단(End to end)의 사용자들이 신뢰성 있는 데이터를 주고받을 수 있도록 함으로써 상위 계층들이 데이터 전달의 유효성이나 효율성을 신경쓰지 않게 해주는 계층
      ⑤ 5계층(세션 계층, Session Layer)
        · 양 끝단의 응용 프로세스가 통신을 관리하기 위한 방법을 제공하는 계층
      ⑥ 6계층(표현 계층, Presentation Layer)
        · 코드 간의 번역을 담당하여 응용 계층으로부터 사용자 시스템에서 데이터의 형식상 차이를 다루는 부담을 덜어주는 계층
      ⑦ 7계층(응용 프로그램 계층, Application Layer)
        · 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행하는 계층

    1. 물리 계층(1계층)
      - 전자 파장을 전달하는 공간 자체
      - 게이블 선의 분류
        
· UTP(Unshielded Twisted Pair)
        · FTP(Foil Screened Twisted Pair Cable)
        · STP(Shielded Twisted Pair Cable)

    2. 데이터링크(2계층)
      - 두 포인트(Point to Point)간 신뢰성 있는 전송을 보장
      - CRC 기반의 오류 제어 및 흐름제어 필요
      - 네트워크 위의 개체들 간 데이터를 전달
      - 물리 계층에서 발생할 수 있는 오류를 찾아내며 수정하는데 필요한 기능적
·절차적 수단을 제공
      -
상호 통신을 위한 MAC 주소를 할당
      - MAC주소 확인 (ipconfig /all)
      - MAC 주소는 총 12개의 16진수 숫자로 구성
      - 앞쪽 6개는 16진수 네트워크 카드를 만든 회사를 나타내는 것(OUI: Organizational Unique Identifier)
      - 뒷쪽 6개의 16진수는 각 회사에서 임의로 붙이는 일종의 시리얼을 나타내는 것으로 Host Identifier라고 한다.
      - 데이터 링크 계층의 대표적인 네트워크 장비: 스위치(Switch)
      - MAC 계층에서 동작하는 대표적인 프로토콜: 이더넷(Ethernet)

요약

01. OSI 7계층
    ① 1계층(물리 계층, Physical Layer): 시스템 간의 연결로 전자 파장을 전달하는 공간 자체, 즉 랜 선 등을 말함

    ② 2계층(데이터 링크 계층, Data link layer): 두 포인트(Point to Point) 간 신뢰성 있는 전송을 보장하기 위한 계층. 주소로서 MAC 주소를 사용하며, MAC 주소는 총 12개의 16진수 숫자로 구성됨

    ③ 3계층(네트워크 계층, Network layer): 여러 개의 노드를 거칠 때마다 경로를 찾아주는 역할을 하는 계층. 다양한 길이의 데이터를 네트워크를 통해 전달하고, 전송 계층이 요구하는 서비스 품질(QoS)을 제공하기 위한 기능적·절차적수단을 제공함

    ④ 4계층(전송 계층, Transport layer): 양 끝단(End to End)의 사용자들이 신뢰성 있는 데이터를 주고받을 수 있도록 해줌으로써, 상위 계층들이 데이터 전달의 유효성이나 효율성을 생각하지 않도록 해줌

    ⑤ 5계층(세션 계층, Session layer): 양 끝단의 응용 프로세스가 통신을 관리하기 위한 방법을 제공함

    ⑥ 6계층(표현 계층, Presentation layer): 코드 간의 번역을 담당하는 계층. 사용자 시스템에서 데이터의 구조를 통일하여 응용 계층에서 데이터 형식 차이로 발생하는 부담을 덜어줌

    ⑦ 7계층(응용 프로그램 계층, Application layer): 사용자나 응용 프로그램 사이에 데이터의 교환이 가능하게 하는 계층. 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행함

02. TCP 3-웨이 핸드셰이킹(3-way handshaking)과 연결 해제 과정
    



03. 서비스 거부 공격(DoS: Denial of Service)

    ① 취약점 공격형: 공격 대상이 특정 형태의 오류가 있는 네트워크 패킷의 처리 로직에 문제 있을 때 그럿을 이용하여 공격 대상의 오동작을 유발시키는 공격
        - Boink, Bonk, TearDrop 공격: UDP, TCP 패킷의 시퀀스 넘버를 조작하여 공격 시스템에 과부하를 일으킨다.
        - Land 공격: 출발지 주소와 도착지 주소가 같은 패킷을 공격 시스템에 보내 공격 시스템의 가용 사용자를 점유하며 시스템의 부하를 높인다.

    ② 자원 고갈 공격형: 네트워크 대역폭이나 시스템의 CPU 세션 등의 자원을 소모시키는 공격
        - Ping of Death 공격: ICMP 패킷을 일반보다 훨씬 큰 65,500바이트의 크기로 보내, 하나의 패킷이 네트워크를 통해 공격 대상에게 전달되는 동안 여러 개의 IMCP 패킷으로 나우어져 공격 시스템에 과부하를 일으키게 한다.
        - SYN Flooding 공격: TCP 프로토콜의 구조적인 문제를 이용한다. SYN 패킷만 보내어 각 서버의 동시 가용 사용자 수를 점유하여 다른 사용자가 서버를 사용할 수 없게 한다.
        - HTTP Get Flooding 공격: 피공격 시스템에 TCP 3-웨이 핸드셰이킹 과정을 통해 정상적으로 접속한 뒤 특정한 페이지를 HTTP의 GET Method를 통해 무한대로 실행한다.
        - HTTP CC 공격: 자주 변경되는 데이터에 대해 새롭게 HTTP 요청 및 응답을 요구하기 위하여 웹 서버가 캐시(Cache) 기능을 사용하지 않게 사용하여 웹 서비스의 부하가 증가시킨다.

        - 동적 HTTP Request Flooding 공격: 지속적으로 요청 페이지를 변경해 웹 페이지를 요청하여 웹 서비스의 부하를 증가시킨다.
        - Smurf 공격: 출발지 주소가 공격 대상으로 바뀐 ICMP  Request 패킷을 시스템이 충분히 많은 네트워크로 브로드캐스트한다. ICMP Request  패킷을 받은 사람들이 공격 대상에게 ICMP Reply를 보내게 하여 공격 대상을 과부하 상태로 만든다.
        - Mail Bomb 공격: 스팸을 이용한 대량 메일을 전송한다.

    ③ 분산 서비스 거부(DDoS: Distributed Denial of Service) 공격: 공격자가 한 지점에서 서비스 거부 공격을 수행하는 형태를 넘어 광범위한 네트워크를 이용하여 다수의 공격 지점에서 동시에 한 곳공격하도록 하는 형태의 분산 서비스 거부 공격이다. 자동화된 툴을 이용하며 공격(Attacker), 마스터(Master), 에이전트(Agent)로 구성된 메커니즘을 통해 Dos공격을 증폭된 형태로 실시한다.

04. 스니핑 공격(Passive)
    
① 스니핑 공격: 일반적으로 작동하는 IP 필터링과 MAC 주소 필터링을 수행하지 않고, 랜 카드로 들어오는 전기 신호를 모두 읽어들여 다른 이의 패킷을 관찰하여 정보를 유출시킨다.
    ② 스니퍼 탐지 방법
        - Ping을 이용한 방법:
자신에 해당하지 않는 ping에도 ICMP Echo Reply를 되돌려 보낸다.
        - ARP를 이용한 방법: 위조된 ARP Request를 보냈을 때 ARP Response를 되돌려 보낸다.
        - DNS를 이용한 방법: 스니핑한 시스템의 IP 주소에 Inverse-DNS lookup을 수행한다.
        - 유인(Decoy) 방법: 가짜 ID와 패스워드를 네트워크에 뿌려 이를 이용하여 접속을 시도하는 공격자 시스템을 탐지한다.
        - ARP watch를 이용한 방법: MAC 주소와 IP 주소의 매칭 값을 초기에 저장하고 ARP 트래픽을 모니터링하여 이를 변하게 하는 ARP 패킷을 탐지

05. 스푸핑 공격
    - ARP 스푸핑 공격: 로컬에서 통신하고 있는 서버와 클라이언트의 IP주소에 대한 2계층 MAC주소를 공격자의 MAC 주소로 속여, 클라이언트에서 서버로 가는 패킷이나 서버에서 클라이언트로 가는 패킷이 공격자에게 향하도록 함으로써 랜에서의 통신 흐름을 왜곡시킨다. 공격자는 이 패킷을 확인한 후 원래의 목적지로 향하도록 다시 돌려보내 연결이 유지되는 공격이다.
    - IP 스푸핑 공격: 트러스트 관계가 맺어져 있는 서버와 클라이언트를 확인한 후 클라이언트에 DoS 공격을 하여 연결을 끊고, 공격자가 클라이언트의 IP 주소를 확보하여 서버에 실제 클라이언트처럼 패스워드 없이 접근하는 공격이다.
    - ICMP 리다이렉트 공격: 3계층에서 스니핑 시스템이 네트워크에 존재하는 또 다른 라우터라고 알림으로써 패킷의 흐름을 바꾸는 공격이다.
    - DNS 스푸핑 공격: 실제 DNS 서버보다 빨리 공격 대상에게 DNS Response 패킷을 보내 공격 대상이 잘못된 IP 주소로 웹 접속을 하도록 유도하는 공격이다.

06. 세션 하이재킹 공격
    - 두 시스템 간 연결이 활성화된 상태, 즉 로그인된 상태를 가로채는 것을 말한다. 서버와 클라이언트가 TCP를 이용해서 통신을 하고 있을 때, RST 패킷을 보내 일시적으로 TCP 세션을 끊고 시퀀스 넘버를 새로 생성해 세션을 빼앗아 인증을 회피하는 공격이다.

07. 무선 네트워크 보안: 물리적인 보안 및 관리자 패스워드를 변경한다.
    - SSID(Service Set Identifier) 브로드캐스팅을 금지한다.
    - WEP(Wired Equivalent Privacy) 암호화: 128비트 키까지 암호화 키를 제공한다.
    - WPA, WPA-PSK(WiFi Protected Access-Pre Shared Key) 암호화: WEP의 취약점으로 인해 더욱 발전된 암호화 방식을 제공한다.
    - EAP와 802.1X: EAP는 무선 랜 클라이언트와 RADIUS(Remote Authentication Dial-in User Service) 서버간의 통신을 가능하게 하는 프로토콜이며, 802.1X는 포트에 대한 접근을 통제하는 프로토콜이다.

(RADIUS와 802.1x를 이용한 무선 랜 인증)

(중간고사 범위 1 ~ 3장: 유닉스 제외)

연습문제

Chapter 01 정보 보안의 세계

01. 해킹과 보안의 역사

01. 1950 년대 이전
02. 1960 년대
03. 1970 년대
04. 1980 년대
05. 1990 년대
06. 2000 년대
07. 2010 년대

02. 보안의 3대 요소

01. 기밀성
02. 무결성
03. 가용성

03. 보안 전문가의 자격 요건

01. 윤리 의식
02. 다양한 분야에 대한 전문성

04. 보안 관련 법

01. 정보통신망 이용촉진 및 정보보호 등에 관한 법률
02. 정보통신 기반 보호법
03. 개인정보 보호법
04. 통신비밀 보호법
05. 저작권법

Chapter 01 정보 보안의 세계

요약

1. 해킹의 정의
    - 남의 컴퓨터 시스템에 침입하여 장난이나 범죄를 저지르는 일
    - 컴퓨터 조작을 즐기기, 무엇이나 숙고하지 않고 실행하기
    - 해킹은 디자이너가 의도하지 않았던 방법으로 시스템의 특성이나 규칙을 이용한 창조적인 사용법을 찾는 것

2. 해킹과 보안의 역사
    - 1950 년대 이전: 암호화 기계 애그니마, 최초의 컴퓨터 콜로서스, 콜로서스의 발명자이자 최초의 해커인 알란 튜링, TMRC에서 해킹의 의미로 처음 단어를 사용
    - 1960 년대: 최초의 미니 컴퓨터 PDP-1, 최초의 컴퓨터 연동망(네트워크) ARPA, 유닉스 운영체제의 개발, 전화망 침입을 통한 무료 장거리 전화 해킹
    - 1970 년대: 최초의 이메일 전송, 마이크로소프트의 설립, 최초의 데스크톱 솔, 애플 컴퓨터의 탄생, C언어의 개발
    - 1980 년대: 베이직과 도스의 개발, 네트워크 해킹의 시작, 카오스 컴퓨터 클럽, GNU, 리처드 스톨만, 해커 잡지 PHRACK과 2600, 케빈 미트닉, 모리스 웜, 해커 선언문 등
    - 1990 년대: 해킹 대회 데프콘, 리눅스 0.01, 윈도우 NT 3.1, 리눅스 FreeBSD 1.0, 인터넷 브라우저 넷스케이프, 트로이 목마, 백 오리피스 등
    - 2000 년대: 야후, CNN, 아마존 등의 사이트 마비, 2003년 슬래머 웜으로 인한 인터넷 대란, 베이글 웜, 마이둠 웜, 넷스카이 웜, 개인정보 유출과 도용, 전자상거래 교란, 금융 해킹 등
    - 2010 년대: 농협 사이버테러, 지능적 지속 위협(APT) 공격, 해킹 도구이자 해킹의 대상인 스마트폰

3. 보안의 3대 요소
    - 기밀성(Confidentiality): 인가(authorization)된 사용자만이 정보 자산에 접근할 수 있도록 하는 것
    - 무결성(Integrity): 적절한 권한을 가진 사용자에 의해 인가된 방법으로만 정보를 변경할 수있도록 하는 것
    - 가용성(Availability): 정보 자산에 대해 필요한 시점에 접근 가능하도록 하는 것

4. 보안 전문가가 갖춰야 할 기초 소양: 윤리 의식
    - 진정한 정보 보안 전문가는 올바른 윤리 의식을 반드시 가지고 있어야 한다.

5. 보안 전문가의 자격 요건: 다양한 분야에 대한 전문성
    - 운영체제:
        보안 전문가가 갖춰야 할 가장 기본적인 지식이다.
    - 네트워크:
        TCP/IP 프로토콜의 동작에 대해 깊이 정확하게 이해할 필요가 있다.
    - 프로그래밍:
        C 언어 프로그래밍과 객체 지향 프로그래밍의 개념과 HTML에 대한 이해가 필요하다.
    - 서버:
        웹, 데이터베이스, WAS, FTP, SSH, Telnet 등의 설치와 기본적인 설정, 인증 및 접근 제어, 암호화 수준과 여부를 이해해야 한다.
    - 보안 시스템:
        방화벽, 침입 탐지 시스템, 침입 방지 시스템, 단일 사용자 승인(SSO), 네트워크 접근제어 시스템(NAC), 백신의 기본 보안 통제와 적용 원리, 네트워크상에서 구성, 운영 목적등을 이해해야 한다.
    - 암호:
        암호와 해시의 차이, 대칭키 알고리즘과 비대칭키 알고리즘의 종류와 강도, 공개키 기반 구조에 대한 이해가 필요하다.
    - 정책과 절차:
        조직적인 보안 관리를 위해 정책과 업무 절차, 보안 거버넌스(Governance)와 같은 주제를 이해해야 한다.

6. 보안 관련 법률
    - 정보통신망 이용촉진 및 정보보호 등에 관한 법률: 안전한 정보통신망 환경을 조성하는 것을 목적으로 하는 법률로서 정보통신과 관련한 법률
    - 정보통신 기반 보호법: 국가의 주요 정보통신 기반시걸의 안전을 위해 만들어진 법
    - 개인정보 보호법: 여러 법에 나누어 규정되던 개인정보 보호와 관련된 사항을 하나로 모아 만든 법안(개인정보의 수집, 이용, 제공 등에 대한 내용)
    - 통신비밀 보호법: 음성 통화 및 데이터 통신 관련 비밀 보호법
    - 저작권법: 저작자의 권리와 이에 인접하는 권리를 보호하고 저작물의 공정한 이용을 위한 목적으로 제정된 법

연습문제

Chapter 05 네트워크 계층과 라우팅 기법
 1. 네트워크 계층과 라우팅 프로토콜
  1.1 네트워크 계층과 라우팅
  1.2 라우팅 알고리즘 설계 시 요구사항
  1.3 라우팅 기법의 분류
  1.4 영역에 따른 라우팅 프로토콜의 분류

 2. 거리벡터와 링크상태 알고리즘
  2.1 거리벡터 알고리즘
  2.2 링크상태 알고리즘
  2.3 거리벡터와 링크상태 방식의 장단점 비교

Chapter 05. 네트워크 계층과 라우팅 기법

 학습목표

 ▶ 네트워크 계층의 기능
 
▶ 라우팅 기법에 대한 기본개념
 ▶ 라우팅 기법의 구조 및 동작
 ▶ 거리벡터(distance vector) 방식 vs 링크상태(link state) 방식의 알고리즘 구조와 특성
 ▶ 기본적인 라우팅 알고리즘 설계 시 고려사항과 구축사례
 ▶ 인터넷 라우팅 프로토콜을 중심으로 도메인 내(intra-domain) 라우팅 프로토콜에 해당하는 OSPF와 거리벡터에 근거한 RIP와 RIPv2의 구조 및 동작

 5.1 네트워크 계층과 라우팅 프로토콜

  5.1.1 네트워크 계층과 라우팅 
   - 네트워크 계층의 주된 역할
    데이터 패킷을 전송 측에서 목적지까지 보내는 것
   - 
'라우팅(routing)' 기능
    전송 측에서 목적지 호스트까지 데이터 패킷이 거쳐가는 최적의 경로를 선택하여 배정하는 기능
   - 라우터란?
    라우터는 라우팅 기능으로 수행하는 장치로, 라우팅 정보를 참조하여 경로를 설정한 다음 데이터 패킷을 중계함으로써 서로 다른 네트워크들을 연결한다.
    전송 측에서 보내 라우터에 도착한 패킷의 목적지 주소 라우팅 테이블의 값비교하여, 그 다음에 보낼 경로를 따라서 이에 상응하는 인터페이스로 패킷을 내보내는 역할을 한다.
   - 라우팅 테이블의 구성요소

    네트워크주소(목적지 주소), 매트릭(목적지까지의 소요 비용), 다음 라우터 혹은 다음 게이트웨이, 그리고 인터페이스에 관한 내용 등이 들어있다.
   - 라우팅 알고리즘 설계시 요구사항 4가지
    최적성
    단순성
    안정성
    유연성

  5.1.2 라우팅 기법의 분류
   - 라우팅 프로토콜
    라우터들 사이에서 라우팅 테이블을 작성하고 제어하는 절차를 규정하는 것
    (라우터가 갖고 있는 정보를 인접한 다른 라우터들과 주고받을 수 있도록 하는 것)
   - 정적 라우팅 기법
    입력된 라우팅 정보가 재입력을 하기 전까지이전의 값이 변하지 않고 고정된 값을 유지하는 라우팅 기법
    정적 라우팅 기법은 관리자가 수동적으로 라우팅 테이블을 관리하는 방법으로, 규모가 작은 네트워크에서 주로 사용
   - 동적 라우팅 기법
    인접한 라우터들 사이에서 네트워크 정보를 교환하고, 라우팅 테이블을 자동으로 작성하도록 하는 것
   - 디폴트 라우팅 기법
   
라우팅 테이블에 등록되어 있지 않는 주소를 갖는 패킷들을 디폴트 라우터가 지정한 경로전송하는 것

  5.1.3 영역에 따른 라우팅 프로토콜의 분류 (3가지)
    - AS(Autonomous System 자치 시스템)
     동일한 라우팅 프로토콜을 사용하는 네트워크

    - IGP(Interior Gateway Protocol 역내 게이트웨이 프로토콜)
     자치 시스템(AS) 내부의 라우터들끼리 라우팅 정보를 교환하는 데 사용되는 라우팅 프로토콜
      * 주요 프로토콜 
       RIP(Routing Information Protocol 경로설정 정보 프로토콜)
       IGRP(Interior Gateway Routing Protocol 경로설정 정보 프로토콜)
       OSPF(Open Shortest Path First 최단 경로 우선 프로토콜)

    - EGP(Exterior Gateway Protocol 역외 게이트웨이 프로토콜)
     자치 시스템(AS) 상호 간에 라우팅 정보를 교환하는 데 사용되는 프로토콜
      * 주요 프로토콜
       BGP(Border Gateway Protocol 경계 경로 프로토콜)

 5.2 거리벡터와 링크상태 알고리즘
  5.2.1 거리벡터 알고리즘(Distance Vector Algorithm)
   - 각 라우터가 인접해 있는 라우터와 경로설정정보를 교환하여 네트워크의 구성이나 장치 배치에 관한 정보, 즉 네트워크 토폴로지에 관한 정보교환하는 구조를 취한다.
   - 새로운 정보를 받을 때마다 인접한 라우터에 그 정보를 알려주고, 이것을 반복하여 최종으로 모든 라우터가 네트워크 전체의 정보를 갖게 됨
   - 교환되는 정보기본적으로 거리 정보이기 때문에 단순하고 다루기 쉬운 반면, 장애 등의 원인을 알라내기에는 어려움이 있음
    
   - 라우팅 메트릭(routing metric) 값을 결정 (4가지)
    네트워크 지연
    대역폭
    신뢰성
    부하

  5.2.2 링크상태 알고리즘(Link State Algorithm)
    - 거리벡터 라우팅 프로토콜의 단점을 해소하기 위해 개발
    -
라우팅 정보가 변경될 경우 바뀐 라우팅 정보만을 전파시키는 알고리즘
    - 라우팅 정보인접한 라우터에 모두 전송하는 플러딩(Flooding)방식사용하므로 토폴로지에 관한 정보전체 네트워크상의 라우터에서 동일하게 유지
    - 각 라우터는 자신을 네트워크의 중심점으로 간주하여 최단경로의 트리(Tree)를 구성
   - 장점
    - 라우팅 정보가 변경될 경우 바뀐 라우팅 정보만을 전파시키기 때문에 네트워크 트래픽 발생량 감소
    - 해당 라우터에서 발생한 정보만을 다른 라우터들로 전파시키기 때문에 라우팅 루프(loop)같은 라우팅 오류가 발생하지 않는다.
   - 단점
    - 복잡한 구조로 경로설정이 구현되므로 주소 배분이나 장치 설정의 어려움이 발생

 
5.3 여러 가지 라우팅 프로토콜

  5.3.1 역내 라우팅 프로토콜
   - OSPF
   - RIP
    거리벡터 라우팅 기법을 사용하는 일반적인 프로토콜
    하나의 라우터에 있는 모든 라우팅 정보를 다른 라우터에 주기적(30초) 전송
    홉(통과한 라우터의 수)hop의 제한으로 인해 소규모나 중간규모의 네트워크에 적합
   - RIPv2
   - HELLO
   - IGRP

  5.3.2 역외 라우팅 프로토콜
   - EGP
   - BGP

 5.4 OSPF 프로토콜
  5.4.1 OSPF의 라우팅 계위

   - OSPF에서는 RIP와 달리 라우팅 알고리즘을 적용하기 위한 계위(hierarchy) 구조를 취한다.
   - 자치시스템(AS)Autonomous System은 공통적인 라우팅 정보를 공유하면서 하나의 관리 체제에 의해 관리되는 네트워크의 집합으로 정의
  5.4.2 OSPF의 동작과 특성
 
 5.5 RIP와 RIPv2 프로토콜
  - RIP는 RFC 1058 인터넷의 표준 라우팅 프로토콜이고, 계층구조가 아닌 평면구조를 취한다.
  - 라우팅 작업을 유연한게 수행하기 위해 설계된 표준 프로토콜로, 어느 라우터가 네트워크 토폴로지의 변경을 인식하면 이 정보를 인터넷상에 있는 다른 모든 라우터에 전달한다.

  5.5.1 RIP의 동작
   - RIP(Routing Information Protocol)는 벨만-포드 거리벡터에 근거한 알고리즘이며, 목적지까지의 거리가 최적경로 결정의 판단 기준이 된다.
   - 최적의 경로를 찾기 위한 척도로 RIP에서 홉 계수(hop count)를 사용
   - 홉 계수메트릭(metric)으로 나타내고, 목적지까지 여러 개의 라우터가 존재할 경우에는 홉 계수가 가장 적은것, 즉 메트릭이 최소인 것을 선택한다.
   - 경유하는 네트워크의 수에 대해서 상한(15)을 설정해둔다. 그 이상일 경우 도달 불능 네트워크(unreachable network)를 의미
   - 30초에 한 번씩 자기의 목적지 정보 전체를 이웃 라우터에 전송
   - 특정 목적지에 대한 정보가 일정기간 동안(timeout: 180초) 이웃 라우터로부터 전송되지 않으면 무효(invalid) 목적지로 간주, 이 무효 목적지 정보를 이웃 라우터에 알리기 위한 시간(garbage collection time: 120초)만큼 기다린 다음, 그 특정 목적지 라우터는 라우팅 테이블에서 삭제
   - 라우팅 정보의 변화가 없을 때에도 라우터는 갱신된 정보를 전송 (주기적)
   - 상대 라우터의 요청 패킷이 있을 때 이에 대한 응답 패킷을 전송하며, 이웃 라우터에 전송한 어떤 특정 목적지 정보가 변경되었을 때, 변경된 정보를 이웃 라우터에 알려줌
   
   - 라우팅 테이블 만드는 과정


  5.5.2 RIP의 기능
   - RIP는 거리벡터 알고리즘을 사용하기 때문에 네트워크 장애가 발생할 경우, 라우팅 정보가 전체 네트워크에 전달되는 데 많은 시간이 소요되며 잘못된 라우팅 정보가 전달될 수도 있다. 때문에 RIP는 대규모가 아닌 중소 규모의 네트워크에서 높은 효율을 보인다.
   - RIP Routing Loop 

   5.5.2.1 홉 계수의 제한
    - 과도한 트래픽이 발생되어 성능에 치명적인 문제를 제기할 수 있기 때문에 이를 방지하기 위해서 최대 홉의 크기를 15로 제한

   5.5.2.2 수평분리
    - 자신을 기억하고 있는 인터페이스에는 경로에 대한 광고를 하지 않는 것을 말함
    - 해당 포트에 관한 정보는 이 포트를 통하여 중복 전달하지 않도록 함(라우팅 루프 방지)

   5.5.2.3 포이즌 리버스
    - 실패한 경로를 삭제하고 보류 상태를 유지하기 위한 기능
    - 오류가 발생한 경로를 광고할 때에 큰 값의 메트릭(16홉)을 설정해서 이 경로들을 사용할 수 없도록 하는 방법

   5.5.2.4 타임아웃(Hold down Timer)
    - RIP를 사용하는 모든 라우터들은 사용자가 설정한 시간 간격에 기초해서 경신 메시지를 보내며, 시간 간격의 디폴트값은 30초(update정보를 방송)
    - 무효화된 경로에 대한 정보는 어느 일정 시간 동안 경신하지 않고 유지하고 있어야 함
    - 회선장애가 발생한 이후에 라우팅 테이블을 경신하지 않고, 전체 네트워크의 경로가 새로 발신될 때까지 기다림

   5.5.2.5 Triggered Update
    - 정보의 변경이 발생시 즉시 업데이트를 이웃 라우터에게 전달

 
 5.5.3 RIP의 특성
   5.5.3.1 장점
    - 알고리즘이 매우 간단하면서 견고한 특성을 갖는다는 점

   5.5.3.2 단점
    - 경신 정보에 대한 요구가 들어왔을 때나 토폴로지가 변경되었을 때만 경신정보를 전송하는 것이 아니라, 주기적으로 경신 정보를 보내야 함
    - 브로드캐스트 방식을 사용 해서 인접한 라우터 간의 정보를 교환하므로 네트워크 대역폭의 낭비가 초래되고, 네트워크에 연결되어 있는 모든 호스트들은 라우팅 처리와 무관하게 관련된 패킷을 처리해야 하므로 연결된 모든 장치에 오버헤드가 발생
    - RIP는 단순한 홉 카운트만을 이용해서 경로의 품질을 결정하므로 효과적이긴 하나, 사용되고 있는 링크의 실제 인터페이스 속도를 계산에 포함시킬 수 없음
    - RIP는 서브넷을 구별하지 못함

 
 5.5.3 RIPv2의 특성
   - 기존 RIP의 기능을 확장한 것으로, RIP 메시지로 전달되는 유용한 정보들을 확대하여 수용하도록 설계됨
   - 특히 RIPv2에서는 인식 기능이 제공되기 때문에, broadcast 방식이나 multicast 방식으로 경신 정보를 전송하는 것이 모두 가능해짐
   - 서브넷 마스크(mask) 기능도 포함 이는 인터넷이 다수의 네트워크로 구성되고 각각 다른 마스크 값을 가지고 있을 경우 유용함
   - RIPv2는 EGP에서 얻어진 AS 번호 등의 정보를 통지하기 위해 사용되는 외부 루트태그(route tag)기능이 있음
   - RIP에서는 서브넷 마스크를 바이트 단위로 인식을 하여 A, B, C 클래스 단위(기본 255.255.255.0이나 255.255.0.0 등)로 인식했으나, RIPv2에서는 비트단위(255.255.255.128)로 인식
   - 멀티라우팅 프로토콜 환경에서 라우팅 수행 중에, 다음에 전송될 라우터 중 최적 라우터의 선택이 가능하도록 하는 '다음 홉 주소'를 사용
   - RIPv2 패킷은 멀티캐스트 방식을 사용하기 때문에 라우팅 프로토콜을 지원하지 않는 호스트의 부하를 경감시킬 수 있으며, 또한 RIP 외는 지원하지 않는 라우터에서 해석할 수 없는 정보를 RIPv2 라우터 사이에 공유하도록 함으로써 신뢰성 향상시키는 것이 가능해짐

Chapter 04 데이터링크와 전송제어 기법
 1. 데이터링크와 회선제어
 2. 흐름제어 기법
 3. 오류제어 기법
 4. 대표적인 데이터 링크 프로토콜

Chapter 04 데이터링크와 전송제어 기법
 1. 데이터링크와 회선제어
 데이터링크 제어 프로토콜이 적용되는 스테이션 사이의 회선(line)을 데이터링크(data link)라 한다.
 신호 간의 충돌현상이 발생하지 않도록 제어하기 위한 회선의 규칙(line discipline)이 필요
 · 단방향 전송
 · 양방향 링크
 · 반이중 전송
 · 전이중 전송
 
  1.1 회선제어 기능
   반이중(half duplex) 전송 링크에서 두 개의 스테이션이 동시에 신호를 전송하는 경우 방생하는 신호 간의 충돌 현상이 발생하지 않도록 제어하는 규칙
   · ENQ/ACK 기법
   
· 폴링 기법

   1.1.1 ENQ/ACK 기법
    
· A 스테이션이 ENQ(enquiry)라는 프레임을 보내면 연결의 초기화 과정이 진행된다.
    
· B 스테이션은 ENQ 프레임에 대한 응답으로 ACK 프레임을 보냄으로써 데이터를 받을 준비가 되었음을 알린다.
    
· A 스테이션은 이제 데이터 프레임을 전송하고, B 스테이션은 이에 대한 ACK 프레임을 보내는 과정이 계속된다.
    
· 마지막으로 전송의 끝을 알리는 EOT 프레임을 보냄으로써 작업이 종료된다.


   
1.1.2 폴링 기법
    하나의 스테이션을 주 스테이션으로 지정하고 나머지는 종속 스테이션으로 구성
    
1.1.2.1 선택 모드
     주 스테이션이 데이터를 전송하고자 할 때 사용하는 모드로, 주 스테이션이 링크에 대한 제어 권한을 가짐

    1.1.2.2 폴 모드
     주 스테이션이 다수의 종속 스테이션에게 보낼 데이터가 있는지의 여부를 확인하여 데이터 전송을 하는 모드 → '다중점(multipoint) 폴링 절차'
     주 스테이션에서 폴 프레임을 전송하면 전송할 데이터가 없는 종속 스테이션은 NAK를, 전송할 데이터가 있는 종속 스테이션은 ACK를 보냄.


  1.2. 흐름제어 기법
   전송 스테이션으로 부터 전송 데이터의 양을 제한하기 위해서 사용되는 절차

   
· 정지 - 대기 흐름제어 기법
   · 슬라이딩 윈도우 흐름제어 기법

   
1.2.1 정지-대기 흐름제어 기법
    전송 측이 프레임을 전송한 후 각 데이터 프레임에 대한 ACK를 기다려서, 이에 대한 ACK 프레임이 도착하면 그 후에 다음 프레임을 전송하는 기법
    EOT 프레임이 전송되면 데이터 전송이 종료
    
· 장점: 정지 - 대기 기법은 구조가 간단
    · 단점: 하나의 프레임을 보내고 ACK프레임이 수신되어야만 그 다음 프레임을 전송할 수 있기 때문에 효율성이 떨어짐 


   
1.2.2 슬라이딩 윈도우 흐름제어 기법
    전송한 프레임에 대한 ACK 프레임을 수힌하지 않더라도, 여러 개의 프레임을 연속적으로 전송하도록 허용하여 전송 - 대기 기법의 효율성을 개선한 방법


  1.3 오류제어 기법
   데이터링크 계층에서 오류제어 기법은 주로 오류검출(error detection)과정과 재전송(retransmission) 과정을 포함한다.
   데이터 전송 시 오류가 발생하면 NAK를 반환하고, 오류제어가 발생한 프레임은 전송 측에서 재전송되도록 한다. 즉, 프레임이 손상되었거나 분실되었을 때 재전송이 수행되는데, 이러한 재전송 과정을 ARQ
(Automatic Repeat Request)라고 한다.
   
· 정지 - 대기 ARQ
   · GBn ARQ
   · SR ARQ

   
1.3.1 정지-대기 ARQ


   1.3.2 GBn ARQ



   
1.3.3 SR ARQ
    손상되거나 잃어버린 프레임만 재전송하는 방법

★ 오류제어 기법의 특성 비교
 정지 - 대기 ARQ: 구조가 간단하여 구현이 용이하나, 비효율적이서 활용도가 낮음
 GBn ARQ: 구조가 비교적 간단, 효율성이 향상되어 가장 널리 사용
 SR ARQ: 가장 효율적이나, 구조가 복잡해서 유지 관리 비용이 증가 (필요할 때만 사용)

  1.4 대표적인 데이터 프로토콜
   
· 문자 방식 프로토콜
    BSC
   · 비트 방식의 프로토콜
    SDLC, HDLC


   
▶ HDLC 프로토콜이란 ?
    
· 1979년에 ISO(국제표준위원회)에서 데이터링크의 표준으로 채택한 대표적인 비트 방식 프로토콜
    · 스테이션 3가지
     주 스테이션: 명령을 전송
     종속 스테이션: 명령에 응답
     혼성 스테이션: 명령과 응답 모두 전송
    · 링크 구성방식 2개
     주 스테이션 + 종속 스테이션 = 불균형 구성(unbalanced configuration)방식
     혼성 스테이션 + 혼성 스테이션 = 균형 구성(balanced configuration)방식
    
· 데이터 전달모드 3개
     NRM(Normal Response Mode)
     ABM(Asynchronous Balanced Mode)
     ARM(Asynchronous Response Mode)

   ▶ HDLC 프레임 형식


    플래그
     · 프레임의 시작과 끝을 나타내기 위해 사용
     · 8비트로 구성, 고유의 패턴(01111110)을 갖는다.
    주소 영역
     
· 프레임을 수신하는 종속 스테이션(목적지 스테이션)을 식별
     · 주 스테이션이 모든 부 스테이션에게 프레임을 방송할 때는 '11111111' 주소 값 사용
    제어 영역
     
· 정보 프레임(I-프레임)
     · 감시 프레임(S-프레임)
     · 번호가 붙지 않은 프레임(U-프레임)

     
· 제어 영역의 첫 번째 하나의 비트 혹은 두 개의 비트로 프레임의 종류를 식별
     · S-프레임과 I-프레임을 위한 기본적인 제어 영역은 3비트의 연속 숫자를 사용

    정보 영역

     
· I-프레임과 U-프레임에만 존재
     
· 일반적인 길이는 8비트의 배수
    FCS 영역
     
· 정규 16비트 CRC CCITT
     
· 신뢰성을 위해서 CRC-32를 사용하는 32비트 FCS 사용가능

   ▶ HDLC 프레임의 종류와 동작
    종류
     
· 사용자 정보를 전송하는 프레임 I-프레임
      사용자의 데이터를 갖는 정보 프레임의 교환
     · 오류제어를 관리하고 감시하는 S-프레임
      흐름제어나 오류제어를 위해 사용

     · 링크의 연결과 해제와 관련하여 쓰이는 U-프레임
      링크의 연결과 해제 등 여러 가지 제어 기능을 위해 사용

    동작
     
· 프레임 ID를 위해 할당된 영역이 제어 영역의 처음 두 비트
      첫 번째 비트가 0이면 I-프레임
      1,2번째 비트가 10이면 S-프레임, 11이면 U-프레임

Chapter 03 네트워크 프로토콜과 계층모델
    3.1 프로토콜이란 무엇인가
    3.2 OSI 7계층 참조모델
    3.3 OSI 모델과 계층별 기능
    3.4 TCP / IP 네트워크 모델

Chapter 03 네트워크 프로토콜과 계층모델
 1. 프로토콜이란 무엇인가
  1.1
 프로토콜이란
   - 네트워크상에 있는 디바이스 사이에서 정확한 데이터의 전송과 수신을 하기 위한 일련의 규칙들

  1.2 프레임

   - 데이터링크 계층에서 사용되는 데이터 단위
   - 목적지 주소 영역은 목적지의 주소
   전송 측 주소 영역은 데이터를 보내는 전송 측의 주소
   - 유료부하 영역은 전송을 원하는 사용자 데이터를 담고 있는 영역
    ∴ 이와 같은 규칙에 의거하여 데이터의 교환이 이루어지는 경우, 일련의 규칙들이 바로 데이터 전송을 위한 프레임 구성과 관련된 프로토콜이 된다.

  ▶ 개체
   - 실제적으로 데이터교환이 가능한 서버, 혹은 모뎀 등과 같은 디바이스를 일반화한 표현으로 '개체(entity)'라는 용어를 사용한다.

  
▶ 프로토콜의 정의
   - 데이터통신과 관련된 임의의 두 개체가 네트워크를 통해서 상호 간에 데이터의 교환을 위해서는 상호 합의된 규칙에 따라 무엇을, 어떻게, 언제 통신할 것인가를 정하고 이에 따라 데이터를 전송을 하게 되며, 이렇게 정의된 규칙들이 바로 프로토콜이 된다.

  
 프로토콜을 구성하는 기본적인 요소
   - 구문(syntax): '무엇을'에 해당하는 요소(element)
    데이터의 형식(format), 부호화 및 신호의 크기 등을 포함, 무엇을 전송할 것인가에 관한 내용이 들어있다.
   - 의미(semantics): '어떻게'에 해당하는 요소
    · 데이터의 특정한 형태에 대한 해석을 어떻게 할 것인가
    · 그와 같은 해석에 따라 어떻게 동작을 취할 것인가
    · 전송의 조정 및 오류처리를 위한 제어정보 등을 포함한다.
   - 타이밍(timing): '언제'에 해당하는 요소
    · 언제 데이터를 전송할 것인가
    · 얼마나 빠른 속도로 전송할 것인가

 2. OSI 7계층 참조모델

   OSI 7계층모델의 기본적인 목적
   - 다양한 표준화와 관련된 기본 골격을 제공하는 것
   - OSI 모델이 제공됨으로써, 네트워크에 연결된 수많은 시스템의 응용 프로그램으로부터 나오는 다양한 프로세스들은 해당 시스템의 사양이나 환경에 구애받지 않고 네트워크상의 다른 시스템의 응용 프로그램과 정보처리 작업을 할 수 있게 되었다.

   OSI 참조모델은 특정 시스템에 대한 프로토콜의 의존도를 줄이고, 향후 기술 진보에 따른 프로토콜의 확장성등을 고려하여 보편적인 개념과 용어를 사용하여 컴퓨터 네트워크의 논리 구조를 규정하는 개념으로 표준화되었다.
   OSI 참조모델에서는 개방형 시스템 간의 연결을 논리적으로 모델화하기 위하여 4가지 기본요소를 정의하였다.
   - 개방형 시스템(open system): 컴퓨터, 단말기, 통신 제어장치, 단말기 제어장치 등과 같은 응용 프로세스 간에 데이터통신 기능 제공
   - 응용 개체(application entity): 네트워크상에서 동작하는 응용 프로그램과 시스템 운영 및 관리 프로그램, 단말기 동작과 관련된 프로그램 운영 기능 제공
   - 연결(connection): 응용 개체 사이를 서로 연결하는 논리적인 데이터통신 회선 기능
   - 전송미디어(transmission media): 데이터링크 채널 등과 같이 네트워크 시스템 간의 데이터 전송특성

   OSI 계층 구조
   - 데이터 단위
    · 동일한 개체 간에 데이터를 교환하거나, 혹은 서비스 엑세스점(SAP: Service Access Point)을 통해 인접 계층의 개체 간에 데이터를 교환하기 위한 단위
    · 서비스 데이터 단위(SDU: Service Data Unit)
    · 프로토콜 데이터 단위(PDU: Protocol Data Unit)

    · (N+1)계층의 (N+1)-SDU에 (N+1)계층의 제어정보(PCI: Protocol Control Information)가 결합되어 (N+1)-PDU를 만들고 이것이 자신보다 하위에 있는 N계층으로 인터페이스가 이루어지면 N-PDU가 된다.

   - 연결에 의한 데이터통신

    · 동일한 개체에 있는 N개체 상호 간에 데이터통신을 수행하는 방식을 결정하는 것이 N계층 프로토콜이며, 이것은 상호교환되는 정보의 교환 규칙과 그 형식으로 구성된다.

   - 연결제어

 3. OSI 모델과 계층별 기능
  
▶ 물리 계층
   - 물리 계층의 주된 기능: 비트 단위의 데이터 전송
   - 이는 자신보다 사위에 있는 데이터링크 계층의 데이터통신 기능을 원활하게 수행하도록 물리적인 연결 설정과 유지 및 해제 기능과 관계된다.
   - 컴퓨터의 데이터 표현 방식인 2진 비트 데이터를 전송매체에 맞는 전기신호 또는 빛의 신호로 바꾸어 전송

  
▶ 데이터링크 계층
   - 신뢰성 있는 데이터 전송 수단을 제공하는 계층
   - 데이터의 프레임화
    - 물리계층에서 올라온 2진 데이터를 일정한 길이로 분할하여 프레임 단위로 만듬
    - 프레임 = 헤더 + 데이터
   - 전송 측(source)과 수신(Destination) 측의 물리주소(2계층 주소)
   - 프레임의 순서제어: 순차적인 프레임 전송을 위하여 프레임 번호를 부여
   - 프레임의 전송 확인과 흐름제어
   - 오류검출 및 복원: 전송되는 프레임에는 오류 검출용의 비트 열이 첨부되어 있으며, 수신 측에서는 이를 조사함으로써 프레임의 전송상 오류여부 판단
   - 프레임에 전송 오류가 발견되면 수신 측에서는 전송 측으로 재전송 요청
   - 데이터링크 연결 설정과 해제: 프레임 전송에 앞서 수신 측이 데이터통신 가능상태에 있는지를 확인하여 데이터링크의 연결 설정

  
▶ 네트워크 계층
   - 네트워크 시스템 상호 간에 데이터를 전송할 수 있도록 경로배정(routing) 기능, 흐름제어, 오류제어 등의 기능을 수행하는 계층
   - 논리주소: 서로 떠러진 네트워크에서 호스트 구분
   - 물리주소: 같은 네트워크에서 호스트 구분
   - 비연결형 네트워크 서비스
    - 논리적 데이터통신 회선을 설정하지 않은 상태에서 프로토콜 데이터 단위(PDU)를 전송하는 방식
    - 데이터에 대한 제어 기능을 갖지 않음
    - 네트워크 계층에 다른 통신 네트워크를 상호 연결이 용이하고, 기능 간략화 가능
   - 연결형 네트워크 서비스

  
▶ 수송 계층
   - End - to - End통신
    - 수송 계층은 하부 네트워크와 독립적으로 신뢰성 있는 프로세스 상호 간의 완전한 메시지 전달기능을 제공
    - 프로세스(process): 호스트 컴퓨터에서 동작하고 있는 응용 프로그램(application program)
   - 흐름 제어와 오류제어, 메시지 전달등의 기능을 수행
   - 하위 계층을 구성하는 다양한 데이터통신 네트워크의 품질의 차이를 보장
   - 데이터통신에 적합한 종단 프로세스 내에서 데이터 전송을 보장하는 계층

  ▶ 세션 계층
   - 서로 다른 컴퓨터에서 동작되고 있는 두 개의 응용 계층 프로토콜 개체가 데이터를 전송하는 데 필요한 대화를 관리 하고 조정
   - 순서에 따라 데이터를 조합하고 동기화하는 수단과 응용 계층 프로토콜 개체 간에 대화 채널을 설정하고, 해제하는 수단을 제공
   - 데이터 스트림에 검사 위치를 삽입하는 수단을 제공
   - 장애 발생 시 마지막 검사 위치 이후의 데이터만 재전송되도록 함으로써 대화 중단 시점에서 다시 연결해주는 부가적인 서비스 제공

  
▶ 표현 계층
   - 두 사용자 응용 프로세스 간에 교환될 데이터의 형식과 관련되며, 사용자 데이터 전송을 위해 상호 동의하고 이해하는 형식으로 협상되도록 하는 수단을 제공

  
▶ 응용 계층
   - 통신을 바탕으로 구현된 응용프로그램

4. TCP / IP 모델
 4.1 물리 계층과 데이터링크 계층

  - 특정 프로토콜 없음
 4.2 네트워크 계층
  - IP 데이터그램은 IPv4인 경우 기본 20바이트 구성, 최대 60바이트 확장 가능
  - IPv4에서 IP주소는 32비트의 이진수 사용, IPv6에서는 128비트 영역 사용
  - 네트워크 계층에 해당하는 프로토콜: ARP, RARP, ICMP, IGMP
  - ARP와 RARP: IP 주소를 물리주소와 연계시키기 위한 프로토콜
  - ICMP: 전송 중인 IP데이터그램에 문제가 있음을 통지
  - IGMP: 그룹화된 사용자들에게 동시 전송이 용이하도록 함
 4.3 수송 계층
  - 수송 계층에 해당하는 프로토콜: TCP, UDP, SCTP
  - TCP는 프로세스대 프로세스(process - to - process)프로토콜
  - 종단 간의 흐름제어, 에러제어 등의 기능이 있어서 신뢰성 제공
  - 세그먼트(segment): 두 호스트 간의 TCP 프로토콜 사이에서의 전송 단위
 4.4 응용 계층
  - TCP/IP 네트워크 모델에서는 OSI 모델의 세션 계층, 표현 계층, 응용 계층을 모두 결합하여 하나의 응용 계층이 됨
  - 응용 계층에 해당하는 프로토콜 이메일 프로토콜(SMTP), 파일전송 프로토콜(FTP), 도메인명 시스템(DNS), 웹 프토로콜(WWW)


Chapter 02. 데이터 전송기술과 전송미디어
    2.1 데이터 전송과 신호의 개념

        ‣ 신호의 개념(정의)
    2.2 신호 전송과 정보이론
        ‣ 데이터 전송 시 고려사항(4가지)
    2.3 데이터 전송과 전송모드
        ‣ 부호화 방식
        ‣ 동기식 전송방식(정의)
        ‣ 비동기식 전송방식

    2.4 다중화 기법과 교환기술
        ‣ 패킷 전송의 개념과 다중화 기법
        ‣ 다중화 기법의 종류
            - 주파수분할 다중화 방식(FDM)
            - 시분할 다중화 기법(TDM)
            - 통계적 시분할 다중화 기법(STDM)
        ‣ 교환기술
            - 회선교환 방식
            - 메시지교환 방식
            - 패킷교환 방식
        ‣ 교환 방식의 비교
    2.5 전송미디어와 전송특성
         동선
         동축케이블
         광섬유
         주요 전송미디어의 비교

1. 데이터 전송과 신호(Signal)의 개념
     신호(Signal)의 개념
        - 정보의 전송이란
            - 신호의 전송 과정
        - 신호란?
            - 정보의 전송과 관련된 개념
        - 전자기 신호
            - 전압이나 전류에 대한 파형으로 나타남
        - 신호의 구분
            - 에너지 신호, 전력 신호, 랜덤 신호, 결정 신호, 비주기 신호

2. 신호 전송과 정보이론
    ‣ 데이터 전송 시 고려사항 (3가지) 
        - 감쇄(attenuation)
            -데이터가 전송 도중 흡수되거나 열에 의해서 변화가 되기 때문에 발생하는 전자파의 에너지 손실
        
- 왜곡(distortion)
            - 링크상에서의 전파현상은 서로 다른 주파수에 따라 서로 다르게 감쇄되고 지연되어, 수신 신호가 전송신호와 다르게 되는 현상
             송신자의 의도와는 다른 의미가 전달되는 것(에너지의 손실로 의한 것)
         - 잡음(noise)
           
- 도전체에서 전자의 열운동으로 인해 광원이 만드는 광자수의 불확실함 때문에 발생하는 현상

3. 데이터 전송과 전송모드
     데이터 통신 시스템
        - 정보의 표현은 0과 1만은 사용하는 비트 정보로 나타내고 각 비트정보는 전기신호 또는 광신호로 변환되어 전송되도록 한다.
            
· Data bit정보(코드로 표현) → 전기적 신호 → 전송

         ‣ 부호화 방식
            - 부호화(encoding) 과정
                · 이진수 정보 '0'은 음의 전압 값을 갖 신호로 바꾸고, 이진수 정보 '1'은 양의 전압 값을 갖는 신호로 변환함 → encoding

        - RZ(Return to Zero): 복류

1

0

1

0

0

1

                       
                       

        - 멘체스터 코딩(menchester coding)

1

0

1

0

0

1

                       
                       

‣ 데이터 전송이란
    - 디지털 정보를 하나의 장치에서 다른 장치로 보내는 전송 방법
‣ 데이터 전송의 구분
    - 직렬 전송
        한 번에 하나의 비트씩 전송하는 방식
        - 전송에 따른 기준 시간
            클록 펄스를 이용함
            ∴ 각 클록 펄스 마다 하나의 비트정보를 보내는 방식
    - 병렬 전송
        각 클록마다 여러 비트정보를 동시에 전송하도록 하고 있다. 

4. 전송모드에 따른 구분
    - 동기화 과정(synchronization)
        전송장치와 수신장치 사이의 전송률, 전송시간, 간격비트 타이밍 정보일치시키는 과정

    ‣ 동기식 전송방식
        - 동기식 전송방식은 데이터를 전송하고자 할 때 전송 측과 수신 측 사이에 클록을 일치시켜 동기화를 수행하여 전송하는 방식
        - 프레임(Frame)
            · 정해진 규칙에 따라 비트정보를 그룹화하여 처리하여 만들어진 데이터 단위
            · 전송 데이터 분량이 상당히 큰 경우에 비동기식 전송방식보다 효율적

    ‣ 비동기식 전송방식
        - 비동기식 전송방식에서는 일반적으로 정보의 표현을 8비트로 구성된 문자코드를 기반으로 한다.
        - 각 문자정보마다 동기화 비트를 포함하고 있어서 동기식 전송방식에서처럼 전송 측과 수신 측 사이에 클록을 일치시키는 과정이 중요하지 않기 때문이다.
        - 클록 신호의 타이밍 정보가 중요한 것이 아니라 표현되는 정보의 패턴에 따라 동기화가 수행되기 때문이다.
        - 범용직렬버스 (USB)

5. 다중화 기법과 교환기술
    ‣ 데이터 전송의 기법

        - 데이터통신 시스템에서 디바이스 간의 데이터 전송은 데이터링크를 통해 이루어진다.
        - 다중화 기법
        - 교환 기법

 패킷 전송의 개념과 다중화 기법
    - 다중화기(MUX: multiplexer)
        · n개의 입력 디바이스가 동시에 하나의 데이터링크를 상호 공유하도록 해주는 특별한 장치
    - 역다중화기(DEMUX: demultiplexer)
        · 다중화기의 역 과정을 수행
    - 다중화 기법
        · 데이터링크의 효율성을 극대화하기 위해 다수의 디바이스단일 데이터링크를 공유하여 전송하는 효율적인 데이터 전송기법


 다중화 기법의 종류(4가지)
    - 주파수분할 다중화 방식(Frequency division multiplexing, FDM)
        · 데이터링크(채널)의 주파수 대역폭을 몇 개의 작은 주파수 대역으로 나누어서 각각을 부 채널로 재구성한 다음, 각 부 채널을 여러개의 디바이스에 할당함으로써 각 디바이스로부터 나오는 신호를 동시에 전송하는 방식
        · 장점

            - 비교적 간단한 구조가 가능하기 때문에 비용이 저렴함
            - 별도의 변복조기가 필요하지 않음
        · 단점
            - 대역폭 낭비로 인한 채널의 이용률이 저하

    - 시분할 다중화 기법(Time-division multiplexing, TDM)
        
· 채널에 할당된 데이터 전송 허용시간을 일정한 시간 슬롯으로 나누고, 채널도 다시 부 채널로 나누어, 각 시간 슬롯을 부 채널에 순차적으로 할당하여 사용하는 방식
        ≒ 동기식 시분할 다중화 방식
        
· 장점
            - 비교적 간단한 구조로 되어있어 구현이 용이
            - 저렴한 비용
            - 데이터 전송률이 조절이 가능
        
· 단점
            - 시간 슬롯의 낭비

- 통계적 시분할 다중화 기법(Statistical TDM)
    
· 장점
        - 동적 할당기법을 사용하여 대역폭의 낭비를 최소화
    · 단점
        - 회로가 복잡해지고 비용이 증가

- 코드분할 다중접속 기법(Code Division Multiple Access, CDMA)

 교환기술
    · 다수의 디바이스 상호 간에 최적의 연결성을 제공해주는 기술

    - 데이터통신 네트워크의 구분
        · 교환 데이터통신 네트워크(switched data communication network)
        · 방송 데이터통신 네트워크(broadcast data communication network)
    - 교환 네트워크
        · 회선(circuit)교환(switching) 네트워크
            - 회선 설정, 데이터 전송, 회선 해제 단계
            - 데이터가 전송되기전, 스테이션 사이에 회선이 설정
        · 메시지(message)교환(switching) 네트워크
            - 메시지(message)라고 하는 데이터의 논리적 단위를 교환하는 방식
            - 두 스테이션 사이에 전용 전송로를 설정할 필요 없음
            - 메시지에 목적지 주소를 첨부하여 전송하며, 메시지는 노드에서 노드로 네트워크를 통해 이동
            - 축적 후 전달(store and forward) 방식이라고 함
        · 패킷(packet)교환(switching) 네트워크
            - 메시지교환 방식과 회선교환 방식의 장점을 결합하고 단점을 최소화한 방식
            - 패킷을 목적지 주소에 따라 적절한 경로를 선택하여 전송하도록 하는 교환 방식
            - 패킷 스트림(stream)을 처리하는 방법에 따라 datagram 방식과 virtual circuit 방식으로 구분
            - 연결설정 단계가 불필요하고 혼잡을 피해 경로구성이 가능하기 때문에 융통성이 개선
            - 논리적 연결설정, 에러제어와 흐름제어가 가능하여 신뢰성 향상
        · 데이터그램(datagram)방식
                - 패킷 스트림을 독립적으로 처리하는 방식으로, 연결설정 단계가 불필요하고 혼잡을 피해 경로구성이 가능하기 때문에 융통성이 개선된다.
        · 가상회선(virtual curcuit)방식
                - 논리적 연결설정을 하는 방식으로, 에러제어와 흐름제어가 가능하여 신뢰성이 높아진다.


    6. 전송미디어와 전송특성 (3가지)
        - 동선(copper wire)
            · 가장 흔히 사용되는 전송미디어로 두 가닥의 절연된 동선이 균일하게 서로 감겨 있는 형태            
            · 서로 꼬임선이 되도록 구성함으로써 신호간의 간섭효과를 최소화한다.
            · 동선은 일반적으로 전화 시스템에서 주로 사용되고 있으며, 건물 내 통신수단으로도 유용하게 사용된다.            
            · 동선은 거리, 대역폭, 전송률에 있어서 많은 제약이 있고, 또한 간섭이나 잡음에 매우 민감하다.
        - 동축케이블(coaxial cable)
            · 구성 : 두 개의 단일 전선과 감싸고 있는 원통형의 외부도체
            · 용도 : 장거리 전화 및 video 전송, 케이블 TV 분배, LAN, RF 및 마이크로파 전송, 컴퓨터와 계측기간 데이터 연결
       - 광섬유(optical fiber)
            - 매우 가는 전송미디어로, 유리 또는 플라스틱이용하여 제작한다.
            - 원통형 구조물로 코어, 클래딩, 재킷3개의 동심 부분으로 구성된다.
             · 광을 이용하는 기법의 기본적인 제약
                - 광이 진행되면서 발생하는 감쇄에 의한 제약 (광을 증폭함으로써 개선)
                - 광의 분산에 따른 제약 (산란에 영향이 적은 파장대역으로 천이하는 방법으로 개선)
            · 전파모드 수에 따른 광섬유 분류
                - 단일 모드
                    1개의 전파 모드만으로 정보를 전송, 넓은 대역으로 정보를 전송가능
                - 다중 모드
                    여러 개의 전파모드로 정보를 전송할 수 있고 가장 널리 사용되고 있는 전송미디어


+ Recent posts