오래 못 할 짓 하지 않기

[ 네트워크 ] 16. Network layer : Data Plane 본문

3학년 2학기/네트워크 (Network)

[ 네트워크 ] 16. Network layer : Data Plane

쫑알bot 2024. 11. 7. 13:27
728x90

Network Layer의 역할

- Sender 

   : Segment➡️  Datagram으로 Encapsulation 하여 

     Link Layer로 보낸다.

 

 

- Receiver 

   : Segment를  Transport Layer로 보낸다.

 

 

✚ Internet Device에서 Network Layer가 있는 건

    [ Host와 Router ]

 

* Forwarding

: 현재 Input Link를 통해서 들어온 Packet을

 어느 Output Link로 보내는지 정하는 것

 

[ Local Path 성향 ]

 

 

* Routing

: Packet에 대해서 Source에서 Destination으로 가기 위해

  어느 Router Path를 거칠지 정하는 것

 

[ Global Path 성향 ]

 

 

📌Router의 역할

- Datagram안에 있는 Header에 붙은 IP를 확인한다.

- Datagram을 Input Port에서 Output Port로 보낸다.

 

 


 

- Data Plane [ Forwarding 기능

: 지금 들어온 Packet 안에 Header를 보고

  어느 Port로 Datagram을 보내야 하는지 정하는 것

 

Input Port ➡️ Output Port로 Datagram을 보내는 것 

 

- Control Plane

: Datagram이 Source에서 Destination 까지

  어떤 Router를 통해, 어떤 경로로 갈지 정하는 것

  

방법에는

1) 가까운 Router들끼리 소통하여 경로를 정하는 Traditional Routing

2) Server에서 Route 길을 다 정한 뒤에 보내는 Software-Defined Networkd (SDN)이 있다.

 


 

https://suyeon96.tistory.com/48

 

 

Traditional Routing
= Per - router Control Plane

 

 

- Routing 알고리즘 : 각각의 라우터에서 실행된다.

- Router =  [ 포워딩 + 라우팅 기능] 을  모두 갖고 있어야 한다.

 

 

Routing 알고리즘을 통해 나온 Table 해당 Table에는 이웃하고 있는 Router List가 있다.

 

들어오는 Packet은 Header에 어떤 router로 가야 하는지 정보가 있어서 

각 Router는 Header에 있는 정보를 확인한 뒤  그에 맞는 Router로 보낸다. 

 

위 사진을 보면 패킷 헤더에 0111 로 간다고 있음.

➡️ 해당 라우터 테이블에 0111 라우터는 2번 Link라고 되어있음

➡️ 지금 들어오는 패킷을 2번 Link로 보냄.

 

 

 


 

Software - Defined Networkd (SDN) Control Plane

 

CA = Server ↔️ Router 소통 창구

 

- Routing 알고리즘 : Remote Controller에서 실행된다.

- 계산은 Remote Controller / 라우터는 포워딩만 수행한다.

 

 


Network Service Model

Q. Datagram을 Sender가 Receiver에게 보낼 때

   어느 Network Service를 사용할 것인가?

 

1) Individual Datagram Service

- 보장된 전송 ( Guaranteed Delivery )

- 지연 시간 x ms 이하 보장

 

 

2) Flow of Datagram Service

- In-Order 전송

- 최소 대역폭(Bandwidth) 보장

- 패킷 간 간격 변화에 제한이 있다. 균등하게 들어와야 함 

 

 

Network Layer Service 모델은 다음과 같이 있다.

다 각기 다른 성능이 있고 특징이 있는데 우리는 Best Effort 서비스를 보자

 

 

" Best Effort " Service Model

[ 보장하지 않는 항목 ]

- 목적지까지 성공적인 Datagram 전송

- 전송 Time / Order

- 종단에 사용 가능한 Bandwidth

 

[ 그럼에도 쓰는 이유 ] 

- Simplicity of Mechanism : 단순한 매커니즘 덕분에 광범위하게 배포가 가능하다.

- Provisioning of Bandwidth : 충분한 대역폭 제공이 되기 때문에, 실시간 어플리케이션 지원

  = "Good Enough" for "Most of the time"

 

- 분산 서비스 , 탄력적 서비스 혼잡 제어...등등

 

➡️ 이러한 점 덕분에 Best effort service의 성공을 부정하기 어렵다.

 

(출처)

한동대학교 컴퓨터 네트워크