여러분은 허브(Hub)란 단어를 들으면 무엇을 떠올리시나요? 전 아무래도 네트워크 계통에서 일을 하다 보니 다수의 컴퓨터를 연결시켜주는 이더넷 허브(Ethernet Hub)를 떠올립니다. 이더넷 허브는 이더넷 네트워크인 Local Address Network(LAN)에서 다수의 컴퓨터를 연결해주는 장비입니다. 요즘엔 가정에서도 흔히 사용하고 있지요.
허브(HUB)
이더넷 허브(Ethernet Hub)는 이더넷 네트워크에서 여러 대의 컴퓨터, 네트워크 장비를 연결하는 장치이다. 같은 허브에 연결된 컴퓨터와 네트워크 장비는 모두 상호 간에 통신할 수 있게 된다.
- 출처 : 위키백과 -
많은 포트를 가진 허브에 컴퓨터를 연결함으로써 다수의 컴퓨터를 하나의 네트워크로 구성할 수 있습니다. 아래 그림처럼 말이죠. 하나의 라우터(혹은 공유기)에 연결된 허브에서 다수의 컴퓨터가 연결된 것을 확인할 수 있습니다. 가정에서 사용하는 공유기 역시 허브의 역할을 겸임하여 여러 개의 포트를 가지고 있지요. 라우터를 사용하건 공유기를 사용하건 구성은 같습니다.
하지만 허브에게는 단점이 있습니다. 허브는 자신의 인터페이스에 연결된 컴퓨터의 MAC Address를 저장/관리하지 않기 때문에 패킷의 출발지와 목적에 대한 정보를 갖지 않습니다. 목적지에 대한 정보가 없는 상태에서 패킷을 전달하려면 모든 포트에 패킷을 전달하는 수밖에 없습니다. 그래야 그중 실제 목적지에 해당하는 포트로 보낼 수 있을 테니까요. 그러다 보니 허브에 연결된 네트워크에서 한 컴퓨터가 주고받는 데이터는 연결된 모든 컴퓨터가 받게 되고 연결된 컴퓨터가 많아질수록 속도가 느려지고 충돌이 발생하게 됩니다. 또한 이러한 충돌 감지를 위해 반이중 방식(Half-duplex) 방식을 채택하였기에 비효율적일 수밖에 없습니다. 위 그림을 보시면 허브의 아이콘 모양이 한쪽 방향의 화살표로만 표시되는 이유죠.(물론 요즘엔 이러한 이더넷 허브는 보기 힘들만큼 희귀하죠. 대신 MAC Address를 저장하는 스위칭 허브가 사용됩니다.)
허브의 이러한 단점을 보완하기 위한 네트워크 장비가 바로 스위치(Switch)입니다.
스위치(Switch)
다수의 컴퓨터를 하나의 네트워크로 묶어 주는 역할을 하는 것은 스위치, 허브 모두 동일합니다. 하지만 스위치는 자신의 포트에 연결된 MAC Address를 저장/관리하기 때문에 패킷의 출발지와 목적지 정보에 대해 파악할 수 있습니다. 한 컴퓨터에서 전송된 데이터를 모든 포트에 연결된 컴퓨터에 뿌리지 않고 목적지 포트에만 전송할 수 있지요.
뿐만 아니라 스위치는 전이중 방식(Full-duplex)을 지원합니다. 그렇기에 충돌이 발생하지 않고 더 빠른 속도를 보장합니다. 여담으로 허브에 비해 스위치가 가격이 좀 있다 보니 예전에는 주머니가 가벼운(?) 분들이 허브를 주로 사용했습니다만 요즘엔 스위치의 가격이 점점 내려가서 스위치를 사용하는 분도 많다고 하네요. 하지만 스위치와 허브를 가르는 가장 큰 차이점은 따로 있으니 바로 VLAN(Virtual LAN)입니다.
VLAN이 필요한 이유
VLAN의 정의와 기능에 대해 알아보기 전에 VLAN이 필요한 이유에 대해 먼저 언급하고자 합니다. 그전에 LAN(Local Address Network)와 Broadcast에 대해 짚고 넘어가야 합니다.
LAN이란 집과 같은 소규모 네트워크에서부터 사무실, 회사와 같은 중규모 이상의 네트워크에 이르기까지 동일한 IP 대역과 동일한 Subnet Mask를 사용하며 Address Resolution Protocol(ARP)가 닿는 모든 범위를 뜻한다.
- 출처: LAN 쉽게 이해하기 -
브로드캐스트(Broadcast)란 컴퓨터 네트워킹, 정보 통신 및 방송등 모든 수신자에게 동시에 메시지를 전송하는 방법이다. 브로드 캐스팅은 프로그램에서 높은 수준의 다양한 응용 용도로 활용될 수 있다.
- 출처 : 위키백과 -
LAN 쉽게 이해하기에서 LAN이란 ARP Request가 닿는 모든 범위라고 말씀드렸습니다. 이 ARP(Address Resolution Protocol)는 각 컴퓨터가 갖는 IP Address에 매칭되는 MAC Address를 알아내기 위한 Protocol입니다. 또한 ARP Request는 연결된 네트워크 장비와 컴퓨터에 모두 전달됩니다. 이렇듯 송신자가 전달하는 메시지를 연결된 모든 컴퓨터가 전달받는 방식을 브로드캐스트(Broadcast)라고 합니다. ARP가 Broadcast를 사용하는 대표적인 프로토콜인 것이죠. 그리고 브로드캐스트를 전달할 때는 목적지 IP의 끝자리를 .255로 설정합니다.(10.10.10.x/24의 경우 10.10.10.255가 됩니다.)
네트워크 장비에 10대의 컴퓨터가 연결되어있다면 각각의 컴퓨터가 다른 컴퓨터의 MAC Address를 알기 위해 ARP Request를 날릴 것이고 이는 최소 10번의 ARP Request가 발생된다는 것을 의미합니다. 컴퓨터가 1000대라면 어떨까요? ARP Request를 한 번씩만 날려도 최소 1000번의 ARP Request가 발생하겠군요. 연결된 컴퓨터의 숫자가 많으면 많아질수록 발생하는 Broadcast의 양이 많아집니다. 그럼 네트워크의 대역폭은 브로드캐스트로 점점 가득찰 것이고, 데이터 전달 속도가 눈에 띄게 느려질 것이며 시도 때도 없이 날아오는 브로드캐스트를 처리하는 컴퓨터는 다른 작업을 제대로 할 수 없게 되겠죠.
또한 Subnet Mask가 다른 여러 개의 IP 대역을 사용하고 싶다면 어떻게 해야 할까요? 아래 그림처럼 각각의 IP 대역을 사용하는 라우터(공유기)를 설치해야 할까요? 그러기엔 비용이 더 들 뿐더러, 새로운 IP 대역이 추가되면 될수록 번거로운 작업이 됩니다.
이러한 문제를 해결할 수 있는 기능이 바로 VLAN(Virtual LAN)입니다.
VLAN이란?
컴퓨터 네트워크에서 여러 개의 구별되는 브로드캐스트 도메인(Broadcast Domain)을 만들기 위해 단일 2 계층 네트워크를 분할할 수 있는데, 이렇게 분리되면 패킷들은 하나 이상의 라우터들 사이에서만 이동할 수 있다. 이러한 도메인을 가상 랜(영어: Virtual LAN)으로 부르며, 가상 근거리 통신망(영어: Virtual Local Area Network), 가상 LAN(영어: Virtual LAN), 또는 간단히 VLAN으로도 표기한다.
- 출처 : 위키백과 -
위의 정의를 쉽게 정리하면 다음과 같습니다. VLAN을 지원하는 네트워크 장비는 VLAN을 다수 생성할 수 있고 이 VLAN을 통해 브로드캐스트 도메인을 나눌 수 있습니다. 이렇게 나누어진 브로드캐스트 도메인은 VLAN이 설정된 포트에 연결된 단말의 IP 대역만이 통신이 가능하며 다른 VLAN과 통신하기 위해서는 Layer 3 이상의 스위치 혹은 라우터를 통해서만 가능합니다. 또한 VLAN은 1 ~ 4096까지의 번호를 사용하여 VLAN을 구분지을 수 있습니다. 이를 VLAN ID라고 합니다. 즉 VLAN이란 브로드캐스트가 서로 미치지 않는 여러 개의 논리적인 LAN을 만드는 것이라고 정의할 수 있는 것이죠.
네트워크 장비의 포트 각각에 원하는 VLAN을 설정할 수 있습니다. 하나의 물리적인 스위치를 VLAN을 사용하여 다수의 (논리적인) LAN을 쓸 수 있도록 하는 것이지요. VLAN 10과 VLAN 20을 각각 10.10.10.x/24, 10.10.20.x/24에 할당하여 표현하면 다음과 같습니다. (물리적인 인터페이스가 아닌 VLAN에 가상의 인터페이스를 생성하고 IP를 할당하여 L2 통신하기 때문에 논리적인 인터페이스, Switched Virutal Interface(SVI)가 사용됩니다.)
스위치는 포트에 설정된 각각의 VLAN을 보고 트래픽 전달 여부를 판단합니다. 예를 들어 PC 1이 연결된 스위치의 e2의 포트는 VLAN이 10이므로 동일한 VLAN 10이 설정된 포트로만 브로드캐스트를 전달할 수 있습니다. 위의 그림에서는 스위치의 e0로만 전달할 수 있겠군요. 이를 다시 말하면 PC1이나 라우터의 f0/0에서 전달되는 브로드캐스트는 VLAN 10이 설정된 포트로만 전달됨을 의미합니다. PC 2는 PC 3과 라우터의 f0/1 포트로 브로드캐스트를 전달할 수 있습니다. 즉, PC 2는 PC 3와 직접적으로 통신할 수 있습니다. PC 2와 PC 3 라우터의 f0/1 포트 모두 VLAN 20으로 설정, 다시 말해 동일한 브로드캐스트 도메인에 속하기 때문입니다. VLAN의 기본 목적인 브로드캐스트 도메인 분할에 부합합니다. 즉 VLAN을 적용함으로서 10.10.10.x/24과 10.10.20.x/24 IP 대역을 논리적으로 분할하여 사용하는 것이지요.
그렇다면 PC 1(10.10.10.1/24)와 PC2(10.10.10.20.1/24)가 통신을 하려면 어떻게 해야 할까요? Layer 3 이상의 장비인 라우터 혹은 L3 스위치를 통해 이동해야 합니다. 이들은 VLAN 간의 통신을 가능케 하는 기능을 가지고 있으며 이를 Inter-VLAN Routing 라고 합니다. 여기까지가 VLAN의 기본적인 내용입니다. 다음 문서에서는 VLAN과 Trunking(Tagging)에 대해 다루어보도록 하겠습니다.
'Network Infra 쉽게 이해하기 > L2 Network 쉽게 이해하기' 카테고리의 다른 글
VLAN 쉽게 이해하기 #3 (6) | 2020.12.27 |
---|---|
VLAN 쉽게 이해하기 #2 (7) | 2020.12.01 |
LAN 쉽게 이해하기 (3) | 2020.09.10 |
ARP 쉽게 이해하기 (37) | 2020.06.27 |
OSI 7 Layer 쉽게 이해하기 (25) | 2020.04.14 |
댓글