* AS(Autonomous System)
- Routing 관점에서 인터넷은 여러개로 쪼개져 있다.
- 이 각각의 단위를 AS라고 한다.
> 여기서 AS란? 하나의 관리기관에 소속된 Network 라우터들의 집합을 말한다.
ex) KT AS망, SKT AS망이 존재할 것이다.
- 각각의 AS는 고유한 IP주소를 갖고 있다.
- 하나의 AS내에서는 동일한 라우팅 Protocol을 사용한다.(IGP)
- AS간의 routing Protocol은 EGP이다.
- IGP는 RIP과 OSPF로 분류되는되 사용되는 알고리즘에 따라서 불리는게 달라진다.
- EGP는 BGP라는 것이 있다.
- 위의 그림에서와 같이 AS간의 routing protocol은 대표 router가 담당하므로, 모든 router가 두개의 방식을
모두 구현할 필요는 없다.
* IGP Algorithm
- Distance Vector(RIP Algorithm)
> 인접한 노드의 정보를 교환하여 최단 거리를 생각해 둔다.
- Link State Algorithm
ⓐ Link State Packet 작성. Link Sate Packet은 자신이 인접해 있는 Router에 대해서만 작성한 것이다.
연결정보 뿐만 아니라, Flooding에 사용될 AGE와 SEQ를 추가로 정의 해준다.
ⓑ 각 Router는 모든 Router에게 자신의 Link State Packet을 보내야 한다.
> 이때 사용되는 방식이 Flooding방식이다. 전달 받은 정보를 연결된 나머지 port로 broadcasting을 해준다.
> 이때 받았던 것을 중복적으로 받게되어 traffic이 발생하며, 어떤것이 최신의 것인지 알 수 없다.
이를 해결하는것이 아까 Link State에 정의된 age와 sequence 값이다.
> Link State Packet을 전달 받은 각 노드는 정보를 합쳐서 Link state database를 제작할 수 있다.
ⓒ 최단 경로를 계산한다. > Dijkstra Algorithm
- Distance vector algorithm과 Link state routing algorithm의 차이점
> 전체 네트워크 구성을 아는가? 모르는가?
> Distance vector algorithm은 주변의 router로 받는 정보만 가지고 하기 때문에 전체 구성을 알 수 없다.
> Link state algorithm은 flooding된 결과로 link state database를 모든 노드가 알고 있어, 네트워크 구성을 안다.
* AS간의 라우팅(BGP : Border Gateway Protocol)
- BGP의 전달방식은 예를 통해서 알아 보도록하자.
- 각 AS의 대표 router는 다른 AS의 대표 router에게 정보를 전달해준다. 예를 들어 AS1의 router정보가 다른
router에게 전달되는 과정은 다음과 같다.
ⓐ 자신의 UPDATE message를 작성한다. UPDATE message에는 AS를 찾아가는데 필요한 router PATH와
정보를 받는 router의 ip 주소, 자신에게 연결된 network이름을 작성한다.
UPDATE message
- AS_PATH = {AS1}
- NEXT_HOP = {R1's IP address}
- NLRI = {N1,N2}
ⓑ 전달된 UPDATE message를 r2로 보내며 r2는 AS_PATH에 자신을 추가하고, 다음 router에게 자신에게
전달하면 된다고 r4에게 알려준다.
Modify UPDATE message
- AS_PATH = {AS1, AS2}
- NEXT_HOP = {R2's IP address}
- NLRI = {N1, N2}
ⓒ 이렇게 반복된 결과 r3에는 다음과 같은 AS1에 대한 연결정보를 가질 것이다.
AS1에 대한 연결 정보
- AS_PATH = {AS1,AS2,AS4} // AS2,4를 거쳐서 1로 가는 군!!
- NEXT_HOP = {R4's IP address} // 나는 AS1로 보내기 위해서 일단 R4로 보내면 되는 구나!
- NLRI = {N1, N2} // AS1에는 N1, N2 network가 존재하는구나...
- 만약, 경로가 2개가 있을때 cost가 최소가 되는(AS_PATH의 원소개수가 최소인) 경로를 따라간다.
But, BGP는 AS Policy(AS간의 정책요소(사업적 개념, 제휴 그룹 같은 것))에 의해서 꼭 최단 경로를
따라 가는 것은 아니다.