[지식창고]/네트워크

[컴퓨터 네트워크] Chapter4. Network Layer (1)

개발새발주발 2023. 5. 8. 21:57
728x90

Intro 

Application Layer, Transport Layer을 배우고나서 Network Layer까지 왔다 !

 

이 챕터에서는 네트워크 서비스에 있는 원리들을 배울 것이다.

바로 data plane과 control plane:

- 네트워크 레이어와 서비스모델 
- 포워딩 (forwardong) vs 라우팅(routing)
- router가 작동하는 방법
- Generalized forwarding
- SDN controllers
- Internet Control Message Protocol(ICMP)
- 네트워크 관리

Instantitaion, implementation in the Internet : 인터넷에서의 구현, 실체화 

 

Network Layer : 네트워크 계층

-sending host에서 receiving host로 전송 세그먼트

- sending side: 세그먼트를 다이어그램으로 encapsulate한다. 

- receiving side: 세그먼트를 transport layer으로 전송한다.

- 네트워크 레이어 프로토콜은 모든 host와 router에 있음 

- router는 그것을 통과하는 모든 IP 데이터그램의 헤더 필드를 시험한다. 

 

Network Layer에서 짱 중요한 2가지 기능 

Forwarding : 패킷을 실제 라우터의 input으로부터 출력쪽에 있는 적절한 라우터로 보내는 것 

ex. 기차 : source에서 destination을 정해놓고 정해놓은 길로 가는 프로세스

Routing : 패킷이 source 에서 destination까지 이동할 길을 찾는(계산하는) 것 

→ 라우팅할 때 최소 cost가 드는 것이 좋겠지? 그래서 routing algorithm을 사용한다. 

ex. 자동차 : single interchange를 거쳐가는 프로세스

 

Interplay between routing and forwarding 

 

- routing 알고리즘은 네트워크에서 end-end path를 결정함 ~ 

 

- Forwarding 테이블에서 Header value에 따라서 output link를 결정한다 ! 

즉, 포워딩 테이블은 이 라우터에서 로컬 포워딩을 결정함 

 

Connection setup 

몇몇 네트워크에서 중요한 기능 3관왕

- ATM, frame relay, X.25 

데이터그램 흐름 전에, 두개의 end hosts와 intervening 라우터가 가상 연결(virtual connection)을 한다 

- 라우터가 포함됨

네트워크 vs 전송 계층 connection service : 

  • network : 두개의 호스트간 연결 ( VCs케이스에서는 또한 intervening routers을 포함할듯 ~ ) 
    → 호스트간 연결 = IP 주소 가지구 연결 
  • transport : 두 개의 프로세스 간 연결
    → 프로세스 간 연결 = port 주고 가지구 연결 

Network service model

그래서,, 네트워크 서비스 모델이 뭐임 ? 

 

Q. "채널"을 통해 송신자에서 수신자로 데이터그램을 전송하기 위한 서비스 모델은 무엇인가요 ? 

 

→ 각각 데이터그램에 대한 예시 서비스 (개별적으로 전송되는 경우) : 

  1. 보증된 전달
  2. 40밀리초 미만의 지연시간으로부터 보증된 전달 

→ 여러 개의 데이터그램에 대한 예시 서비스 (여러개가 같이 전송되는 경우) :

  1. 순서대로 전달되는 데이터그램 (in-order datagram delivery) 
  2. 흐름에 대한 보장된 최소 대역폭 (guaranteed minimun bandwidth to flow)
  3. 패킷 간 간격의 변경 제한 (restrictions on changes in inter-packet spacing)

네트워크에서 데이터그램을 전송하기 위한 서비스 모델의 예시로 데이터그램이 개별적으로 전송되는 경우와 여러개가 같이 전송되는 경우에 대한 서비스를 제공하는 것을 말한다. 각각의 예시 서비스는 전달되는 데이터그램의 특징과 필요성에 따라 다양하게 제공된다. 이를 통해 데이터 전송의 안정성과 신뢰성을 보장하며, 원하는 데이터 전송 방식에 맞게 서비스를 전달할 수 있삼! 

 

**데이터그램 : 네트워크 레이어의 PDU(프로토콜 데이터 단위  = 패킷) 

 

App에 따라서 이러한 Network layer서비스 모델이 있을수도 있다 ~ 를 알려주는 모델이다

 

우선 인터넷을 보면 .. 아무것도 안함! 결국 Transport layer에서 모든 것을 다한다는 것을 알 수 있다

서비스 모델을 보면 CBR, VBR, ABR, UBR등 다양하게 있음 ~~ 

* CBR : Const Bit Rate - bit rate가 일정함 ~ 
* VBR : Variable Bit Rate - bit rate가 다양함 (네트워크 좋아 ~ = bit rate 증가, 네트워크 안좋아.. = bit rate 감소 )
* ABR : Available Bit Rate - 중간에 congestion이 발생할지 알려줌 (network의 용량을 파악하여 buffer overflow를 막는다 )
* UBR : Undefine Bit Rate - 안한다 ~~ 

 

 

사실 교수님이 중요하지 않다고 말씀해주심 

그냥 그런게 있나부다 ~ 라구 생각하고 넘어가기 ! 


[출처 및 참고]

 

한국항공대학교 「컴퓨터 네트워크」 강의 자료