본문 바로가기
Computer Network/컴퓨터네트워크

[컴퓨터네트워크] 1129

by leziwn.cs 2023. 12. 2.
BGP Path - Example

BGP Path - Example

: 다른 AS로 path를 보낼 때, 자기 자신을 추가해서 보낸다.

  • AS_PATH
  • NEXT_HOP = gateway router

 

BGP Path Attributes: Policy

▶ Import policy: iBGP

: 하나의 AS 내에서 path를 다른 라우터에게 전송할 지 여부를 결정하는 policy.

  • iBGP를 통해 path를 전달한다는 것은, 내 AS 내에서 이 path를 이용하겠다는 뜻이다.
    --> 내 AS 내에서 어떤 outgoing path를 쓸 지 통제한다. (controlling outgoing traffic!) -- 내가 어디로 갈까?

▶ Export policy: eBGP

: 이웃 AS에게 path를 전달할 지 여부를 결정하는 policy.

  • eBGP를 통해 이웃 AS에게 path를 전달한다는 것은, 그 이웃 AS에서 나에게로 데이터를 보내오면, 내가 전달해주겠다는 뜻이다.
    --> 내가 서비스해주고 싶은 AS를 결정한다. (controlling incoming traffic!) -- 내가 누구를 도와줄까?

 

 

BGP: Achieving Policy via Advertisements
Example (1)

Example (1)

  • A는 B에게 (A, w) path를 전송한다. "A(나)를 통해 w로 갈 수 있어."
    --> 이는 곧 B가 A에게 w로 가고싶다고 말하면, 이어주겠다는 뜻이다.
  • B는 C에게 (B, A, w) path를 전송하지 않는다. 따라서 C는 (C --> B --> A --> w)로 갈 수 있는 path가 있다는 사실을 알지 못한다.
    <-- B는 C의 데이터를 A로 전달해주고 싶지 않다.

 

Example (2)

Example (2)

  • x는 B에게 (x, C, ?)의 path를 전달해주지 않는다.
    <-- x는 B를 C의 ?(목적지 prefix)로 전달해주고 싶지 않다.

**Suppose an ISP only wants to route traffic to/from its customer networks.

(does not want to carry transit traffic between other ISPs.)

 


BGP Route Selection

: iBGP를 통해 여러 path를 전달받았을 때는 어떤 path를 선택할 것인가? (eBGP의 선택)

  1. Policy based decision: eBGP에서는 policy가 가장 중요하다. (가까운게 장땡이 아니다!)
  2. Shortest AS-PATH
  3. Closest NEXT-HOP router: "hot potato": Path 길이가 같다면, 내 AS 내에서 가장 빨리 내보낼 수 있는 path를 고른다.
  4. additional criteria (BGP ID)

 

Determining the Best Routes - Hot Potato Routing

Determining the Best Routes - Hot Potato Routing

: Path 길이가 같다면, next-hop router 즉, 내 AS와 다른 AS를 연결해주는 gateway router까지의 거리가 가장 가까운 것을 고른다. (내 AS에서는 최대한 빨리 쫓아내자!)

 

BGP Path Advertisement - Example (1)

BGP Path Advertisement - Example (1)

  • Export policy - eBGP: 내 AS에서 받은 path를 다른 AS에 알려줄 지 여부를 결정하는 policy.

 

BGP Path Advertisement - Example (2)

BGP Path Advertisement - Example (2)

: 1c가 eBGP를 통해 2개의 path를 알게되었다. 

--> 더 짧은 path를 고른다! (Shortest path)

 


How Does and Entry Get Into a Router's Forwarding Table?

: 한 router의 forwarding table entry는 어떻게 설정될까?

 

How Does and Entry Get Into a Router's Forwarding Table?

  • AS 내부의 destination: intra-AS routing algorithm
  • AS 외부의 destination: inter-AS routing algorithm + intra-AS routing algorithm

 

Setting Forwarding Table by BGP, OSPF - Example (1)

Setting Forwarding Table by BGP, OSPF - Example (1)

  • AS 내부의 destination: intra-AS routing algorithm에 의해 forwarding table entry가 만들어진다.
  • AS 내부의 destination: inter-AS routing에 의해 forwarding table entry가 만들어진다. 이때, next-hop router 정보도 포함한다.

 

Setting Forwarding Table by BGP, OSPF - Example (2)

Setting Forwarding Table by BGP, OSPF - Example (2)

 

Setting Forwarding Table by BGP, OSPF - Example (3)

Setting Forwarding Table by BGP, OSPF - Example (3)

  • Path를 두 개 알게되면 shortest path를 고른다.
  • next-hop router = gateway router

 

Why Different Intra-AS, Inter-AS Routing?

▶ Intra-AS routing: iBGP

  • Performace가 중요하다. (cost)

 Inter-AS routing: eBGP

  • Policy가 중요하다. (가까운게 장땡이 아니다!)

--> Intra-AS routing과 Inter-AS routing을 통해 hierarchical routing이 가능해졌다.

 


연습문제 - P35

연습문제 - P35

 

연습문제 - Q3 - a, b, c, d

연습문제 - Q3 - a, b, c, d

b. Router 3a learns about x from iBGP routing protocol.

Q. 3a는 3c와 연결되어 있지 않은데, 이 때도 3c로부터 iBGP를 통해 path를 전달받을 수 있나요?

A. 동일한 AS 내의 router들 간에는 iBGP 연결을 모두 갖고 있는데, 그것은 물리적인 연결이 아니고 논리적인 연결이다. TCP 연결이 있다고 해서 두 노드가 직접 물리적 링크로 연결된 것은 아니다.

 

연습문제 - Q4-a: iBGP

연습문제 - Q4-a

 

연습문제 - Q4-b: eBGP

연습문제 - Q4-b

: next-hop router가 가까운 path를 고른다.

 

연습문제 - Q4-c: eBGP

연습문제 - Q4-c: eBGP

: 가장 짧은 path를 고른다.

 


The SDN Control Plane
  • SDN (Software Defined Networking)

지금까지 traditional routing에 대해 배웠다. 이제 SDN에 대해 알아보자.

Traditional Internet: Per-router Control Plane
  • Traditional routing의 problem: "monolitic" router (하드웨어부터 어플리케이션까지 하나로 묶여 있다.)
  • Solution: "middlebox"

 

Traffic Engineering: Difficult with Traditional Routing
  • Traffic engineering: traffic이 거쳐가는 길을 조정하는 것

--> Traditional routing에서는 traffic engineering이 어렵다.

1) 경로 변경
2) Load balancing
3) Destination-based forwarding

--> SDN: Generalized forwarding

 

SDN: How?

: Data plane과 Control plane을 분리한다.

  • Control plane: Logically centralized control plane (server)를 둔다.
  • Data plane: "match & action"

▷ Logically centralized control plane!

  • Easier network management.
  • Programmable router: centralized programming.
  • Open (non-proprietary) implementation of control plane.

 

SDN Analogy: Mainframe to PC Evolution

SDN Analogy: Mainframe to PC Evolution

 

 

 

 

 

이화여자대학교 이미정교수님 컴퓨터네트워크