NVGRE (Network Virtualization using Generic Routing Encapsulation)에 대해 기술사 형식으로 상세하게 정리해 드리겠습니다.
⸻
문제:
“NVGRE(Network Virtualization using Generic Routing Encapsulation)“란 무엇이며, 어떤 목적으로 사용되는가?
⸻
답:
NVGRE란
Generic Routing Encapsulation(GRE)이라는 터널링 프로토콜을 기반으로
가상 네트워크(Virtual Network)를 오버레이 방식으로 구성하는 네트워크 가상화 기술입니다.
• 풀네임: Network Virtualization using Generic Routing Encapsulation
• 주로 데이터센터의 가상 머신(VM) 간 통신을 논리적으로 분리하고 확장성을 확보하기 위해 사용됩니다.
핵심 키워드:
• 오버레이 네트워크 (Overlay Network)
• GRE 기반 터널링
• 네트워크 가상화
• 테넌트 분리 (Tenant Isolation)
⸻
기존 VLAN의 한계:
문제 설명
VLAN ID 제한 IEEE 802.1Q의 VLAN ID는 최대 4096개로 대규모 클라우드 환경에 부족
브로드캐스트 도메인 확장 문제 L2 기반 구조로 인해 스케일아웃 어려움
멀티테넌시(다중 사용자 환경) 구현의 복잡성 보안 격리 및 정책 적용의 어려움
등장 목적:
• 대규모 가상화 환경에서 수천~수만 개의 네트워크 세그먼트를 논리적으로 구성하고자 함
• 물리적 네트워크에 의존하지 않고 가상 네트워크를 논리적으로 분리 및 확장 가능
• 클라우드 환경의 멀티테넌시, 자동화, 유연성 확보
⸻
NVGRE는 주로 다음과 같은 역할을 수행합니다:
• 가상 머신 간 통신을 가상 네트워크 상에서 구성
• 테넌트별 네트워크를 논리적으로 격리
• L2 오버레이 네트워크를 L3 물리 네트워크 위에 구성
• 네트워크의 확장성과 유연성을 제공하여 클라우드 인프라 최적화
⸻
⸻
구성요소 설명
GRE(Generic Routing Encapsulation) IP 패킷을 다른 IP 패킷 안에 캡슐화하는 터널링 프로토콜
Provider Address (PA) 물리 네트워크에서 사용되는 주소
Customer Address (CA) 가상 네트워크 내 주소, 테넌트 논리 주소
VSID (Virtual Subnet Identifier) 각 가상 네트워크를 식별하는 ID (24bit, 최대 16M개 세그먼트)
NVGRE Endpoint (e.g. Hyper-V) 터널의 시작/끝점, 캡슐화/디캡슐화 수행
⸻
⸻
기술 설명 특징
NVGRE GRE 기반, Microsoft 중심 L3 오버레이, Windows Server/Hyper-V에 최적
VXLAN (Virtual Extensible LAN) UDP 기반, IETF 표준 가장 널리 사용됨, VMware/리눅스 등 호환성 높음
STT (Stateless Transport Tunneling) TCP 기반, Nicira/VMware 제안 고속 전송에 유리, 드물게 사용
⸻
장점:
• 기존 GRE 프로토콜 활용 → 적은 표준 변경으로 구현 가능
• VLAN보다 훨씬 많은 세그먼트(약 1600만 개) 지원
• L3 인프라 위에서 L2 네트워크 구성 가능
• Microsoft 기반 데이터센터 환경에 최적화
단점:
• GRE 기반으로 멀티캐스트 지원 부족
• 하드웨어 스위치 호환성 제한
• VXLAN보다 산업 표준 채택이 낮음
• 성능 튜닝 및 디버깅 어려움
⸻
전망:
• 현재는 VXLAN이 더 널리 채택되었으나,
Microsoft Azure, Hyper-V 기반의 SDN에서 NVGRE는 여전히 사용 중
• 데이터센터 간 하이브리드 클라우드 통신에서 유용함
개선점:
• GRE 기반의 멀티캐스트 지원 한계를 개선할 확장 프로토콜 필요
• VXLAN 대비 표준화, 호환성, 하드웨어 지원 확대 필요
• SDN 컨트롤러와의 연동 기능 강화 필요
⸻
“NVGRE”는
컴퓨터끼리 비밀 터널을 만들어서 서로만 이야기하게 해주는 기술이야.
학교 친구들이 모여서 팀끼리만 이야기하고 싶을 때
특별한 통로를 만들어서 다른 친구들은 못 듣게 하는 것과 비슷해.
이 기술을 쓰면
수많은 컴퓨터들이 서로 부딪히지 않고 안전하게 통신할 수 있어