⚠️ 들어가기 앞서
경북대학교 컴퓨터학부 COMP0414-001 컴퓨터망 과목을 공부하며 정리한 글입니다.
길고 길었던 Transport layer의 이야기를 끝내고 Network layer로 왔다..!
이 챕터에서는 라우터가 어떻게 동작하는지, 그리고 사실상 네트워크 계층의 알파이자 오메가인 Internet Protocol(IP)
에 대해서 다룬다.
먼저 간단히 용어정리부터 하고 넘어간다. 이전에도 많이 나왔던 용어들이라 낯설진 않다.
sender
: 일명 송신자, segment를 datagram으로 캡슐화(encapsulate)하여 링크 계층으로 보내는 사용자
receiver
: 일명 수신자, 송신자가 보낸 datagram을 받아 전송 계층으로 보낸다.
router
: IP datagram의 헤더 부분을 조사하여 이 데이터그램이 목적지로 가기 위해서 어느 link로 가야 하는지 적절하게 내보내는 역할
forwarding
: 라우터의 input link로 들어온 패킷들을 적절한 output link로 내보내는 기능. 패킷의 헤더 부분에 명시된 목적지 주소를 확인한 뒤 routing table
에서 목적지를 찾는다.routing
: 출발지부터 목적지까지 향하는 길을 설정하는 기능모든 라우터에는 control plane과 data plane이 있으며, 각각의 라우팅 알고리즘은 서로 상호 작용한다.
data plane
: local, per-router function.
라우터의 input port로 들어온 datagram이 어떻게 output port로 forward되는지를 결정
control plane
: network-wide logic.
datagram이 출발 호스트로부터 목적지 호스트까지의 길을 라우터들 사이에서 어떤 경로를 통해 갈 것인지를 결정
- traditional routing algorithm : implemented in router
- software-defined networking (SDN)
: implemented in server
datagram 하나하나가 신뢰성 있게 전송되는 것을 보장하는 것에 주안점
datagram들이 전송되는 전체적인 flow에 주안점