티스토리 뷰

이제 VXLAN 구성 전에 고려사항과 Network Overlay기술을 비교해 보자

1~3편만 보면 VXLAN은 매우 이상적인 기술이다.

하지만, 반드시 고려사항도 있으므로, 이에 대해서도 고려해 보자.


Jumbo Frame에 대한 고려사항이 첫번째이다.

필자가 데이터센터 내부에서 강력히 권고하고 싶은 내용이 바로 Jumbo Frame이다.

물론 반론자들은 굳이 Jumbo Frame을 왜 Enable 해야 하냐고 반론을 펼치겠지만, 전체망을 Jumbo로 설정하는 것도 아니고 데이터센터 내부의 스위치들만 Jumbo로 하자는 것이다.


Jumbo를 써야하는 이유의 첫번째는 바로 NAS & iSCSI 스토리지 때문이다.

일반적인 네트워크 통신의 패킷이나 프레임전달 방식과 달리, 대부분의 Disk의 Block Size는 4KB 단위를 넘는다.


네트워크의 경우에는 1500Byte 사이즈로 Segment가 되는데, 4KB 짜리 Block Data를 전달하기 위해서는 몇차례의 Segment를 해야 한다는 결론이 나온다.

이러한 동작 자체가 문제가 아니라, 몇차례 Segment로 인해서 Latency가 발생할 수 있다는 데 문제가 발생한다.


따라서, 자주 겪는 경험인데 iSCSI나 NAS가 IO Transaction 이 많아 질수록 느려지는 커다란 이유가 바로 network level의 Segment 이슈이다.

(이 이슈는 필자가 별도로 블로깅할 예정이다...너무 복잡한 얘기들이다...)

물론 Data를 읽고 쓰는 과정에서의 Overhead가 Segment 이슈만 있는 것은 아니지만, 상식적으로 생각해 보더라도 Segment로 인한 리셈블 과정에서의 지연현상은 발생할 수 밖에 없다.


따라서 데이터센터 내에서의 스위치는 되도록이면 Jumbo Frame 설정을 하는 것을 강력하게 권고한다.

만약 VXLAN 환경을 구현하는 Jumbo 설정을 하지 않는 다면, 방법론은 있겠지만 제약이 따를 수 밖에 없다.

과거의 스위치들은 모두 Frag Bit에 대해 허용했지만, 최근 출시되는 데이터센터 스위치들은 Frag Bit에 대해 허용하지 않으므로 MTU 의 확장, 즉 Jumbo Frame을 허용하지 않으면 모두 Drop 된다.

이것은 Network Overlay, NV-GRE, STT 모두 동일하게 적용된다.

따라서 Jumbo의 중요성을 잊지 말자!!!


다음은 Multicast 이다.

VXLAN의 Bus는 Multicast Fabric을 사용한다.

따라서 Multicast는 VXLAN의 근간이라 보아도 무방하다.




기본적으로 L2 Switch는 Multicast에 대한 IGMP Snooping이 Enable 되어 있기 때문에, 동일 VLAN에서는 제약이 없다고 보면 된다.

하지만 다른 Layer3를 넘어가야 하는 구조의 경우에는 반드시 IP Multicast Routing이 필요하다.

이 부분 역시 OTV와 연동이 된다면 손쉽게 해결할 수 있다고 판단된다.

(OTV는 데이터센터간을 자유롭게 이동하는 기술로 , 추후에 블로그에서 소개할 예정이다.)


VXLAN을 쓰기 위한 제약 조건은 두 가지 기술요소만 고려하자

하나는 Jumbo Fraem, 또 다른 하나는 Multicast 이다.!!!


본 블로그에서 구성을 상세하게 하는 소개하는 것은 바람직하지 않지만, 구성이 너무나도 간단하기에 간단하게 아래와 같이 구성 방법을 소개한다.



이제 마지막으로 다른 Network Overlay 기술과 Cisco가 Drive하는 VXLAN에 대해서 비교해 보자.


현재 Network Overlay는 본 블로그에서 소개하는 VXLAN과 MS, Intel이 강력하게 Drvie하는 NV-GRE가 있다. 최근 VMWare가 인수한 nicira의 경우에 STT를 지원했으나, 최근 들어본 소식통에 의하면 VXLAN으로 방향을 전환하려는 것으로 보인다. (본인이 다니는 회사가 아니므로 확인할 수는 없음.)


암튼 현재는 VXLAN과 NV-GRE의 격돌이라고 보는 것이 맞다.

그럼 어떤 부분이 차이가 있는지 살펴 보자.



우선 유사점 부터 살펴보자.

두개 모두 Tunneling 기반 방식을 사용한다.

또한 VLAN 구분자를 24Bit를 적용함에 따라 기존에 비해 크게 증가한, 1600만개 이상의 VLAN을 지원한다. 또한 GRE 또는 IP/UDP의 오버헤드도 동일하다.

큰 컨셉은 유사한 것 같지만, 차이점이 존재한다.


첫째, 지지 진영 즉 친구들이 다르다.

VXLAN은 최초에 기술을 내놓은 Cisco를 필두로, VMWare, Citrix, Redhat, Broadcom, Arista등이 함께한다.

NV-GRE는 MS, Intel, Dell, HP, Broadcom, Arista, Emulex 등이 함께한다.

필자의 지극히 주관적인 견해지만, 지지 진영에서 이미 경기판세가 기울었다고 보여진다.

네트워크의 거인과 가상화쪽의 거인들이 모두 VXLAN에 포함되어 있기 때문이다.

물론 NV-GRE진영에도 MS와 Intel이라는 거인이 존재하지만...판세를 뒤집기에는 역부족이라 보여진다.


둘째로, Encapsulation 방식이 매우 특이한데 필자는 여기서도 VXLAN을 지지하고 싶다.

VXLAN이 IP/UDP로 Encapsulation 시킨다면, NV-GRE는 말 그대로 GRE로 Encapsulation 시킨다.

GRE의 결정적인 약점이 그대로 여기에도 적용이 된다.

두가지가 큰 악재인데, 우선 암호화로 Encapsulation 되기 때문에 보안정책을 적용할 방법이 없다.

가장 중요한 문제는 vSwitch에서 Loadbalancing 시킬 방법이 없다는 것이다.

VXLAN의 경우에는 IP/UDP로 Encapsulation 시키기 때문에 IP Hashing 기반의 로드 분산이 가능하므로, vPC 또는 기타 이더채널 기술을 모두 사용 할 수 있다.

하지만 NV-GRE는 암호화 Encapsulation이므로 로드 분산이 불가능하다.

즉 한쪽의 물리적인 링크로 Load가 몰릴 수 밖에 없다. 지금도 Teaming과 Bonding을 하는 마당에, Network Overlay가 적용되면 이러한 부하 분산을 할 수 없다니 이게 무슨 날벼락인가???

이 부분이 가장 큰 핵심적 차이라고 할 수 있다.


Network Overlay 기술에 대해서 조금씩 느껴지는가?

향후 OTV, LISP, vPC, Fabric Path 연재에서 자신만의 미래의 데이터센터를 그려보기 바란다.

아마도 VXLAN은 수많은 기술중에 핵심적 요소가 될 것이다.






공지사항