Network Layer 데이터단위

네트워크 레이어의 데이터 단위는 패킷(packet) 이다. 트랜스포트 레이어에서 세그먼트가 내려오면서 packet 의 데이터 부분에 쓰이고 그리고 부가적인 정보들은 헤더에 쓰인다.


현재 TCP / IP 기반의 네트워크는 TCP 를 주로 이용하면서 하부 네트워크 레이어의 프로토콜로 IP 를 사용하기 때문에 붙여진 표현이다. 레이어 계층을 하나씩 내려오면서 캡슐화된다.


라우터의 주요 두가지 기능

네트워크의 핵심이 되는 구성요소는 라우터이다. 패킷이 전달되는 홉마다 라우터가 존재한다. 라우터는 네트워크 레이어에 대한 동작만 있으며 현재 인터넷에 존재하는 모든 라우터들은 트랜스포트 레이어와 애플리케이션 레이어가 구성되어 있지 않다. 따라서 세그먼트 처리는 못하지만 패킷 처리는 가능하다. 

  • 포워딩
    패킷을 수신받고 패킷의 목적지를 확인하여, 다음 라우터로 전달

  • 라우팅
    패킷을 수신받고 패킷의 목적지를 조회한다. 그리고 포워딩 테이블을 참조하여 어디로 보낼치 결정한다. 그리고 이러한 포워딩 테이블의 생성은 라우팅 알고리즘이 수행한다. 포워딩 테이블을 만드는 것.


IP Protocol

  • Version
    TCP / IP 는 IPv4 이용

  • Internet Header Length
    IP 헤더의 길이를 32bit (4byte) word 단위로 헤더길이를 표시

  • Type of Service
    요구되는 서비스 품질을 나타낸다.

  • Total Packet Length
    IP 헤더 및 데이터를 포함한 IP 패킷 전체의 길이를 바이트 단위로 길이를 표시한다.

  • Fragment Identifier
    각 조각이 동일한 데이터그램에 속하면 같은 일련번호를 공유한다. 분열이 발생한 경우, 조각을 다시 결합하기 위해 원래의 데이터를 식별하기 위해 사용한다.

  • Fragmentation Flag
    분열의 특성을 나타내는 플래그이다. 처음 1bit는 항상 0으로 설정되며 나머지 2비트의 용도는 다음과 같다.

    • May Fragment : IP 라우터에 의해 분열되는 여부를 나타낸다. (0 : 분열가능 / 1 : 분열방지)

    • More Fragment : 원래 데이터의 분열된 조각이 더 있는지 여부를 판단한다. (0 : 마지막 조각 / 1 : 조각 더 있음)

  • Fragmentation Offset
    8바이트 오프셋으로 조각에 저장된 원래 데이터의 바이트 범위를 나타낸다.

  • TTL (Time To Live)
    IP 패킷 수명 : 말 그대로 패킷의 생존시간을 의미한다.
    패킷이 출발지로부터 전송된 이후에 얼마나 라우터를 거칠 수 있는지 결정한다. TTL 이 10이라면 하나의 라우터를 지나칠때마다 1씩 감소시키며 0이 되는 순간 해당 패킷은 드랍된다. 해당 값은 1 ~ 255 사이의 값을 지정한다.

    TTL (Time To Live) 설정 이유
    라우팅 알고리즘이 오작동으로 인해 사이클이 생겨 무한적으로 라우터를 거치는 경우 네트워크 상황에 지대한 영향을 끼친다. 이를 미연에 방지하기 위한 것이다. 

  • Protocol Identifier
    어느 상위 계층 프로토콜이 데이터 내에 포함되어 있는가를 나타낸다. 즉, IP 패킷 내의 데이터 부분에 캡슐화된 데이터가 어떤 프로토콜인지 확인할 수 있다. 네트워크 레이어에서 트랜스포트 레이어로 디캡슐레이션 하는 경우 필요하다.

  • Header Checksum
    헤더에 대한 오류검출

  • Source Address
    송신처(출발지) IP 주소

  • Destination Address
    수신처(목적지) IP 주소

  • Options (IP Header Option)

subnets (서브넷)

IP 주소는 네트워크 주소와 호스트 주소로 나뉘어져 있다. 서브넷은 중간에 라우터를 거치지 않고 갈 수 있는 호스트들의 집합이다. 서브넷에 있는 호스트들은 서브넷 파트에 있는 주소가 동일하다. IP 주소라는 것은 결국 호스트를 지힝하는 것이 아닌 인터페이스를 지칭하는 것이다. 네트워크 인터페이스가 여러 개 있는 디바이스는 라우터가 대표적이다. 라우터는 네트워크 인터페이스가 여러 개 있으며 이 각각의 네트워크 인터페이스들은 서로 다른 IP 를 가지고 있는 것이다. 


따라서 인터페이스에 배정된 IP 주소는 다를 뿐만 아니라 서브넷 조차도 다르다. 서브넷은 라우터를 거치지 않고 갈 수 있는 집합이며 라우터를 넘어가게 된다면 서로 다른 서브넷의 영역에 들어가게 된다. 라우터라는 것은 여러 개의 서브넷에 속한 교집합의 멤버로서 볼 수 있다.



Posted by doubler
,