: 라우터가 라우팅 테이블을 어떻게 만드는지
Inter- and Intra-domain routing
- 라우터는 네트워크와 네트워크를 연결한다.
Autonomous sustems (AS)
- 자율시스템. 한 단체에 속하여 관리, 제어되며 동일한 라우팅 정책을 사용하는 네트워크
- AS is a group of networks and routers under the authority of a single administration.
- Intradomain: A->R1 가는 최단경로 설정
- Interdomain: R1->R3 가는 건 최단 경로가 아닌 Rule based. R1-R2-R3가 더 적합하면, 그렇게 갈 수도 있음.
Popular routing protocols
- Intradomain: 도메인 내의 경로 설정(최단경로)
- Interdomain: 도메인끼리 경로 설정(Rule based)
- 흰색 상자 -> 개념
- RIP, OSPF, BGP -> 프로토콜 이름. ㅁ개념을 이용한 ~~프로토콜. 얘네 이름은 알아야 한다.
두 가지 라우팅 프로토콜 클래스 - distance vector routing, link state routing
1. Distance vector routing
The fact behind Bellman-Ford algorithm
- 최단경로찾기 기본 개념
- 테이블 업데이트
- 받아서 비교해보고 cost가 더 작으면 업데이트. 업데이트되면 또 주변에 보냄.
- modified table: 임시 테이블 - A->C 2니까 recieved 테이블에서 2씩 더함
- modified table과 old table(원래 테이블)을 비교한다.
** 만약 C->E cost가 4에서 7로 바뀌었다면?
: C가 수정 테이블을 새로 보내면 [E | 7], 9랑 6이랑 비교해서 무시하는 게 아니라 ‘누가 보내는 테이블인지’ 보고 C가 보낸거라면 더 큰 값이어도 업데이트한다.
- 어떻게 주고받는지: 하나씩 보내고 하나씩 업데이트한다.
Two-node instability
- 테이블을 주고받는 경우
1. 주기적으로 교환
2. 수정이 되면 교환
- 아래 그림에서, A가 B에게 수정 내용을 전달하기 전에, B가 주기가 되어서 자신의 테이블을 A에 보내는 문제
-> loop 발생 (네 번째 박스)
- 해결법
1. ∞ = 16 : 16만큼 커지면 cost를 ∞으로 간주, 멈춘다.
2. Split horizon : Next가 A인 정보는 A에 보내지 않는 것
-> A는 B가 X에 대한 정보가 없어서 안 보내는 건지, next가 A라서 안 보내는 건지 알 수 없는 문제 有
3. Split horizon & Poison : Next가 A인 정보는 cost를 ∞으로 보낸다.
Three-node instability
- A가 ∞으로 수정되어서 B와 C에게 정보를 보냈는데, C로 가는 패킷만 lost 됨
- B는 테이블을 업데이트
- C는 주기가 되어서(타이머) 패킷을 A와 C에 보냄 (cost 2짜리)
- A->B->C로 계속 도는 loop 발생
- 해결법: ∞ = 16 밖에 없음.
2. Link State Routing
- 도메인의 각 노드가 도메인의 전체 토폴로지[the list of nodes and links, how they are connected including the type, cost (metric), and the condition of the links (up or down)]를 갖는 경우, 노드는 Dijkstra 알고리즘을 사용해 라우팅 테이블을 만들 수 있다.
Link state knowledge
- ㅁ’s link state: ㅁ에 direct하게 연결된 정보
Dijkstra Algorithm
- 본인이 루트로 시작, 전체지도를 만듦 (!= distance vector)
'네트워크 > 컴퓨터네트워크' 카테고리의 다른 글
ICMP (Internet Control Message Protocol) (0) | 2021.06.28 |
---|---|
Internet Protocol Version 4 (IPv4) (0) | 2021.06.28 |
Web and HTTP (0) | 2021.06.28 |
Delivery and Forwarding of IP Packets (0) | 2021.06.28 |
NAT (Network Address Translation) (0) | 2021.06.28 |
댓글