본문 바로가기
Networking/Network General (Anything)

CCNP Part 2 - 1

by 포항돼지 2022. 1. 4.

SDN은 네트웤을 소프트웨어 기반으로 옮기는. 프로그램 기반으로 네트웤을 구현하고 기능하는 개념

전통적인 장비들은 Management Plane과 Data Plane사이에 Control Plane 이 있다. 이 Control Plane 이 라우팅을 돌리고 테이블 쉐어하고.. 이런식이였음.

 

SDN Controller 가 Contro Control Plane을 가져감 -> x86 서버가 Control Plane역할을 함.

네트웤 장비들이 훨씬 간단해짐. 네트웤 장비의 핵심은 Control Plane인데 이걸 가져감 -> 심플화. 그리고 SDN Controller 가 다른 라우터들과 통신하기위해 사용하는걸 API라고 함

얘네가 통신이 남쪽으로 이뤄진다고 해서 Southbound Interfaces라고 함 (SBI)

 

SDN은 결국 자동화에 맞춰져 있음. 뭔가 프로그램을 통해서 업무가 짜져있음.

Application 이 돌아가는거에 맞춰져 있음.(Intent based Networking , 의도를 Controller한테 말하는 것)

 

대표적인 SBI의 예 API로는 OpenFlow 라는게 있음

대표적인 NBI의 예 API 로는 REST API

 

API를 통해서 데이터를 전달할때 데이터를 표준화 시킨것 -> JSON포맷을 씀

시스코에는 2가지 타입 컨트롤러가 있음

Cisco APIC (Data Center SDN 구현 포커스) (Application Policy Infrastructure Controller)

Cisco DNA (Digital Network Architecture) (Focus on enterprise network)

 

Cisco DNA Center에 TAC이 하나 있다고 생각하면 편함 -> 모든것들이 거의 Automated 되어있음(엔지니어의 간섭이 정말 많이 줄었음) -> CLI를 다를줄 아는 엔지니어가 많이 필요해 지는 것이 아닌, API를 다를 줄 아는 네트워크 엔지니어들이 필요해지는 상황임 -> DNA Center Platform에서 워낙 다양한 API가 제공되기 때문에, 이걸 기반으로 정책 수립, 및 디자인, 데이터들을 활용할줄 아는 네트워크 엔지니어가 필요함

 

 

 

JSON(JavaScript Object NOtation) format

 

API를 통해서 데이터를 전달할때, 이 데이터가 표준화가 되어야 함.

1. name/value pair (Python 에서 Dictionary 랑 같은 개념) Object

2. ordered list of values (어떤 값들을 쭉 나열, 베어라고 함)(Comma를 중심으로 구분 되어있는 자료형)Array

 

 

 

 

 

 

Value로는 뭐가 오는가?

 

JSON Format은 잘 알고 있어야함. jsonlint.com 가면 내가 만든 json format이 valid 한지 확인 가능

 

XML (eXtensible Markup Language) Format

 

JSON은 문서타입으로 바꿔서 뒤에 데이터베이스나 다른 프로그램들이 이해 할수있도록만드는 개념

그리고 이 문서를 통해서 전달되는데, 이 문서안의 단어에 태깅을 해서, 더 단어를 표현할수 있는 부가정인 기능을 붙이는게 태그를 붙이는거 -> Markup Language (대표적인 예로는 HTML이 있음,HTML은 태그가 다 정해져있는 반면 XML은 내가 임의로 태깅을 할수 있음 -> 문서를 내가 원하는 방식으로 Markup을 할수있음 )

 

 

XML의 포맷

(HTML의 경우 HyperTextMarkupLanguage mean is 어디 Text를 누르면 태깅되어 있는 다른 곳으로 넘어가는 Language)

 

Declaration (XML 버전, 인코딩 타입을 선언해줘야함)

Document Type Definition (DTD), 이런 Markup Language의 Format을 정해서 어떤 components 를 쓸수있는지 Declar

 

태그와 태그 사이의 값을 Element 라고 함 (XML을 통해서 전하는 중심적인 데이터)

 

 

태그에 정보를 덧 붙이기 위해서, Attribute를 집어넣음

Element에 대한 추가적인 정보를 주기 위해 태그에 Attribute를 넣는 것

그리고 반드시 ""안에 들어가야함

 

 

주석

 

XML to JSON and JSON to XLM 로 converting 해주는 Webservice 도 있음

 

YANG Data Modeling

SDN Server에서 여러 밴더에서 나온 SDN 장비를 통합적으로 Control 하기 위해서 YANG Data Model 이라는게 나옴. 

각각 장비 config를 하기 위해서 만든 Modeling. 실제로 장비에 YANG Data Modling 베이스로 config를 전달 함

인터페이스에 대한 데이터 모델을 전송함

 

 

 

아이폰을 예로 들어서 데이터 모델링

 

이렇게 데이터 모델링을 하면, 어떤 밴더의 장비더라도, configuration이 가능함

 

rw = Read and Write , ro = Read Only

네트워크 장비를 컨트롤 하기위해서 이런 데이터 모델을 기반으로 그 데이터들을 가져오게 되는 것

 

각 Leaf에는 Data type들이 있음 , Yang Modeling에 들어가는 또 다른 YANG Data type이 있음

enumeration = 셈, 더하기 , 열거법

 

YANG Data Model type은 XML format으로 보냄 - >Leaf 라고 했던 것은 XML에 Tagging이 되어 Data Transmission이 일어남

XML -> Netconf를 통해 SDN -> Network Device로 전송

 

 

 

'Networking > Network General (Anything)' 카테고리의 다른 글

CCNP Part 2 - 3  (0) 2022.01.05
CCNP Part 2 - 2  (0) 2022.01.04
Network Engineer Interview Questions  (0) 2021.11.18
CCNP Dump Study - 1  (0) 2021.11.09
STZ CCNP - 13  (0) 2021.11.06