본문 바로가기
홍TV 홍TV

스위치가 아니라 “소프트웨어가 네트워크를 움직인다” – SDN과 장비의 미래

홍TV 읽는 시간 약 6분
4.5
(300)

들어가며

몇 년 전까지만 해도 회사 네트워크를 바꾸려면 스위치, 라우터 앞에 직접 앉아서 장비마다 하나하나 설정 명령어를 입력해야 했다. 스위치가 스무 대면 스무 번 접속해서 스무 번 같은 작업을 반복하는 식이었다. 그런데 요즘 대형 데이터센터나 클라우드 업체들은 이런 방식을 거의 쓰지 않는다. 네트워크 전체를 소프트웨어 화면 하나에서 클릭 몇 번으로 제어한다. 이 변화의 중심에 있는 기술이 바로 SDN, 소프트웨어 정의 네트워킹이다.

이번 글에서는 SDN이 기존 네트워크 방식과 근본적으로 무엇이 다른지, 왜 이런 방향으로 기술이 흘러가고 있는지, 그리고 클라우드 환경에서 가상 스위치와 가상 라우터가 어떻게 이 흐름의 연장선에 있는지 짚어본다.

기존 네트워크 장비의 한계

전통적인 스위치나 라우터는 두 가지 역할을 한 몸에 다 가지고 있다. 하나는 어디로 트래픽을 보낼지 결정하는 두뇌 역할(제어 평면, Control Plane)이고, 다른 하나는 실제로 그 결정에 따라 패킷을 전달하는 손발 역할(데이터 평면, Data Plane)이다. 문제는 이 두뇌가 장비마다 따로따로 들어있다는 점이다.

그 결과 네트워크에 새로운 정책을 적용하거나 경로를 바꾸려면 관련된 장비 하나하나에 개별적으로 설정을 넣어야 한다. 장비 수가 몇 대일 때는 크게 문제가 안 되지만, 수백, 수천 대의 스위치를 운영하는 대형 데이터센터에서는 이 방식이 관리 병목이 된다. 게다가 각 장비는 자신이 아는 정보만으로 판단하기 때문에, 네트워크 전체의 트래픽 흐름을 한눈에 파악하고 최적화하기도 어렵다.

SDN, 두뇌와 손발을 분리하다

SDN은 이 문제를 아주 직관적인 방식으로 해결한다. 각 장비에 흩어져 있던 두뇌, 즉 제어 평면을 하나의 중앙 컨트롤러로 모아버리는 것이다. 개별 스위치들은 더 이상 스스로 판단하지 않고, 중앙 컨트롤러가 내려주는 지시에 따라 패킷을 전달하는 역할만 담당한다.

sdn inline1 제어데이터평면분리

이렇게 바꾸면 몇 가지 큰 변화가 생긴다.

  • 관리자는 컨트롤러 한 곳에서 정책을 정의하면 되고, 그 정책이 관련된 모든 스위치에 자동으로 배포된다. 장비 수백 대를 일일이 돌아다니며 설정할 필요가 없어진다.
  • 컨트롤러는 네트워크 전체의 트래픽 상황을 실시간으로 파악할 수 있으므로, 특정 구간에 트래픽이 몰리면 즉시 다른 경로로 우회시키는 등 훨씬 정교한 최적화가 가능하다.
  • 네트워크의 동작 방식을 소프트웨어 코드나 API로 제어할 수 있게 되면서, 애플리케이션이 필요에 따라 네트워크 설정을 직접 요청하는 것도 가능해진다. 예를 들어 특정 서비스가 트래픽이 몰리는 시간대에 자동으로 대역폭을 더 확보하도록 만들 수 있다.
  • 스위치 하드웨어에 요구되는 기능이 단순해지므로, 값비싼 전용 장비 대신 상대적으로 저렴한 범용 하드웨어를 쓸 수 있는 여지가 생긴다.

정리하면 SDN은 네트워크를 하드웨어 개별 장비의 집합이 아니라, 하나의 소프트웨어로 프로그래밍 가능한 시스템으로 바라보는 관점의 전환이라고 할 수 있다.

왜 지금 이 방향으로 가고 있는가

이런 변화가 가속화되는 이유는 결국 규모와 속도 때문이다. 클라우드 서비스가 보편화되면서 네트워크는 몇 대의 장비를 운영하는 수준을 넘어, 수만 대의 서버와 그보다 훨씬 많은 가상 네트워크를 실시간으로 다뤄야 하는 규모로 커졌다. 이런 환경에서 사람이 장비마다 접속해서 설정을 바꾸는 방식은 애초에 감당이 안 된다. 서비스가 새로 배포되거나 트래픽 패턴이 바뀔 때마다 네트워크도 코드 한 줄, API 호출 한 번으로 즉시 반응해야 하는데, 이는 SDN 같은 중앙 집중형 제어 구조가 아니면 사실상 불가능하다.

또한 기업들이 여러 지역, 여러 데이터센터에 걸쳐 네트워크를 운영하면서 일관된 정책을 유지해야 하는 요구도 커졌다. SDN 컨트롤러 하나가 여러 위치의 장비를 함께 관리하면, 지역이 달라도 동일한 보안 정책이나 트래픽 정책을 일관되게 적용할 수 있다.

클라우드 속 가상 스위치와 가상 라우터

SDN의 개념은 클라우드 환경에서 한 걸음 더 나아간 형태로 나타난다. 클라우드 업체의 데이터센터에는 물론 물리적인 스위치와 서버가 존재하지만, 우리가 클라우드에서 만드는 가상 네트워크(흔히 VPC라고 부르는)는 물리 장비를 직접 만지지 않고도 소프트웨어만으로 구성된다.

물리 서버 한 대 안에는 여러 고객사의 가상머신이 함께 돌아가는데, 이 가상머신들 사이의 네트워크 연결은 가상 스위치라는 소프트웨어가 담당한다. 실제 케이블이나 물리 포트가 아니라 소프트웨어 안에서 패킷을 주고받는 방식이다. 마찬가지로 고객사마다 독립된 네트워크 대역과 경로를 갖게 해주는 역할은 가상 라우터라는 소프트웨어가 수행한다. 물리적으로는 같은 서버, 같은 스위치를 여러 고객사가 함께 쓰고 있지만, 소프트웨어 계층에서 완전히 분리된 것처럼 동작하게 만드는 것이다.

sdn inline2 가상스위치라우터

이 모든 과정이 결국 SDN이 추구하는 방향, 즉 하드웨어에 얽매이지 않고 소프트웨어로 네트워크를 자유롭게 정의하고 제어한다는 개념 위에서 이루어진다. 클라우드 사용자가 콘솔에서 버튼 몇 번 눌러 새로운 서브넷이나 라우팅 규칙을 만들 수 있는 것도, 뒤에서 SDN 기반의 컨트롤러가 실시간으로 가상 네트워크 설정을 반영해주기 때문에 가능한 일이다.

마치며

네트워크 장비의 무게중심이 하드웨어에서 소프트웨어로 옮겨가는 흐름은 이제 거스르기 어려운 방향처럼 보인다. 스위치 하나하나에 명령어를 입력하던 시대에서, 중앙 컨트롤러가 전체 네트워크를 조율하는 시대로, 그리고 그 연장선에서 물리 장비 없이도 소프트웨어만으로 네트워크를 만들어내는 클라우드의 가상 스위치, 가상 라우터로까지 이어지고 있다. 앞으로 네트워크를 공부하거나 다루는 사람이라면, 케이블과 포트 너머에 있는 이 소프트웨어 중심의 사고방식을 함께 이해해두는 것이 점점 더 중요해질 것이다.

참고

  • Open Networking Foundation, “SDN이란 무엇인가” 공식 자료
  • Cisco, “소프트웨어 정의 네트워킹 개요” 공식 문서

이 게시물이 얼마나 유용했나요?

별점을 클릭하여 평가하세요!

평균 평점 4.5 / 5. 투표 수: 300

아직 투표가 없습니다! 첫 번째로 평가해보세요.

홍TV

홍TV
함께 보면 좋은 글

댓글 0

첫 댓글을 남겨보세요.

error: Content is protected !!

광고 차단 알림

광고 클릭 제한을 초과하여 광고가 차단되었습니다.

단시간에 반복적인 광고 클릭은 시스템에 의해 감지되며, IP가 수집되어 사이트 관리자가 확인 가능합니다.