컴퓨터네트워크 09주차 Network Layer control plane

2023. 1. 6. 12:02CS/컴퓨터네트워크

주 교재 : Computer Networking : A Top-Down Approach

 

9주차 Network Layer control plane

  1. intra-AS routing in the Internet: OSPF
  2. routing among the ISPs: BGP
  3. The SDN control plane
  4. ICMP: The Internet Control Message Protocol
  5. Network management and SNMP

1. intra-AS routing in the Internet: OSPF

# Internet approach to scalable routing

라우터를 autonomous systems(AS)로 알려진 영역으로 통합. (aka 도메인)

  • inter-AS 라우팅
    - 같은 AS 내부에서 호스트와 라우터 간의 라우팅
    - AS 내부의 모든 라우터는 반드시 같은 인트라 도메인 프로토콜을 사용
    - 다른 AS의 라우터는 다른 인트라 도메인 라우팅 프로토콜을 사용할 수 있다.
    - 게이트웨이 라우터 : 소속된 AS의 끝에 있는 라우터로, 다른 AS의 게이트웨이 라우터와 연결을 해준다.

  • inter-AS 라우팅
    - AS 간에 라우팅
    - 게이트웨이들은 inter-domain 라우팅을 수행한다.

# Inter-AS Routing

interior gateway protocols (IGP)라고 한다.

inter-AS routing protocols

  • RIP : Routing Information Protocol (Distance Vector)
  • OSPF : Open Shortest Path First (same as IS-IS protocol), Link state
  • IGRP : Interior Gateway Routing Protocol (Cisco에서 사용)

# OSPF(Open Shortest Path First)

  • link-state 알고리즘을 사용함 => 다익스트라 알고리즘 사용
  • IS-IS routing protocol과 같음
  • 모든 메시지가 인증됨
  • 계층 구조를 가짐

바운더리 라우터와 백본 라우터를 합쳐서 backbone 이라 하고, 게이트웨이 라우터를 area border 라고 한다.


2. routing among the ISPs: BGP

# Internet inter-AS routing : BGP

  • BGP (Border Gateway Protocol) : Inter-domain 라우팅 프로토콜
  • eBGP : 이웃한 AS간에 정보를 주고 받는 방식
  • iBGP : AS외부에서 AS내부로 정보를 주는 방식
  • 좋은 루트를 결정하는 것은 정책에 따라 다를 수 있음

게이트웨이 라우터는 eBGP와 iBGP 프로토콜을 모두 실행함

 

# BGP basics

  • BGP session : 두 BGP 라우터는 반 영구적인 TCP 연결을 통해 BGP 메시지를 교환한다.

BGP advertisement : 어떤 노드를 갈 때 Path 정보를 제공하는 것

 

# Path attributes and BGP routes

  • AS-PATH : prefix advertisement가 지나간 AS 목록
  • NEXT-HOP : 특정 internal-AS 라우터의 다음 hop AS를 나타낸다.
  • 정책에 기반한 라우팅 방식이라서, 정책에 따라 라우팅 방식이 다를 수 있다.

BGP path advertisement

  1. AS3의 3a라우터가 AS3, X(목적지) 정보를 AS2의 2c로 eBGP를 통해서 전달한다.
  2. 2c는 iBGP로 AS2의 라우터에게 정보를 전달한다.
  3. 2a가 eBGP로 받은 정보를 AS1의 1c로 전달한다.

 

  • 1c는 다른 경로를 받을 수 있다.
  • 정책에 기반해서, 1c가 경로를 선택한다.

# Hot Potato Routing

비용이 제일 작은 intra 도메인을 선택하는 것.

위 그림에서 2a로 가는 건 201, 2c로 가는건 263의 비용이 들 때, 제일 작은 201을 선택해서 정보를 넘긴다.

 

# BGP route selection

라우터는 여러가지 경로 중 하나를 고른다.

  1. 정책에 기반해서 선택
  2. AS-PATH가 가장 짧은 것 선택
  3. NEXT-HOP 라우터가 가장 가까운 것 선택 - hot potato routing
  4. 다른 정보를 통해 선택

# BGP: achieving policy via advertisements

목적지로 가는 경로가 있는데 안 알려주는 경우가 있다.

=> 자기 자원 아끼려고


3. The SDN control plane

# Software defined networking (SDN)

인터넷 네트워크 계층은 전통적으로 분산되고, 라우터 당 접근을 실행했다.

라우터마다 기준이 달라서 통신에 어려움이 있었다.

 

그래서 하나로 통합된 control 패널을 사용하기 시작했다.

OpenFlow API를 이용해서 table-based 포워딩을 했다. => 다른 환경에서도 실행하기 위한 방법

 

# SDN perspective

1. control application

  •   control 기능들을 low-level에서 실행함.
  •   라우팅, access control, 로드 밸런스 등을 실행
  •   SDN controller와 northbound API로 통신

2. SDN controller

  •   네트워크 상태 정보를 관리
  •   네트워크 컨트롤 어플리케이션과 northbound API로 통신
  •   네트워크 스위치와 southbound API로 통신
  •   performance와 scalability, fault-tolerance, robustness를 위해 분산된 시스템을 실행한다.

3. data plane switches

  • 빠르고 단순한 스위치는 하드웨어에서 data-plane 포워딩을 실행한다.
  • 스위치 흐름 table은 컨트롤러에 의해 계산되고, 설치된다.
  • 테이블에 기반한 스위치 컨트롤을 위한 API(예를 들면 OpenFlow)
  • 컨트롤러와 통신하기 위한 프로토콜(예를 들면 OpenFlow)

# OpenFlow protocol

controller-to-switch messages

  • packet-out : 컨트롤러가 특정 스위치 포트로 패킷을 내려보내는 것
  • 기능 : 컨트롤러가 스위치에 쿼리를 날린다. 스위치가 응답한다.

switch-to-controller messages

  • packet-in : 패킷을 컨트롤러에 전송. 스위치가 컨트롤러로 패킷을 올려보내는 것

4. ICMP: The Internet Control Message Protocol

  • 에러를 컨트롤 하는 프로토콜
  • Type과 Code를 1 Byte씩 할당 받음.
  • 대표적인 예로 ping이 있음.

5. Network management and SNMP

AS(network)에서 1000개가 넘는 상호작용이 일어남

다른 복잡한 시스템들이 모니터링와 컨트롤을 요구함.

그래서 네트워크 관리가 필요함.

 

# SNMP protocol : message types

SNMP : Simple Network Management Protocol

MIB 정보를 두 가지 방법으로 전달한다.