2024. 10. 8. 13:27ㆍCS/컴퓨터네트워크
SDN
SDN(Software Define Network)는 포워딩을 일반화한 것으로 가장 큰 특징은 Control plane과 Data plane이 분리되어 있는 것이다.즉,소프트웨어적으로 이를 구현하는데 이때 각 라우터에 있는 포워딩테이블을 확장시킨 Flow table을 이용한다.따라서 Flow table에 추가적으로 기재되어있는 정보를 사용해서 포워딩을 하는 것이다.

Flowtable이 수행하는 역할은 패킷의 header fields의 값과 Match하고 controller에 적당한 Action(drop,forward,modify..)를 수행하고 match가 여러개 됬을때 우선적으로 시행하는 Priority가 존재한다.그리고 트래픽의 양(패킷 수,바이트)를 측정하는 Counter가 존재한다.

OpenFlow
SDN의 핵심 프로토콜로서 Flow table entry를 정의한다.

따라서 다양한 기능을 구현할 수 있다.


이를 match + action abstraction이라 표현하고 스위치,방화벽,라우터 통합하여 기능을 구현한다.
- Router:logest destination IP prefix를 통해 해당 패킷을 링크로 송신
- Switch:목적지 주소를 mac주소매치하여 포워딩하거나 플러드함
- Firewall:IP주소와 TCP/UDP 포트번호를 매칭하여 허용,차단 액션을 수행
- NAT:IP주소와 포트번호를 매칭하고 포트번호와 주소를 재작성
기존의 네트워크는 라우터가 작성한 포워딩테이블대로만 네트워킹이 가능했지만 SDN의 등장으로 동적인 네트워킹이 가능해졌다.

SDN는 다른 방식으로 과거에 제안되었다.이때는 코드를 패킷의 헤더에 작성했는데 당시에는 하드웨어의 문제로 라우터의 부하를 최대한 줄이는 것이 우선시 되었다.하지만 점차 하드웨어가 발전함에 따라 Network Progammability를 필요로 하게 되었다.구글이 이러한 SDN방식을 도입하기 시작함에 따라서 많이 사용하게 되었다.
Middleboxes
미들박스는 네트워크 경로에서 라우터 이외에 기능을 하는 무언가를 의미한다.정확한 정의는 다음과 같다.

사실 이러한 미들박스는 굉장히 많이 사용되고 있다.

미들박스는 원래 폐쇄된 하드웨어 장비로서 존재했지만 SDN의 발전에 따라 소프트웨어화하여 유연하게 네트워크를 제어할 수 있게 되었다.이에 따라 Whitebox hardware로 발전되었다.
NFV(Network Function Virtualization)
전통적인 하드웨어 기반의 미들박스 기능들을 가상화하여 소프트웨어로 한다.이를 통해 미들박스 기능을 표준화된 화이트박스 하드웨어에서 실행할 수 있게 되었다.

SDN은 엄밀히 따지자면 Networklayer에 국한된 기능만 수행하지 않는다.원래는 TCP,UDP,IP를 통해 간결하게 End to end 통신을 보장할려는 것이 지향점이지만 현재는 그렇지 않다.


즉,TCP,UDP,IP만 네트워크 계층에서 필요로 하고 다른 기능은 최적화만을 위한 것들로서 필수가 아니다.하지만 현대에는 저러한 최적화 기술들을 하드웨어 발전에 따라 사용하고 있다.

'CS > 컴퓨터네트워크' 카테고리의 다른 글
OSPF,BGP (0) | 2024.10.15 |
---|---|
라우팅 알고리즘 (0) | 2024.10.11 |
NAT & IPv6 (0) | 2024.10.01 |
IP(IPv4),DHCP (0) | 2024.09.28 |
라우터 (0) | 2024.09.24 |