TCP/IP 프로토콜 계층 vs OSI 7계층

 

네트워크 계층 하는 일

 

OSI 7계층에서 3Layer 인 네트워크 계층에서는 무슨 일을 할까?

네트워크 계층은 다른 여러 라우터를 통한 라우팅을 비롯한 패킷 전달을 담당한다. 보스턴에 있는 컴퓨터가 캘리포니아에 있는 서버에 연결하려고 할 때 그 경로는 수백 만 가지다. 이 계층의 라우터가 이 작업을 효율적으로 처리한다.

 

패킷이란 전송 시 전송 단위를 말하고, 라우팅이란 데이터를 보낼 때 최적의 경로를 선택하는 과정이다. 3계층 장비는 라우터와 L3 스위치가 해당된다. 

정리하자면 3계층은 네트워크를 논리적으로 구분하고 연결하는 계층으로 이때는 논리적 주소를 사용한다. 

 

하는 일을 정리하면 

1. IP 패킷 송수신

2. IP 패킷 전달

3. IP 주소와 이에 대한 경로 찾는 기술

을 수행한다.

 

IP 패킷 송수신을 이해하려면 IP 패킷 헤더 구조에 대한 이해가 필요하다.

IP 패킷 전달을 이해하려면 라우터의 패킷 포워딩 기술에 대한 이해가 필요하다.

IP 주소와 이에 대한 경로 찾는 기술을 이해하려면 IP 주소에 대한 목적지까지 경로 찾는 알고리즘 및 자료구조에 대한 이해가 필요하다. 

 

아래 이미지는 Alice 의 컴퓨터에서 Bob 의 컴퓨터로 데이터를 보낼 때 네트워크 계층에서 겪게되는 서비스를 그림으로 나타낸 것이다. 

앨리스 네트워크 계층에서 캡슐화하여 라우터로 전송 -> 라우터에서 언캡슐화 후 다시 캡슐화해서 다른 라우터로 전송 전송 전송 후 밥의 컴퓨터로 도착해서 언캡슐화

 

데이터를 전송할 때는 패킷 단위로 전송하므로 IP 패킷 만들기(Packetizing) 가 필요하다.

아래 과정은 인터넷 상에서 웹 브라우저를 클릭했을 때 겪게되는 과정인데 이때 빨간색으로 표현한 부분이 네트워크 계층에서 하는 일이다. 패킷으로 만드는 것은 캡슐화 과정이다. 

 

1. 웹 브라우저 클릭

2. 클릭에 대한 내용을 HTTP 메시지로 만들기

3. HTTP 메시지 TCP 세그먼트로 만들기

4. TCP 세그먼트를 IP 패킷으로 만들기 (encapsulation)

5. IP 패킷을 이더넷 프레임으로 만들기

6. 이더넷 프레임을 0,1 비트로 만들어서 보내기

7. 비트를 아날로그 신호로 보내기

 

 

네트워크 계층의 기능은 크게보면 두 가지로 나눌 수 있다.

- Routing(라우팅) : "길 찾기 기능" // 라우팅 프로토콜 예시 : OSPF, BGP
- Forwarding(포워딩) : "앞으로 보내는 기능" // Ex. IP

 

네트워크 계층을 두 계층으로 나누면 다음과 같다.

 

 Data Plane // 포워딩과 관련된 계층 [실제 패킷(데이터)를 전달하는 계층]

 Control Plane // 라우팅과 관련된 계층

기존의 라우터는 Data Plane과 Control Plane이 하나의 라우터에 묶여있었다면,

 

SDN의 컨셉은 Data Plane과 Control Plane을 분리한다.(Decoupling)

 

라우터는 데이터 패킷의 포워딩에만 집중할 수 있도록 하고, 

 

기존의 Control Plane이 하던 라우팅은 원격의 중앙 집중화된 서버에서 담당하도록 한다. 

 

이 원격 서버를 SDN 컨셉에서는 SDN Controller라고 한다.

 

 

아래 그림은 네트워크 계층에서의 기능을 그림으로 나타낸 것이다. 

네트워크 계층에서는 경로를 선택하므로, 경로 선택 알고리즘들을 가진다. 이 알고리즘들이 routing protocol 과 SDN 컨트롤러에 구현되어 있고, 이 선택된 최적의 경로를 포워딩 테이블(라우팅 테이블)에 저장해둔다. (라우팅이란 라우팅 알고리즘을 이용하여 포워딩 테이블을 만드는 과정으로 이해할 수 있다)

 

그 후 포워딩이란 과정이 필요한데, 포워딩이란 포워딩테이블에 적힌 목적지 주소에 대응된 출력 포트로 패킷을 이동시키는 작업이다. 이 과정은 스위칭이라고도 한다. 

다음은 IP 프로토콜에 대해 알아보자

네트워크 계층에서는 IP 프로토콜을 사용한다. 

 

IPv4 프로토콜

  • 네트워크 상 데이터를 교환하기 위한 프로토콜
  • 데이터가 정확하게 전달되는 것을 보장하지는 않는다. (4계층 TCP에서 보완)
  • 중복된 패킷을 전달하거나 패킷 순서를 잘못 전달할 가능성 존재 (악의적으로 이용시 Dos 공격)

 

 

참고로 ICMP 프로토콜은 

- IP 프로토콜을 이용하여 ICMP 메세지 전달 

- 네트워크 계층에 속하여 네트워크 관리 프로토콜의 역할 수행 

   (여기서 포인트는 종단간 데이터 수송 역할 X)

 

IP Datagram/Packet 포맷

728x90

'Network' 카테고리의 다른 글

인터넷 잡학  (1) 2023.12.08
네트워크 계층 라우터  (0) 2023.10.30
응용 계층 정리  (0) 2023.10.21
[컴퓨터네트워크] tcp 혼잡제어  (0) 2023.10.16
[컴퓨터네트워크] 비동기 프로그래밍  (0) 2023.10.15

+ Recent posts