반응형
Router의 기본 알고리즘 - Routing과 Forwarding
라우터는 데이터의 목적지 주소를 보고, local forwarding table을 참조하여 어느 경로를 통해 데이터를 전송해야 할지 판단한다.
이 때, 판단해서 보내는 기능을 Forwarding이라고 하고, local forwarding table을 만드는 기능을 Routing이라고 한다.
1. Routing
- 데이터를 송신하는 호스트는 패킷을 라우터로 보낼 때 각 패킷마다 헤더에 목적지(end system)의 정보를 포함시킨다. 라우터는 패킷의 헤더를 통해, source부터 destination까지 가는 경로를 결정한다.
- 이 때 사용되는 것이 local forwarding table이다.
- local forwarding table은 라우터들끼리 만들어야한다.
- 데이터의 송수신이 발생하기 전에 라우터들끼리 미리 정보를 주고받는다.
- 그래서 라우터들끼리 누가 존재하고 누가 연결되어 있고 어디로 보낸게 가장 합리적인지 미리 결정(routing algorithm)한다.
- 그리고 이것을 forwarding table로 만든다.
- 이후 패킷이 오면 forwarding table에 근거하여 내보내는 일을 진행할 수 있다.
2. Forwarding
- 어느 경로로 가야할 지 local forwarding table을 보고 판단하여 경로를 알아내면, link를 통해서 패킷을 그 곳으로 보내주는 역할을 한다.
- local forwarding table에서 packet header로 이동할 라우터를 찾으면, 그 라우터에 들어온 data의 output link가 결정된다.
함께 보면 좋은 글
참고자료
- Computer Networking: A Top Down Approach 6th edition - Jim Kurose, Keith Ross Addison-Wesley March 2012
- https://inyongs.tistory.com/44
- https://joooootopia.tistory.com/5
반응형
'Computer Science > Computer Network' 카테고리의 다른 글
[네트워크] Internet protocol stack (인터넷 프로토콜 스택) (0) | 2022.10.17 |
---|---|
[네트워크] Network Topology와 Layout (0) | 2022.10.17 |
[네트워크] Packet Switching에서의 4가지 지연 원인 (0) | 2022.10.17 |
[네트워크] 패킷의 지연과 손실 (0) | 2022.10.17 |
[네트워크] Packet Switching, Circuit Switching (0) | 2022.10.17 |