IT/정보보안

[정보보안] TCP/IP 프로토콜 - (1)

디지털 은행원 이야기 2020. 10. 2. 23:57
반응형

 

 

안녕하세요.

방프개입니다.

 

저번 글에서 정보보안의 섹션 중 네트워크의 개요에 대해 말씀드렸었는데요.

OSI 모델과 TCP/IP 프로토콜 중 OSI 모델은 알아봤으니 이번엔 TCP/IP 프로토콜에 대해

적어보려고 합니다.

 

1. 물리 계층

 (1) 물리 계층 개요

  1) 데이터와 신호

   > 응용, 전송, 네트워크, 데이터 링크에서의 통신은 논리적(Logical)이고 물리 계층 통신은

      물리적(Physical)입니다.

   > 데이터와 데이터를 표현하는 신호는 아날로그 혹은 디지털 형태일 수 있습니다.

   > 아날로그 데이터란 연속인 정보를 말하며 디지털 데이터란 이산 값을 갖는 정보를 말합니다.

 

2. 데이터링크 계층

 (1) 데이터링크 계층의 소개

  1) 노드와 링크

   > 데이터링크 계층에서의 통신은 노드-대-노드 입니다. 인터넷에서 하나의 지점으로부터의

      데이터 유닛은 다른 지점에 도달하기 위해 LAN과 WAN과 같은 많은 네트워크를 통해

      전달될 필요가 있습니다.

   > 이러한 LAN과 WAN은 라우터를 통해 연결되고 노드와 링크로 나타내는 것이 일반적입니다.

 

 

  2) 서비스

  ① 프레임 짜기(Framing)

   > 데이터링크 계층에서 제공하는 첫 번째 서비스는 프레임 짜기입니다. 각 노드에서

      데이터링크 계층은 다음 노드에게 데이터그램을 전송하기 전에 네트워크 계층에서

      전달받은 패킷인 데이터그램을 프레임에서 캡슐화해야 합니다.

 

  ② 흐름 제어(Flow Control)

   > 서로 다른 데이터링크 계층 프로토콜은 서로 다른 흐름 제어 전략을 사용합니다.

 

  ③ 오류 제어(Error Control)

   > 전기 신호는 오류에 취약하기 때문에 프레임 또한 오류에 취약합니다.

      첫 번째로 오류를 검출하는 것이 필요하고, 오류 검출 이후 송신자 노드에서

      이를 수정하거나 오류를 폐기하고 재전송을 송신 노드에게 요청해야 합니다.

 

  ④ 혼잡 제어(Congestion Control)

   > 링크가 프레임 혼잡으로 인해 프레임 손실이 발생하더라도 대부분의 데이터링크 계층은

      혼잡 제어를 사용하지 않습니다.

   > 일반적으로 혼잡 제어는 종단-대-종단으로 통신하기 때문에, 네트워크 계층 혹은

      전송 계층에서 해결합니다.

 

3. 네트워크 계층

 (1) 네트워크 계층 개요

  1) 네트워크 계층 서비스

   (가) 라우팅

    > 네트워크 계층에서 다른 임무는 라우팅(Routing)과 포워딩(Forwarding)이 있습니다.

    > 네트워크 계층은 패킷이 근원지에서 목적지까지 갈 수 있도록 경로를 라우팅 해야 합니다.

       물리적인 네트워크는 네트워크(LAN과 WAN)와 네트워크를 연결하는 라우터의 조합입니다.

 

   (나) 포워딩

    > 라우팅 프로토콜을 실행할 때 포워딩(Forwarding)은 라우터 상의 하나의 인터페이스에

       패킷이 도착했을 때 라우터가 취하는 행동으로 정의할 수 있습니다.

    > 이런 행동을 취하기 위해 라우터가 일반적으로 사용하는 의사결정 테이블은

       포워딩 테이블(Forwarding table) 혹은 라우팅 테이블(Routing table)이라 불리기도 합니다.

 

 

  2) IPv4 주소

   (가) 클래스 기반의 주소 지정

    > 인터넷이 시작될 당시 IPv4 주소는 소규모 및 대규모 네트워크를 지원하기 위해

       한 가지가 아닌 세 가지의 고정된 접두사(n=8, n=16, n=24)로 설계되었습니다.

    > 전체 주소 공간은 5개의 클래스(클래스 A, B, C, D, E)로 구분됩니다.

 

클래스 설명
클래스 A 첫 번째 비트가 [0] 인 IP 주소를 클래스 A주소라고 합니다. 첫 바이트의 나머지
7비트가 네트워크 주소이고 하위 세 바이트는 호스트 주소입니다.
클래스 B 처음 두 비트의 값이 [10]인 주소를 클래스 B주소라고 합니다. 첫 바이트의 나머지
6비트와 두 번째 바이트가 네트워크 주소이고, 마지막 두 바이트는 호스트 주소로
사용됩니다.
클래스 C 처음 세 비트의 값이 [110]인 주소를 클래스 C주소라고 합니다.
세 번째 바이트까지가 네트워크 주소이고 마지막 한 바이트는 호스트 주소입니다.
클래스 D 처음 네 비트의 값이 [1110]인 주소를 클래스 D주소라고 합니다. 클래스 D주소는
네트워크 주소와 호스트 주소의 구분이 없고 전체 주소가 멀티캐스트용으로
사용됩니다. 정보, 멀티미디어 데이터, 리얼타임 비디오 등을 보내는데 사용합니다.
클래스 E 처음 네 비트의 값이 [1111]인 주소를 클래스 E주소라고 하며 추후 사용을 위해
예약된 주소입니다.

 

    > 클래스 기반의 주소가 더 이상 사용되지 않는 이유는 주소 고갈 때문입니다.

       주소가 적절히 분배되지 않았기 때문에 인터넷에 연결하려는 기관이나 개인이 사용할 주소가

       더 이상 남아 있지 않게 되는 문제가 있습니다.

    > 주소 고갈을 완화하기 위해 서브네팅(Subnetting)과 슈퍼네팅(Supernetting)의 두 가지

       기술이 제안되었습니다.

    

 

※ 서브넷 마스크와 서브넷팅 계산방법에 대해 자세히 설명해 놓은 블로그가 있어 링크 추가해놓도록 하겠습니다.

korean-daeddo.blogspot.com/2016/01/blog-post_26.html

 

서브넷 마스크와 서브넷팅 계산법

서브넷 마스크를 이용하여 서브넷팅을 하는 이유와 계산법을 알려줍니다.

korean-daeddo.blogspot.com

 

   (나) 클래스 없는 주소 지정

    > 클래스 기반 주소 지정에서 서브네팅과 슈퍼네팅은 실제로 주소 고갈 문제를 해결하지

       못했습니다. 장기적 관점에서 더 큰 주소 공간이 필요했으나 더 큰 주소 공간 확보를 위해서는

       IP 패킷 형식의 변화가 필요한 IP 주소 길이의 증가가 필요했습니다.

    > 대안으로 슬래시 표기법 또는 CIDR(클래스 없는 인터도메인 라우팅)이라는 방법이 사용되었고

       CIDR에서는 접두사(네트워크 ID)의 길이를 주소 뒤의 슬래시 다음에 표시합니다.

 

 

 

   (다) VLSM(Variable Length Subnet Mask, 가변 길이 서브넷 마스킹)

    > VLSM은 서브네팅을 여러 번 반복해 네트워크를 크기가 다른 여러 서브 네트워크 계층으로

       구분하는 기법입니다. 이를 통해 기관은 네트워크의 실제 요구 사항에 맞게 서브넷 크기를 조정할 수

       있습니다.

    > 만일 C class IP 주소를 가진 회사에서 100개의 주소를 필요로 하는 부서의 경우와

       25개의 주소를 필요로 하는 4개의 부서를 서브넷팅하는 경우 적용이 가능합니다.

 

   (라) 특수 주소

    > IPv4의 주소에는 특별한 목적으로 사용되는 디스-호스트(this-host) 주소, 제한된 브로드캐스트 주소,

       루프백 주소, 사설 주소, 멀티캐스트 주소의 다섯 가지 특수 주소가 있습니다.

    > 디스-호스트 주소

      : 0.0.0.0/32의 주소를 디스-호스트(this-host) 주소라고 합니다. 이 주소는 호스트가 IP 데이터그램을

       보내려고 하지만 근원지 주소인 자신의 주소를 모를 때 사용합니다.

    > 제한된 브로드캐스트 주소

      : 255.255.255.255/32의 주소는 제한된 브로드캐스트 주소입니다. 이 주소는 호스트나 라우터가

       네트워크 상의 모든 장치로 데이터그램을 보낼 때 사용됩니다.

    > 루프백 주소

      : 127.0.0.0/8의 블록은 루프백 주소입니다. 이 블록 내의 주소를 가진 패킷은 호스트를 벗어나지 않고

       호스트에 남게 됩니다. 블록 내의 주소는 소프트웨어의 테스트 목적으로 사용됩니다.

       127.0.0.1은 테스트에 가장 많이 쓰이는 주소입니다.(실제 Local IP로 테스트할 때 많이 사용됩니다.)

    > 사설 주소

      : RFC 1918은 사설 주소에만 사용할 수 있는 라우팅이 불가능한 특수 주소 집합을 정의했습니다.

        이들 주소는 공중 인터넷에는 존재하지 않습니다.

       * 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16이 사설 주소(private addresses)로 지정되어 있습니다.

 

클래서 IP 주소 블록 주소 범위
Class A 24비트 블록 10.0.0.0 - 10.255.255.255
Class B 20비트 블록 172.16.0.0 - 172.31.255.255
Class C 16비트 블록 192.168.0.0 - 192.168.255.255

<사설 인터넷을 위한 주소 범위>

 

 

글의 내용이 많아 1, 2부로 나눠 작성해야 할 것 같습니다.

다음 글에선 인터넷 프로토콜(IP), ARP, RARP, IPv6에 대해 작성해보도록 하겠습니다.

 

감사합니다.

반응형

'IT > 정보보안' 카테고리의 다른 글

[정보보안] TCP/IP 프로토콜 - (2)  (0) 2020.10.03
[정보보안] 네트워크 개요  (6) 2020.10.01
[정보보안] 전자서명과 PKI  (0) 2020.09.25