인터넷 프로토콜(IP)과 주소체계

원래벌레·2022년 5월 23일
0
post-custom-banner

💎 TCP/IP 네트워크 모델과 IP

💍 TCP/IP란?

  • TCP와 IP 각각이 프로토콜 이면서, 두개를 합쳐서 네트워크 모델로 본다.

  • 개방향 프로토콜로 표준 모델이다. 물리적인 네트워크와 컴퓨터 하드웨어 또는 소프트웨어로부터 독립적이므로 어느 환경에서도 사용 가능하다.

  • 범용성으로 인해 새로운 네트워크 기술을 쉽게 수용 가능

💍 IP란 ?

  • IP는 네트워크 계층에 존재하는 프로토콜이다.

  • IP 주소체계를 이용하여 인터넷에 연결된 모든 호스트들과 데이터통신이 가능하다.

  • TCP/IP 프토콜에서 전송 메커니즘 즉 라우팅을 제공한다.

  • 비 신뢰성/비 연결형 데이터그램 프로토콜로 오류제어 기능 수행없이 best effort delivery service를 제공함

💎 IP데이터그램의 형식과 기능

  • IP에서 사용하는 패킷을 데이터그램 이라 함

  • IP 데이터그램은 헤더 부분과 사용자 데이터 부분으로 구분됨

  • IP 데이터그램은 길이는 가변적이고, 기본 헤더의 크기는 20바이트이며, 옵션 영역을 사용하면 최대 60바이트까지 확장가능

💎 IP 패킷 구성과 기능(1)

  • 버전 영역(VER)
    1) IP 프로토콜의 버전을 나타내기 위한 영역 ex) IPv4, IPv6 4또는 6이 들어감
    2) IPv6의 사용이 점점 증가흔 추세

  • 헤더 길이 영역(HLEN)
    - 4바이트를 기본 단위로 하여 헤더 부분의 길이를 규정 : ex) 20,24,28 ... 바이트 이렇게 들어간 바이트값은 4로 나누어서 헤더길이 영역에 들어간다 ex) 20이면 5가 들어감

  • 차별화된 서비스(DS) 또는 서비스 유형
    1) 데이터의 전송 목적에 따라 서로 다른 우선권을 설정하기 위한 영역
    2) 네트워크를 통한 데이터 전송 시 사용자의 데이터마다 우선권을 부여함
    3) 우선권이 높은 데이터가 먼저 서비스를 받도록 허용하며 차별화된 서비스를 위한 영역으로 사용할 수 있도록 규정


  • 전체길이
    - 바이트 단위로 헤더를 포함한 전체 패킷의 길이를 규정 -> ip 데이터그램의 총 길이

  • 데이터그램 식별자
    1) IP 데이터그램을 식별하기 위해 사용됨
    2) 패킷 분할시 이 영역 값을 참조하면, 어느 원본 데이터그램으로부터 분할됐는지를 구분 가능

  • 플래그
    - 전송되는 패킷이 분할된 패킷인지 아닌지 여부에 대한 정보를 나타냄

  • 패킷분할 옵셋
    - 8바이트 단위로, 분할된 패킷의 일부분을 나타냄
    ex) 1000바이트짜리 패킷이 500바이트 단위로 나눠짐, 첫번쨰 옵셋 0, 두번째 옵셋500
    이 들어가 있다. 안에 들어가는 value값은 8로 나누어진 값이 들어간다.

  • 존재시간 영역(TTL) = 네트워크에 돌아 다닐 수 있는 수명
    1) 라우터를 지날 때 마다 TTL 값을 하나씩 감소시킴
    2) 만일 TTL의 값이 0이 되면 그 패킷을 폐기함 -> 전송 측에 패킷이 폐기 됐다는 오류 메시지(ICMP TIME EXCEEDED MSG) 전송 - IP에는 메시지를 전송하는 기능이 없기 때문에 ICMP 프로토콜을 이용하여 메시지를 전송함

  • 상위계층 프로토콜
    1) IP 계층 서비스를 사용하는 상위계층 프로토콜이 무엇인지 나타냄
    2) 프로토콜 영역의 값에 따라 해당하는 상위계층 프로토콜의 예 -> 표[9-2]
    3) 만일 이 영역의 값이 6이라면, 서비스를 사용하는 상위계층 프로토콜이 TCP라는 의미

  • 헤더 체크섬 : IP는 라우팅이 중요하다. 헤더가 중요하다. 헤더가 오류가 있는지 확인
    1) 네트워크를 통해 패킷이 전송될 때 발생한 오류를 검출하기 위해 사용
    2) IP헤더를 16비트 단위로 다 잘라서 더한다. 그리고 캐리가 발생하면 해당 캐리도 더한다. 그리고 1에 대한 보수 연산을 수행한다. 그래서 이것의 값이 0이면 오류가 없는 것이고, 다른 값이면 오류가 있는 것이다.

  • 전송 측(source)과 목적지(destination) 주소 영역
    1) 패킷을 전송하는 호스트의 주소와 패킷을 수신하는 호스트의 주소를 나타내는 영역
    2) 32비트로 구성

💎 IP 주소의 표현

  • IPv4 전송 측과 목적지 주소 영역이 각각 32비트로 구성

  • Ipv4는 기본적으로 클래스로 구분되는 주소체계를 취함

  • 심볼화된 이름, 즉 도메인이름을 사용 : www.~~ 를 32비트의 숫자로 나타낸다.

  • 호스트 컴퓨터 A는 IP 주소체계를 이용해서 호스트 컴퓨터 B로 데이터 패킷을 전송

💍 dotted decimal notation

  • 네트워크상에서 데이터통신을 위해서는 반드시 고유한 IP 주소가 필요함

  • IP 주소는 32비트체계로 이루어져 있으며, 이는 네트워크의 규모에 따라 주소체계를 선택할 수 있도록 클래스로 구분되어 있다.

  • 이진수 32비트로 이루어진 IP주소는 8비트 4개의 영역으로 구분하여 10진수로 표현함
    -> '점으로 구분된 십진표기법(dotted-decimal notaion)'

💎 IP 주소의 클래스

  • 클래스의 종류 : A 클래스, B 클래스, C 클래스, D 클래스, E 클래스가 있다.

  • 앞의 4비트로 식별 -> 0이면 A, 10이면 B, 110이면 C, 1110이면 D, 1111이면 E

  • 총 가능한 IP 주소 중 50%가 A 클래스에, 25%는 B 클래스에, 12.5%는 C 클래스에 할당되고, D 클래스와 E 클래스에는 각각 6.25%씩 할당

💎 클래스별 구성

  • 각 클래스는 'IP 네트워크 주소(또는 네트워크 ID,Netid)'와 'IP 호스트 주소(호스트 ID, Hostid)'의 조합으로 구성

  • IP 네트워크 ID : 네트워크의 식별을 위한 것

  • IP 호스트 ID : 네트워크의 호스트 컴퓨터를 식별하기 위한 것

💎 서브넷이란 무엇인가

  • 서브넷 : 네트워크를 나눈것이다. 하나의 IP 네트워크 주소를 네트워크 내부에서 적절히 분할하여, 실제로는 다수의 상호 연결된 하부 네트워크로 나누어 사용하는 방법

  • 서브넷팅 : 나눈 네트워크를 관리하는 것이다. 자신의 회사나 조직에 할당된 네트워크 ID의 IP 주소를 사용하여 내부적으로 여러 개의 서브넷을 구성하는 과정

💎 서브넷을 사용하는 이유

  • 네트워크 크기를 감소시키기 위해

  • 네트워크의 관리와 유지보수를 용이하게 하기 위해

  • 어떤 회사나 기관에서 서로 다른 LAN 기술을 수용할 수 있도록 구성하기 위해

  • 전기적 신호 혹은 광신호의 특성에 따라 연결할 수 있는 호스트 수와 케이블의 길이에도 제한과 함께, 연결해야 하는 호스트 수가 많아지면 네트워크를 여러 그룹으로 분리할 필요성 때문

  • 관리의 유용성을 증대 -> 트래픽에 따른 영역의 분리가 가능하도록 하여

  • 점대점 링크를 사용할 수 있도록 구성하기 위해
    ex) NetId 10.108.0.8 NetMaskt 255.255.255.252. /30
    HostIP : 10.108.0.9, 10.108.0.10

💎 서브넷의 크기

  • 먼저 필요한 서브넷의 크기가 결정되면, 이에 따라 필요한 비트수를 계산해야 함

  • 사용 예

6개를 사용하는 이유는 서브넷 주소가 전부다 0이거나 1인 경우에 대해서는, 지역으로 간다거나, 브로드캐스트를 하는 주소이기 때문에 3비트를 할당하여 8개가 이용할수있는 서브넷 주소가 8개에서 2개를 뺸 6개가 된다.

💎 서브넷 마스크

  • 서브넷 마스크는 하나의 IP 네트워크 주소를 다시 여러 IP 서브 네트워크로 분할하는 기능을 수행

  • IP 네트워크 ID 주소부를 나타내는 영역을 IP 호스트 주소 영역까지 확장하여, 하나의 IP 네트워크 주소를 또 다른 여러 개의 IP 네트워크 주소 생성

  • 서브넷으로 구분하지 않는 IP네트워크 주소에 대한 네트워크 마스크는 모든 네트워크를 나타내는 영역의 비트(네트워크 비트)를 1로 설정하고, 모든 호스트를 나타내는 영역의 비트(호스트 비트)를 0으로 설정

출처 ) 초연결 사회의 데이터통신과 네트워킹

profile
학습한 내용을 담은 블로그 입니다.
post-custom-banner

0개의 댓글