07CoreXL — 개념과 구성CoreXL — 개념과 구성
CoreXL 은 방화벽 커널을 여러 벌 복제해 여러 CPU 코어에서 병렬로 트래픽을 검사 하는 기술입니다. 이 장은 CoreXL의 구조와 기본 구성을 정리합니다.
CoreXL의 구조
CoreXL을 켜면 방화벽 커널이 여러 벌 복제 됩니다. 복제된 검사 커널 하나가 CoreXL Firewall Instance(FWK) 로, 각각 완전하고 독립된 검사 커널 이며 같은 인터페이스·같은 정책으로 동시에 트래픽을 처리합니다(Security Gateway 가이드에서 본 개념). 들어오는 트래픽을 받아 각 인스턴스로 분배하는 것이 CoreXL SND(Secure Network Distributor) 입니다. 코어 수에 거의 선형으로 성능이 확장 됩니다.
켜고 끄기, 기본 구성
CoreXL은 명령으로 켜고 끕니다. cpconfig 메뉴 또는 명령 으로 활성/비활성하며, 변경은 재부팅 후 적용됩니다.
기본 인스턴스 수는 CPU 코어 총 수에 따라 자동 으로 정해집니다 — 예를 들어 코어 2개면 FW 인스턴스 2·SND 2, 코어 4개면 FW 인스턴스 3·SND 1 식입니다(코어 1개면 CoreXL 비활성). SecureXL이 켜져 있으면 모든 인터페이스의 affinity가 자동 으로 잡혀, 트래픽이 SND를 도는 코어로 향합니다. (단 이 기본값은 Dynamic Balancing을 지원하지 않는 게이트웨이에만 적용됩니다.)
인스턴스 구성과 한계
IPv4·IPv6 CoreXL Firewall 인스턴스 수를 따로 구성 할 수 있어, 트래픽 특성에 맞춰 코어를 배분합니다. 다만 한계도 있습니다 — ClusterXL 가이드에서 봤듯 클러스터 멤버 간 인스턴스 수가 다르면 상태가 어긋나 거나(인스턴스가 더 많은 멤버는 DOWN), 페일오버 시 일부 연결이 끊길 수 있습니다.
정리하면, CoreXL은 SND가 받아 여러 FW 인스턴스로 분배해 코어를 병렬 활용 하며, 기본 인스턴스 수는 코어 수에 따라 자동으로 잡힙니다. 어느 코어에 무엇을 묶을지(Affinity)와 세밀한 튜닝은 CoreXL Affinity와 성능 튜닝에서 이어집니다.