네트워크 기초(계층에 관해서..)

image

컴퓨터라는 세상은 User 모드, Kernel모드, 하드웨어 (H/W) 총 3개의 레이어로 이루어져있다.

이중 User 모드에서 Kernel 모드까지의 영역을 소프트웨어(S/W) 영역이라 할 수 있다. 즉, 소프트웨어는 시스템 소프트웨어랑 어플리케이션으로 나뉜다.

OSI 7 Layer 는 특별한 이유가 없다면 보통의 경우 이 3개의 레이어를 모두 아우르는데, Kernel 영역에 L3 Network 계층, L4 Transport 전송계층이 있다.

또한 DoD에서는 User 모드, Kernel모드, 하드웨어 3개의 영역을 위에서부터 User모드를 Application, Kernel 모드를 Transport, Network 그리고 하드웨어영역을 Access영역으로 나눈다.

User 영역에 어떤 Process가 있다고하면 운영체제 수준, Kernel 영역이 예를들어 윈도우다라고하면 윈도우 수준에서 프로토콜이 구현되어 있다. 앞서 얘기한 L4 Transport 전송계층, L3 Network 계층이 각각 TCP, IP로 구현이 된 것이다.

그리고 하드웨어 영역에 네트워크 랜카드같은 네트워크인터페이스카드(NIC)가 있고 이를 움직일 수 있는 Device Driver가 Kernel 영역이면서 NIC과 TCP/IP 사이에 존재한다.

Kernel의 구성요소들을 어플리케이션으로 추상화할 때는 어떤 File의 형태로 추상화한다. 이런 추상화에서 이때 File은 네트워크와 관련된 것으로 File이라 부르지않고 [Socket]이라고 부른다.

OSI 7 layer 이든 DoD 이든 분류기준이 있지만, 중요한 것은 그것이 어떻게 구현이 되는가이다.

이 구현에 관심을 가질 필요가있다.

DoD 계층에는 식별자라는게 존재한다.

DoD

  • Access 수준 식별자 → MAC주소
  • Network 수준 식별자 → IP주소
  • Transport 수준 식별자 → Port 번호