Switching (L2, L3, L4, L7)

L2 Switching

1.1. Layer 2 Switching 이란

  • Input 포트를 통해 들어온 frame을 목적지 MAC 주소를 기반으로 output 포트를 통해 전송하는 것
  • Switching 장비 전체가 Broadcast Domain이 됨

 

L2 Switching의 주요 기능

  • Address Learning
    • Switch 장비가 각 포트에 연결되어 있는 장치들의 MAC 주소를 파악하는 것
    • MAC Database를 통해 포트-MAC 주소의 mapping 정보 관리
  • Forward / Filter decision
    • MAC database를 참조하여 input frame의 목적지 MAC 주소가 있으면 해당 포트로 frame을 Forward 하고 없으면 Filtering
  • Loop Avoidance
    • 동일 데이터의 flooding 현상 방지
    • Broadcast Storm 현상 방지

 

Address Learning

  • 처음 장비가 설치되거나 부팅되는 시점에서는 MAC Table은 비어있는 상태
    • Switch 장비에 연결되어 있는 장치들의 MAC 주소에 대한 정보가 없으므로 Frame에 대한 Forward/Filter Decision 기능을 수행할 수 없음
    • Input Frame을 Switch의 모든 포트로 Flooding
  • 어떤 포트를 통해 Frame이 스위치 장비로 들어오면 Frame의 Source MAC Address 정보를 읽어서 MAC Table에 Port - MAC Address 정보를 저장
    • 여전히 목적지 MAC 주소를 갖는 장치가 연결되어 있는 포트 정보를 알지 못하기 대문에 Frame이 들어온 포트를 제외한 모든 포트로 Frame을 Flooding
  • 위의 과정을 거쳐 모든 포트에 대한 MAC Table이 완성되면 Input Frame에 대한 Forward/Filter Decision 기능 수행

 

Forward/Filter Decision

  • Switch 장비의 모든 포트에 대한 MAC Database가 완성되면 효과적인 트래픽 관리 가능
    • Input Frame의 목적지 MAC 주소를 MAC Database에서 찾으면 해당 포트로 Frame을 전송
    • Input Frame을 모든 포트로 Flooding할 경우와 비교할 때, Frame이 해당 목적지 포트로만 전송되므로 백플레인에 대한 효율적 활용이 가능
    • 불필요한 트래픽 생성을 방지

 

Redundant Topology

  • Switch 장비의 이중화를 통한 Redundant Topology를 통해 네트워크 안정성을 향상 시킬 수 있음

 

Redundant Topology의 문제점

  • Switch 장비가 이중화되고, 그 경로가 이중화되면서 네트워크 내에 생성되는 Loop가 문제점을 야기
    • Broadcast Storm
    • Multiple Frame Copies
    • MAC Address Table Instability
  • 네트워크 경로상에 Loop가 존재할 경우, 논리적으로 Loop를 제거하여 네트워크를 안정화 해야함

 

Spanning-Tree Protocol

  • 네트워크내에 존재하는 Loop를 논리적으로 제거
  • One Root Bridge per Network, One Root Port per Nonroot Bridge
  • Root Birdge의 선택 과정
    • 가장 낮은 Bridge ID를 갖는 장비가 Root Bridge가 됨
    • Bridge ID = Bridge Priority + Bridge MAC Address
  • Key Issue == Time Convergence
    • Spanning Tree에 대한 재구성이 필요한 경우, 새로운 Spanning Tree가 완성될 때까지의 시간
    • Spanning Tree 재구성이 필요한 경우
      • Network Topology가 변경된 경우 => 새로운 Root Bridge 선택 후 STP 재구성
      • Spanning Tree 경로상에 장애가 발생한 경우 => Root Bridge를 중심으로 STP 재구성
      • Root Bridge에 장애가 발생한 경우 => 새로운 Root Bridge 선택 후, 선택된 Root Bridge를 중심으로 STP 재구성

 

Frame 전송 방식

  • Cut-through
    • 입력 프레임의 목적지 MAC 주소를 확인한 후, 해당 포트로 즉시 전송
    • 장점 : 빠른 전송 속도로, 지연 시간이 중요한 환경에 유리
    • 단점 : 오류 검사가 없어 손상된 데이터가 전송될 위험이 있음
  • Store-and-Forward
    • 전체 프레임을 메모리에 저장한 후, 오류를 검사하고 오류가 없으면 해당 포트로 전송
    • 장점 : 데이터 무결성을 보장하여 신뢰성이 높음
    • 단점 : 지연 시간이 상대적으로 길어질 수 있음
  • Fragment Free
    • 프레임의 처음 64바이트를 검사하여 오류를 확인한 후 전송
    • 장점 : 빠른 전송 속도와 오류 방지 기능을 모두 제공하여 중간 정도의 신뢰성과 성능을 제공
    • 단점 : 전체 프레임을 검사하지 않기 때문에 일부 손상된 데이터가 전송될 수 있는 가능성이 존재

 

L3 Switching

Switching vs Routing

  • Switching
    • Layer 2 Internetworking Technology
    • MAC 주소 기반의 Frame Forwarding
  • Routing
    • Layer 3 Internetworking Technology
    • Network 주소 기반의 Packet Forwarding
    • 목적지까지의 Forwarding Path 결정

 

Layer 3 Switching 이란?

  • Layer 3 Switcing = Layer 2 Switching + Layer 3 Routing
  • Switch 장비 플랫폼에 Routing 기능 부가

 

Layer 3 Switching의 장점

  • 고성능의 라우팅 성능 지원
    • 스위칭 속도와 비슷한 라우팅 성능 지원
    • 높은 대역폰 지원으로 네트워크 bottleneck 제거
  • 간편한 관리 기능 지원
    • 설치, 구성 및 관리가 용이
    • 기 구성되어 있는 LAN 네트워크 장비 및 프로토콜과 호환
    • 저렴한 구축 비용

 

Layer 3 Switcing vs Routing

출처 : https://www.networkstraining.com/router-vs-switch-in-networks/

 

Layer 3 Switching의 구현 기법

  • Packet-by-Packet Routing
    • 모든 패킷에 대한 라우팅 프로세싱 수행
    • 모든 패킷을 Network Address 기반으로 전송
  • Flow-base routing
    • 최초의 패킷에 대해 라우팅 프로세싱 수행 및 Network Address 기반으로 전송
    • 첫 패킷 이후의 패킷들에 대해서는 더이상의 라우팅 프로세싱 없이 MAC 주소 기반으로 동일한 목적지로 Forwarding

 

L4 Switching

L4 Switching의 대표적인 두 가지 기능

  • QoS(Quality of Service)의 구현
    • 어플리케이션의 중요도에 따라 우선 순위 결정
      • Layer 4 Switch는 TCP/UDP 헤더의 포트값을 인식하여 서비스 별로 분류가 가능함
      • 예를 들면, 전자우편에 비해 화상회의에 더 많은 대역폭을 제공할 수 있게 됨
  • SLB(Server Load Balancing) 기능의 구현
    • Layer 4 정보를 기반으로 한 Server Load Balancing 기능 지원
    • Server Farm 환경에서는 SBL 기능이 필수
      • 다수의 서버로 동일 기능을 구현하고, 이러한 기능별 서버 그룹을 여럿 보유한 상황에서는 다수개의 서버간의 부하 분산 기능을 구현하는 것이 필수적
      • Layer 4 스위치는 Layer 4 (예를 들면, TCP or UDP) 계층 정보를 바탕으로 각 기능별 서버군을 선택하고, 서버군내의 다수의 서버 사이의 부하 분산 기능을 지원
      • 부하 분산을 통해 네트워크의 안정성 및 서비스 품질 향상 도모
    • 현재 네트워크의 일반적인 형태인 TCP/IP 네트워크를 기반으로 다양한 SLB 솔루션 등장

 

Server Load Balancing 구현 방식

  • 부하 분산 방식
    • Round Robin
      • 모든 서버에 균일한 횟수로 접속
      • 서버의 부하 상태 등에 대한 고려 없이 일률적으로 부하를 분산함으로써 효과적인 부하 분산을 기대하기 어려움
    • Weighted Round Robin
      • 서버마다 가중치를 설정
      • 서버의 처리 용량이나 디스크, 메모리 용량, connection speed 등에 따라 가중치 부여
      • 가중치가 큰 서버에 장애가 발생한 경우, 가중치가 큰 만큼 많은 사용자들이 connection 설정에 실패할 수 있음
    • Least Connection
      • 가장 적은 Session을 처리하고 있는 서버를 우선적으로 접속
      • Session 수가 많은 것이 바로 많은 부하를 의미하는 것은 아님

 

L7 Switching

Web Switching 이란?

  • 현재 인터넷 데이터의 대부분이라 할 수 있는 웹 데이터에 대한 부하 분산 기능을 강화
  • IP 주소나 TCP/UDP 포트값 뿐만 아니라 URL이나 Cookie 정보 등을 이용하여 웹 데이터에 대한 보다 효율적인 부하 분산 기능 수행
  • 서버들에 대한 부하 분산 기능, Firewall Load Balancing뿐만 아니라 http session에 대한 persistent를 유지하는 기능 추가
    • 전자상거래의 지불 시스템과 같이 보안적인 요소가 가미되고, 세션 중단이 치명적인 경우에 대비
    • Web Switching에 필요적인 기능
    • Cookie 및 SSL session ID 등의 정보 이용
  • Layer 4 Switching보다 확장된 개념

 

Cookie와 SSL ID를 이용한 persistent 유지

  • HTTP session은 TCP를 기반으로 통신이 이루어 지므로, 본격적인 데이터 교환이 이루어지기 전에 TCP connection 설정을 위한 작업 필요
  • Web Switching 장비에서 사용자 단말의 TCP connection 설정 요구를 중간에 가로채서 목적지 서버로 TCP connection 설정을 요구하는 한편 사용자 단말로는 TCP connection이 설정되었음을 알리는 Acknowledge 메시지를 보냄
  • Web Switching 장비가 중심이 되어 사용자 단말에서 서버간 HTTP session이 끊기지 않도록 관리