CH5-2

charrrming·2022년 6월 3일
0

Computer Network

목록 보기
10/10

Inter-AS routing: BGP

BGP (Border Gateway Protocol) <- 얘가 사실상 표준임, AS들을 하나로 묶어줌
- eBGP: 외부의 다른 AS와 도달 가능성 (AS끼리 연결)
- iBGP: AS 내부 라우터들 사이에서 도달 가능성 전파

- 일대일로 연결된다고 생각하자! 두개의 라우터가 메시지를 교환하는 방식
	by "semi-permanent TCP 연결"
- path vector protocol (distance vector에 더 가까움)
- 메시지에는 네트워크 프리픽스 형태의 목적지가 주어지면 거기에 도달하기 위한 path가 들어감

- BGP는 목적지 prefix(목적지 정보)뿐만 아니라 다른 attribute도 전달함
	AS-PATH(AS 경로), NEXT-HOP(next-hop AS로 가기 위한 다음 라우터)
- policy-based routing (효율성보다 정책이 더 중요)

- BGP 메시지 종류
	OPEN: 새로운 AS
    UPDATE: 새로운 path 광고
    KEEPALIVE: 내가 살아있음을 계속 알림(update가 없어도)
    NOTIFICATION: 오류 수정, TCP 연결 종료

Intra-AS, Inter-AS 다른 식으로 동작하는 이유

* policy
- inter AS: 어떤 다른 AS를 거쳐갈지 권한이 나한테 있기 때문에 policy 중요
- intra AS: policy 덜 중요

* scale
- 계층적으로 구현해서 라우터 간에 전달하는 양을 줄임

* performance
- inter AS: 성능보다 policy에 더 초점 맞춤
- intra AS: link state 사용하면서 성능에 초점 맞춤

Hot potato routing

least intra-domain cost를 가진 local gateway를 선택함 (inter-domain cost 신경 안씀)
-> 패킷을 내 AS 밖으로 빨리 내보는 것이 중요, 나가고 나면 그건 이제 내 알빠 아니다

SDN (Software Defined Networking) 😛

- generalized "flow-based" forwarding 지원하는 라우터
- data plane은 라우터, control plane은 remote controller에서 실행되도록 분리
- programmable control applications 
* Data-plane switches
- generalized data-plane forwarding 지원하는 하드웨어(스위치) 필요
- 컨트롤러 관리 하에 flow(forwarding) 테이블 업데이트

* SDN Controller
- network state 정보를 유지
- 위에 있는 application들과 northbound API로 통신
- 아래에 있는 스위치들과 southbound API로 통신
- sdn controller도 여러 컴퓨터가 협업하는 분산 시스템으로 구현됨

* network control apps
- brains of control
- 이제 기능 추가하고 싶으면 미들박스 추가할 필요 없이 소프트웨어 하나면 됨
- 3rd party에 의해 개발됨 (controller 만드는 회사가 이거 다 만들 필요 없음)

openFlow protocol

- 컨트롤러, 스위치 사이에서 동작
- TCP 사용
- openflow protocol이 사용하는 msg에 따라 다른 openflow API를 사용함

0개의 댓글