시스템구조

네트워크 장비_부하 분산 기술_4계층(전송 층)_DNS 라운드 로빈, 로드밸런서, L2, L3, L4, L7 스위치, 로드밸런서, 리피터, 허브, 인터 네트워킹

스윙스윙 2021. 9. 30. 18:13

▣ 네트워크 장비_부하 분산 기술_4계층(전송 층)_DNS 라운드 로빈, 로드밸런서, L2, L3, L4, L7 스위치, 로드밸런서, 리피터, 허브, 인터 네트워킹

■ DNS 라운드 로빈

DNS를 이용해서 하나의 서비스에 여러 대의 서버를 분산 시키는 방법임

완전한 부하분산 솔루션은 아니지만 가장 손쉽고 경제적으로 클라이언트의

웹서버로의 요청을 분산시킬 수 있는 방법

DNS가 클라이언트의 웹서버의 IP를 요청하는 쿼리를 받을 때 마다 여러 대 웹서버 IP주소를

번갈아 가면서 리턴해 주는 방식

 

- DNS 라운드 로빈 문제점

1. 서버의 수 만큼 공인 IP 주소가 필요함
2. 균등하게 분산되지 않음(DNS 캐싱 때문에 - 클라이언트 및 프록시 서버)
3. 하나의 서버가 다운되었을 때 이를 인지하기 어려움

   (DNS 캐싱 때문에 / 기본적으로 DNS는 서버 다운 알 수 없음)

 

- DNS 라운드 로빈의 다중화 구성

DNS 라운드 로빈의 다중화 구성은 각 웹 서버에 VIP(Virtual IP)를 부여해

한쪽이 정지 되면 다른 한쪽으로 정보를 넘기는 방식으로 구성할 수가 있음

 

■ 스위치 종류

구분 특징
L2 스위칭 허브 기능
Data link 계층을 사용, Mac주소 기반 부하 분산
예시 : Mac > 80–00–20–30–1C-47

브릿지, 허브 등
프레임에 포함된 헤더를 볼 수 있으므로 헤더에 포함된 발신지 물리주소, 수신지 물리 주소를 볼 수 있어 보다 지능적인 처리가 가능
필터링 및 포워딩 기능을 수행함. 포워딩이란 발신지가 보낸 프레임을 허브처럼 모든 포트로 보내는 것이 아니라 수신지와 연결된 포트로만 전송하는 것을 말함. 이런 기능을 수행하기 위해서 각 포트와 연결된 노드의 MAC주소를 매핑하는 테이블을 내부적으로 가지고 있어야 하고, 이 테이블 만들기 위한 학습 능력을 갖추어야 함.
장점 : 구조가 간단하고 가격이 저렴한데 비해, 성능이 좋음
단점 : Broadcast 패킷에 의해 성능저하 발생, 라우팅 등 상위레이어 프로토콜 기반 스위칭이 불가, 라우팅이 불가함
L3 Network 계층을 사용, IP주소 기반 부하 분산
예시 : IP > 213.12.32.123

L2 + Routing
Router, ICMP 프로토콜, IP
패킷에 포함된 헤더를 볼 수 있으므로 헤더에 포함된 IP주소(발신지, 수신지)를 볼 수 있어 좀 더 지능적인 처리가 가능함
라우터는 분리된 서로 다른 네트워크를 연결할 수 있음. LAN-LAN, LAN-WAN, WAN-WAN을 연결할 수 있음
라우터에 의해 연결된 네트워크를 인터넷이라고 함.
장점: Broadcast 트래픽으로 전체 성능 저하 방지
단점: 특정 프로토콜을 이용해야만 스위칭이 가능
라우터는 주로 SW로 구성되기 때문에 속도는 느리지만 많은 기능 추가 가능
L3 스위치는 하드웨어로 구성되기 때문에 속도는 빠르지만 많은 기능 추가 어려움
L4 Transport 계층을 사용, Port 기반 부하 분산, 로드 밸랜서(Load Balancer) 
캐싱서비스, 서비스 연결, QoS, 보안
예시: IP+Port > 213.12.32.123:80, 213.12.32.123:1024
L4 스위치 = 포트 + 로드밸런싱(물론 IP,세션도 중요합니다)

TCP, UDP Protocol
장점 : Port기반 스위칭 지원, VIP를 이용하여 여러대를 한대로 묶어 부하분산 virtual ip (vip=대표ip)를 하나 등록해서 그 ip로 오는 패킷중에 http(80) 패킷에 대해서는 group1으로 보내면 설정된 matric(hash, 라운드로빈, least connection, weighted )값에 의해 로드밸런싱됨. 대부분 hash 방식을 사용
보안성이 높고 고급 스위칭 설정 가능, 네트워크 성능 개선 기여
단점 : 프로토콜에 의존적이며, 설정이 복잡함, 고가의 장비로 L2, L3스위치와 적절합 혼합배치 필요
L7 Application 계층을 사용, 요청(URL) 기반 부하 분산
콘텐츠(HTTP, FTP, Telnet, Email 등)를 인지하여 원하는 포트로 전달하는 스위치(콘텐츠 기반 스위칭)
L5 ~ L7(Session, Presentation, Application) packet payload를 분석하여 스위칭 하는 장비 /* payload : 흥미, 관심있는 데이터로 해석
TCP/UDP port(0–65535)에 대한 인지
쿠키(Cookie) 기반 연결지속성
- 클라이언트 IP가 공인 IP 치환되어 전송(X-Forwarded-For에 client ip기록)
Dos/SYN Attack에 대한 방어
패킷 분석을 통한 바이러스 감염 패킷 필터링(CodeRed/Nimda)
예시 : IP+Port+패킷 내용을 한번에 표현한다. 213.12.32.123:80, 213.12.32.123:1024 + GET/ img/aaa.jpg

HTTP, FTP, SMTP Protocol

 

■ 로드밸런서 알고리즘 종류

  • Round Robin(순차방식)
    - 요청을 순서대로 각 서버에 균등하게 분배하는 방식
    - 서버 커넥션 수나 응답시간에 상관없이 모든 서버를 동일하게 처리
    - 다른 알고리즘에 비해서 가장 빠르다
  • Least Connection(최소접속방식)
    - 서버에 연결되어 있는 Connection 개수만 갖고 단순비교하여 가장 적은곳에 연결
  • Weighted Least Connections(가중치 최소접속방식)
    - 서버에 부여된 Weight 값을 기반으로 Connection 수의 개수와 같이 고려하여 할당
  • Fastest Response Time(응답시간방식)
    - 가장 빨리 응답하는 서버에 이용자 요구를 연결하는 방법. 응답시간은 각 서버가 패킷 형태의 요구를 송수신하는데 걸리는 시간을 측정한 것이다.
  • Adaptive(최소대기방식)
    - Open또는 Pending(계류중인) 커넥션을 적게 가지고 있는 서버로 네트웍 커넥션 방향을 지정한다. Pending 커넥션은 Full TCP Handshake를 완성하지 않은 것으로, 이것은 초당 클라이언트 Thread의 수가 증가할 때 더욱 잘 수행된다.
  • Fixed, Hashing, Random, URL-based, Cookie 등 여러 알고리즘 존재

 


2018년 96번

정답 : 3번

DNS 라운드 로빈 방식은 클라이언트에 요청에 대해 순차적으로 번갈아 가며 서버로 보내기 때문에 특정 서버에 과부하가 발생해도 동일하게 접속을 배분한다.

 

- DNS 라운드 로빈 문제점

1. 서버의 수 만큼 공인 IP 주소가 필요함
2. 균등하게 분산되지 않음(DNS 캐싱 때문에 - 클라이언트 및 프록시 서버)
3. 하나의 서버가 다운되었을 때 이를 인지하기 어려움

   (DNS 캐싱 때문에 / 기본적으로 DNS는 서버 다운 알 수 없음)

 


2021년 94번

정답 : 2번, 3번

1) Broadcast 패킷에 의해 성능저하 발생, 라우팅 등 상위레이어 프로토콜 기반 스위칭이 불가, 라우팅이 불가함 (틀림)

2) Network 계층을 사용, IP주소 기반 부하 분산 (맞음)

3) Transport 계층을 사용, Port 기반 부하 분산, 로드 밸랜서(Load Balancer) / 상위 스위치는 하위 스위치의 모든 기능을 수렴함 (맞음)

4) Application 계층을 사용, 요청(URL) 기반 부하 분산
콘텐츠(HTTP, FTP, Telnet, Email 등)를 인지하여 원하는 포트로 전달하는 스위치(콘텐츠 기반 스위칭) (부하분산 기능 있음 틀림)

 


2012년 82번

정답 : 1번

스위치는 self-learning을 하면서 자신의 스위치 테이블을 만듬

스위치는 테이블 [포트-포트와 연결된 호스트의 MAC주소]가 저장됨

이렇게 테이블이 만들어지 지면 이후부터 스위치는 MAC주소와 연결된 패킷을 바로 해당 포트로 보내버리면 되므로 간단히 스위칭 할 수 있께 됨

 


2013년 87번

정답 : 3번

1) DNS 라운드 로빈의 경우 하나의 IP가 아니라 분산된 서버 개수 만큼의 공인 IP가 필요함

  로드밸런서의 경우는 로드밸런서 기기에 대한 IP 하나만 필요

 

2) DNS 라운드 로빈은 클라이언트에 DNS 캐싱 정보가 남아 있기 때문에 접속이 균등하게 분산되지 않음

 

4) DNS 라운드 로빈은 웹서버가 정지되어 접속을 처리할 수 없는 상황을 감지할 수 없음

 로드밸런스는 분산 서버에 대한 헬스체크를 항상 수행하기 때문에 일부 웹서버의 정지를 즉시 파악할 수 있음

 


2014년 100번

정답 : 4번

정적서버 부하방식은 액티브-스팬바이 방식임

 


2019년 91번

정답 : 1번

리피터는 1계층 장비임

약화되거나 일부 훼손된 신호를 수신하여 원래 비트 형태로 재생하는 장비임

리피터는 LAN의 물리적인 길이를 확장할 수 있음. 다만 단순히 신호를 증복만 할 수 있고 신호의 변형(잡음 등의 원인으로)은 바로 잡을 수 없음