- L3 Multilayer 스위치
- Router
◇ Multi-Layer 스위치에서의 인터페이스
▷ 2계층 인터페이스
- Access Port : 단일 VLAN 트래픽 전송
- Trunk Port : ISL이나, 802.1Q Tagging을 이용하여 다수의 VLAN 트래픽을 전송
▷ 3계층 인터페이스
- Routed Port : 순수 3계층 포트. 일반 라우터 인터페이스와 동일하게 동작하지만, 서브인터페이스를 지원하지 않음.
기본 L2 스위치 포트인 스위치 모델(3550,4500 계열)에서는 no switchport 라는 명령을 사용하여 활성화.
- SVI(Switch Virtual Interface) : VLAN 간의 Routing을 위한 가상 VLAN 인터페이스. 하나의 VLAN에 대해서만 관계.
각 VLAN 그룹에서는 해당 SVI는 게이트웨이 역할을 하게 된다.
- BVI(Bridge Virtual Interface) : 3계층 가상 Bridging 인터페이스
◇ Router on a Stick
- 3계층 장비와 2계층 스위치 사이를 서브인터페이스를 이용하여 다수의 VLAN이 통신 하게 Trunk로 설정하여 스위치에서 설정된 다수의 VLAN간(Access Port)의 라우팅을 3계층 장비인 라우터에서 수행하도록 하는 것.
[ 그림 구성 필요 ]
◇ IP Helper-Address
- 라우터나 L3스위치는 기본적으로 Broadcast 트래픽 구간을 나눠서 동일 Subnet이 아니면, Broadcasting이 안된다.
- 하지만, DHCP와 같이 다수의 VLAN 클라이언트에서 사용해야 하는 서비스가 존재한다.
- 이 때, IP Helper-Address 명령어를 사용하면, 사전에 특정하게 지정된 서비스에 대해서는 Unicast나 Directed Broadcast로 전달이 된다.
- 기존적으로 Helper-Address로 전송되는 서비스는 TFTP, DNS, Time, NetBIOS, Name Server, BOOTP 이다.
[ 포트 번호 정리 ]
- 기본 서비스 이외 추가시에는 다음과 같은 명령어를 사용하여 추가할 수 있다.
ip forward protocol udp udp_ports
❏ L3 스위치는 ASICs(Application-specific integrated circuits)이라는 이더넷 포트 간의 high speed로 Route될 수 있도록 구현된 하드웨어 칩을 가지고 있다. L3의 ASICs 칩을 이용한 Routing은 최신기술(High-end)의 Router에 적용된 기능을 차용해서 사용한 기능이므로, 최신 Router에도 이러한 기능이 ASICs에 구현되어 있다.
일반 라우터의 CPU의 경우에는 다양한 기능과 다양한 라우팅 프로토콜을 모두 적용할 수 있어야 하기 때문에 성능면에서는 특정 기능에 특화된(Data Plane) ASICs칩을 이용한 L3 스위치가 더 빠르게 동작한다.(일반적인 라우터의 L3 라우팅에 비해서)
◇ MultiLayer Switching 방식
- MultiLayer Switching은 라우팅 과정이 하드웨어(ASIC) 기반으로 이루어지기 때문에 성능한 좋다.
- CEF라는 방식으로 지원된다.
▷ CEF
- 스위치가 하드웨어 스위칭을 이용하여 패킷을 전달하기 위해서, FIB와, Adjacency table과 같은 Control Plane정보를 Data-plane으로 다운로드하여 이용하게 된다. 이 때 Data-Plane은 하드웨어 스위칭에 사용되는 ASIC과 같은 역할을 한다.
▷ FIB (Forwarding Information Base)
- Routing Table을 복사하여 보다 빠르게 하드웨어적으로 Routing을 할 수 있도록 함.
▷ Adjaceny Table (인접테이블)
- FIB 항목에 대응하는 모든 2계층 Address를 관리. 3계층 라우팅 테이블의 Next-Hop에 대한 Port와 Mapping.
✓ Control plane
✎ Control plane 프로세스는 목적지 주소를 기반으로 Next hop IP가 있는 인터페이스로 Route되도록 디자인된 IP 라우팅 테이블을 만들고 유지한다.
✎ 목적지 IP 주소로 Route할 때 Next hop의 IP를 이용해서 Next hop의 인터페이스 주소(Mac주소)를 알아내고, Next hop으로 이동할 때의 인터페이스 정보를 확인. (Local ARP)
✓ Data plane
Data plane은 Control plane에 의해서 학습된 정보를 기반으로 IP 패킷이 실제로 라우팅 되도록 한다. Control Plane이 IP 패킷을 어디로 라우팅할 것인지를 정의하는 반면, Data Plane은 IP 패킷을 정확히 어떻게 라우팅 할 것인지를 정의한다. 이러한 정보는 IP 패킷이 next hop 목적지에 도달하기 위한 L2기반의 주소 지정 뿐 아니라, IP Routing을 위한 TTL과 IP 헤더 checksum과 같은 동작도 필요로 한다. L3 스위칭은 이러한 Data Plane를 기반으로 한다.
✎ 목적지 IP 주소로 Route할 때, Control Plane 과정에서 얻어낸 L2 주소(MAC주소)로 패킷의 Source/Destination Mac 주소를 교체하고 TTL 값을 낮추고, checksum 값을 변경.
❏ Switching Routers는 OSPF나 EIGRP같은 라우팅 프로토콜을 지원하며, CPU가 Control-plane과 Data-plane 동작을 수행한다.
Routing Switches는 다양한 라우팅 프로토콜(OSPF나 EIGRP같은)을 지원하지는 않지만, Data-Plane 동작을 위해서 특화된 ASICs 칩이 속도를 빠르게 한다.
❏ FIB (Forwarding Information Base)
소프트웨어 기반의 라우터는 L3 Engine라 하고, static route나 동적 라우팅 프로토콜을 통해 라우팅 테이블을 유지.
하드웨어 기반의 L3 스위치는 L3 Forwarding Engine라 하고, 라우팅 테이블을 다운해서 FIB 테이블을 유지
❏ L3 스위치의 라우팅 특징
✓ 라우팅을 위해 라우팅 테이블 목적지 주소와 패킷의 목적지 주소를 대조하는 작업이 필요.
▹라우터 : 2진수 기반. 32bit 주소체계이므로, 총 32 Step 비교.
▹스위치 : 10진수 기반. 0~255.0~255.0~255.0~255. 총 4 step 비교.
✓ 라우팅 테이블 VS FIB 테이블
▹라우팅 테이블 : 테이블의 정보가 순차적이지 않음. 테이블을 모두 검색한 이후에 가장 구체적인 경로로 라우팅.
▹FIB 테이블 : 구체적인 정보(서브넷 bit)정보가 테이블의 상위에 존재하므로, 가장 처음 검색된 경로로 라우팅