CS/네트워크

[네트워크] 4. Network layer (4) - AS / OSPF / BGP

공영재 2023. 12. 4. 21:24

Reference - Computer Networking: a Top Down Approach

 

 

Network layer는 end to end로 패킷을 전송할 때, 경로를 설정하고 라우터 관점에서 어떻게 효율적으로 전달할지를 결정하는 역할을 한다.

 

Inter-AS, Intra-AS

 

지금까지는 모든 라우터가 동일하고 네트워크가 flat하다고 가정했지만, 현실은 그렇지 않다.

따라서 이로인해 발생하는 여러 문제들을 자율시스템(=AS=Autonomous System)으로 라우터들을 조직화하여 해결한다.

각 AS는 동일한 관리 하에 있는 라우터 그룹으로 구성되며, 전 세계적으로 고유한 AS 번호로 식별된다.

같은 AS 안의 라우터들은 동일한 라우팅 알고리즘을 사용하고, neighbor에 대한 정보를 갖고 있다.

이렇게 AS 내부에서 동작하는 라우팅 알고리즘을 Intra-AS routing protocol 혹은 IGP(Interiorr Gateway Protocols)라 한다.

위처럼 AS 내부에서 사용하는 라우팅이 OSPF 라우팅이다.

참고로 AS 간에는 BGP를 쓰는 Inter-AS routing이라는 게 필요하다. 헷갈리지 말자.

 

OSPF

 

OSPF는 Open Shortest Path First의 약자로, link-state 알고리즘을 사용한다.

OSPF를 이용해 각 라우터는 전체 AS에 대한 완벽한 topology graph를 얻으며, 각 라우터는 AS에서 인접한 라우터뿐만아니라 모든 라우터들에게 라우팅 정보를 브로드캐스트한다. 

OSPF의 advanced feature로는 보안, 여러 동일 비용 경로 허용, 통합된 uni- and multi-cast 지원, 단일 AS 내 계층 지원 등을 개선했다.

 

Hierarchical OSPF의 경우 two level hierarchy를 가지는데, local area와 backbone으로 나뉜다.

area border router는 영역 외부로의 패킷 라우팅을 책임지고,

backbone router는 backbone에 제한되어 OSPF 라우팅을 수행한다.

boundary router는 다른 AS와의 연결을 책임진다.

 

BGP

 

패킷이 여러 AS를 통과하는 Inter-AS rounting의 경우 BGP(Border Gateway Protoccol)을 이용한다.

2개의 AS를 연결하는 externelBGP와 한 AS 내의 라우터를 연결하는 internalBGP가 있다.

 

BGP session의 경우 두 BGP router가 BGP messages를 TCP connection을 통해 교환한다.

라우터가 BGP를 통해 prefix를 알릴 때 다른 attribute를 포함한다.

prefix+attribute를 route라고 한다.

중요한 두 attribute는 AS-PATH(메시지 루프를 방지하기 위한, 프리픽스가 지나간 AS 리스트)와 NEXT-HOP(AS-Path가 시작되는 라우터 인터페이스의 IP주소)다.


BGP messages는 OPEN, UPDATE, KEEPALIVE, NOTIFICATION이 있다.

 

hot potato routing이란, 가능한 모든 경로 중 NEXT-HOP 라우터까지의 비용이 최소가 되는 경로를 선택하는 것이다.

=> 즉, intra-AS 바깥의 비용은 신경쓰지 않고 내부 AS에서 최대한 신속하게 패킷을 자신의 AS 밖으로 내보내는 것이다.

 

intra-AS와 inter-AS가 다른 이유는 inter-AS의 경우 policy가 지배적이기 때문이다.

intra-AS는 하나의 통신사업자가 관리하기 때문에 performance에만 focus할 수 있지만, inter-AS는 각 사업자가 routing을 control하기를 원하므로 통신사업자 간 어떤식으로 policy를 맺었는지가 중요하다.

 

- ICMP

host와 router가 network-level information을 communication하기 위한 ICMP(Internet Control Message Protocol)가 존재한다. ICMP message는 IP datagram에 담겨 전송되므로 구조적으로 IP 위에 있다. 이를 통해 host는 자신과 destination 사이의 라우터 정보 및 RTT 등 Traceroute 할 수 있다.

 

- Network Mangement

네트워크 관리란 적절한 비용으로 실시간 운용하고 서비스 품질을 만족시키기 위해 네트워크 요소와 자원을 감시, 테스트, 제어하는 hardware 및 software를 배치, 조정하는 것이다. 이를 위해 SNMP(Simple Network Management Protocol)을 사용하기도 한다.

 

 

loading