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)
- 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)
- 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의 선택)
- Policy based decision: eBGP에서는 policy가 가장 중요하다. (가까운게 장땡이 아니다!)
- Shortest AS-PATH
- Closest NEXT-HOP router: "hot potato": Path 길이가 같다면, 내 AS 내에서 가장 빨리 내보낼 수 있는 path를 고른다.
- additional criteria (BGP ID)
Determining the Best Routes - Hot Potato Routing
: Path 길이가 같다면, next-hop router 즉, 내 AS와 다른 AS를 연결해주는 gateway router까지의 거리가 가장 가까운 것을 고른다. (내 AS에서는 최대한 빨리 쫓아내자!)
BGP Path Advertisement - Example (1)
- Export policy - eBGP: 내 AS에서 받은 path를 다른 AS에 알려줄 지 여부를 결정하는 policy.
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는 어떻게 설정될까?
- AS 내부의 destination: intra-AS routing algorithm
- AS 외부의 destination: inter-AS routing algorithm + intra-AS routing algorithm
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 (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
연습문제 - 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-b: eBGP
: next-hop router가 가까운 path를 고른다.
연습문제 - 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이 어렵다.
--> 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
이화여자대학교 이미정교수님 컴퓨터네트워크
'Computer Network > 컴퓨터네트워크' 카테고리의 다른 글
[컴퓨터네트워크] 1201 (2) (0) | 2023.12.02 |
---|---|
[컴퓨터네트워크] 1201 (1) (0) | 2023.12.02 |
[컴퓨터네트워크] 1124 (1) | 2023.11.27 |
[컴퓨터네트워크] 1122 (2) | 2023.11.26 |
[컴퓨터네트워크] 1117 - Ch5. Network Layer: Control Plane (1) | 2023.11.17 |