L4/L7

1

NHN Cloud ์ธํ„ด

๋ชฉ๋ก ๋ณด๊ธฐ
35/48

MyMon ํšŒ์˜์—์„œ,,

๊ถ๊ธˆ์ฆ ๐Ÿ’ก
L4 ๋ผ๋Š” ๊ฐœ๋… ๋“ฑ์žฅ! ํšŒ์‚ฌํ”„๋กœ์ ํŠธ ์›น์„œ๋ฒ„ 2๋Œ€์˜ ip๋ฅผ ๋ฌถ๋Š”๋‹ค. L4? ip๋ฅผ ๋ฌถ๋Š”๋‹ค? ๋ญ์ง€? ์ด์ „์— L7 health check์— ๋Œ€ํ•œ ๋‚ด์šฉ์„ ์งง๊ฒŒ ์ •๋ฆฌํ•œ ๊ฒŒ์‹œ๋ฌผ์ด ์žˆ์—ˆ๋Š”๋ฐ, ๊ทธ๊ฒƒ๊ณผ ๊ด€๋ จ๋œ ๋‚ด์šฉ์ธ๊ฐ€?
์ด์ „์— L7 ์— ๋Œ€ํ•œ ๊ฐœ๋…์„ ์งง๊ฒŒ ์ •๋ฆฌํ•œ ๊ฒŒ์‹œ๋ฌผ

  • L4์™€ L7 ๋ชจ๋‘ ๋„คํŠธ์›Œํฌ ์Šค์œ„์น˜. ๋กœ๋“œ๋ฐธ๋Ÿฐ์‹ฑ์ด ๋œ๋‹ค๋Š” ์žฅ์  -> ์„œ๋ฒ„ ๋ถ€ํ•˜ ๋ถ„์‚ฐ์„ ์œ„ํ•ด ๋งŽ์ด ์ด์šฉํ•œ๋‹ค๊ณ  ํ•œ๋‹ค.
  • L4์™€ L7๋Š” ๊ทธ ์ค‘ ๋„คํŠธ์›Œํฌ ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ์— ํฌํ•จ๋œ๋‹ค.
  • ๋กœ๋“œ๋ฐธ๋Ÿฐ์‹ฑ์ด๋ž€?,,๋ถ€ํ•˜๋ถ„์‚ฐ ๋˜๋Š” ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ(load balancing)์€ ์ปดํ“จํ„ฐ ๋„คํŠธ์›Œํฌ ๊ธฐ์ˆ ์˜ ์ผ์ข…์œผ๋กœ ๋‘˜ ํ˜น์€ ์…‹์ด์ƒ์˜ ์ค‘์•™์ฒ˜๋ฆฌ์žฅ์น˜ ํ˜น์€ ์ €์žฅ์žฅ์น˜์™€ ๊ฐ™์€ ์ปดํ“จํ„ฐ ์ž์›๋“ค์—๊ฒŒ ์ž‘์—…์„ ๋‚˜๋ˆ„๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค.



๋จผ์ € ๋„คํŠธ์›Œํฌ ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ ์ข…๋ฅ˜์— ๋Œ€ํ•ด ์•Œ์•„๋ด…์‹œ๋‹ค.

๋„คํŠธ์›Œํฌ ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ ์ข…๋ฅ˜

L2(Data Link Layer)

  • Mac Address Load Balancing
  • ์˜ˆ์‹œ : Mac > 80โ€“00โ€“20โ€“30โ€“1C-47
  • ๋ธŒ๋ฆฟ์ง€, ํ—ˆ๋ธŒ ๋“ฑ
  • ์žฅ์  : ๊ตฌ์กฐ๊ฐ€ ๊ฐ„๋‹จ, ์‹ ๋ขฐ์„ฑ์ด ๋†’๋‹ค, ๊ฐ€๊ฒฉ์ €๋ ด, ์„ฑ๋Šฅ์ด ์ข‹๋‹ค.
  • ๋‹จ์  : Broadcast ํŒจํ‚ท์— ์˜ํ•ด ์„ฑ๋Šฅ์ €ํ•˜ ๋ฐœ์ƒ, ๋ผ์šฐํŒ… ๋“ฑ ์ƒ์œ„๋ ˆ์ด์–ด ํ”„๋กœํ† ์ฝœ ๊ธฐ๋ฐ˜ ์Šค์œ„์นญ ๋ถˆ๊ฐ€

L3(Network Layer)

  • IP Address Load Balancing
  • ์˜ˆ์‹œ : IP > 213.12.32.123
  • L2 + Routing
  • Router, ICMP ํ”„๋กœํ† ์ฝœ, IP
  • ์žฅ์ : Broadcast ํŠธ๋ž˜ํ”ฝ์œผ๋กœ ์ „์ฒด ์„ฑ๋Šฅ ์ €ํ•˜ ๋ฐฉ์ง€, ํŠธ๋ ˆํ”ฝ์ฒดํฌ
  • ๋‹จ์ : ํŠน์ • ํ”„๋กœํ† ์ฝœ์„ ์ด์šฉํ•ด์•ผ ์Šค์œ„์นญ ๊ฐ€๋Šฅ

L4(Transport Layer)

  • Transport Layer(IP+Port) Load Balancing
  • ์˜ˆ์‹œ: IP+Port > 213.12.32.123:80, 213.12.32.123:1024
  • TCP, UDP Protocol
  • ์žฅ์  : Port๊ธฐ๋ฐ˜ ์Šค์œ„์นญ ์ง€์›, VIP๋ฅผ ์ด์šฉํ•˜์—ฌ ์—ฌ๋Ÿฌ๋Œ€๋ฅผ ํ•œ๋Œ€๋กœ ๋ฌถ์–ด ๋ถ€ํ•˜๋ถ„์‚ฐ
  • ์ฃผ๋กœ Round Robin ๋ฐฉ์‹ ์‚ฌ์šฉ

L7(Application Layer)

  • Application Layer(์‚ฌ์šฉ์ž Request) Load Balancing
  • ์˜ˆ์‹œ : IP+Port+ํŒจํ‚ท ๋‚ด์šฉ >
    213.12.32.123:80, 213.12.32.123:1024 + GET/ img/aaa.jpg
  • HTTP, FTP, SMTP Protocol

์ฃผ์˜ : ๋กœ๋“œ๋ฐธ๋Ÿฐ์‹ฑ์€ L4 ์ด์ƒ์—์„œ



L4 ์— ๋Œ€ํ•œ ์„ค๋ช…

ip๋ฅผ ๋ฌถ์–ด์„œ ipํ•˜๋‚˜๋งŒ ์‚ฌ์šฉํ•ด์„œ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•จ
-> ์„œ๋ฒ„ ๋ถ€ํ•˜ ๋ถ„์‚ฐ ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Œ
-> ip ์ˆ˜๋™ ์—ฐ๊ฒฐ ์‹œ ์„œ๋ฒ„๊ฐ€ ์ฃฝ์—ˆ์„ ๋•Œ, ์„œ๋น„์Šค๋ฅผ ๋‹ค์‹œ ์“ธ ์ˆ˜ ์žˆ์Œ
-> ip ๋ฅผ ์ฒดํฌํ•ด์„œ ์›ํ•˜๋Š” ํ๋ฆ„์œผ๋กœ ๋ณด๋‚ด์ค„ ์ˆ˜ ์žˆ์Œ
-> ๋„๋ฉ”์ธ ๋ถ™์—ฌ์„œ ๋„๋ฉ”์ธ์œผ๋กœ ์ ‘๊ทผ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•จ

L4 ๊ฐ€ ํ•„์š”ํ•œ ์ƒํ™ฉ

์˜ˆ์‹œ๋ฅผ ๋“ค์–ด๋ณด์ž๋ฉด, ํŠน์ • ip๋กœ ์›น์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด๋ด…์‹œ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ๋Š˜์–ด๋‚˜์„œ ์„œ๋ฒ„๋ฅผ ํ•œ ๋Œ€ ๋” ์ถ”๊ฐ€ํ•˜๊ณ  ์„œ๋น„์Šค์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ip ํ•˜๋‚˜๋ฅผ ๋” ์ถ”๊ฐ€ํ–ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ด๋ด…์‹œ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด, ์‚ฌ์šฉ์ž๋“ค์—๊ฒŒ 2๊ฐœ์˜ ip ์ค‘ ํ•˜๋‚˜๋กœ ์ ‘๊ทผํ•ด๋‹ฌ๋ผ๊ณ  ๊ณต์ง€๋ฅผ ๋„์šธ ๊ฒƒ์ด๊ณ , ์ด๋Š” ๋ถ€ํ•˜๊ฐ€ ์–ด๋Š ์ •๋„ ๋‚˜๋ˆ„์–ด์ง„๋‹ค๊ณ  ํ•ด๋„ ๊ณ ๋ฅด๊ฒŒ ๋ถ„์‚ฐ๋˜๋Š” ๊ฒƒ์„ ์žฅ๋‹ดํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํ•„์š”ํ•œ ๊ฒƒ์ด '๋กœ๋“œ๋ฐธ๋Ÿฐ์‹ฑ'
์ผ์ผ์ด ์„œ๋ฒ„์—๊ฒŒ ์š”์ฒญ์„ ์ „๋‹ฌํ•  ํ•„์š” ์—†์ด L4 ์Šค์œ„์น˜์— ๋ชจ๋“  ์š”์ฒญ ์ „๋‹ฌํ•˜๊ณ  L4 ์Šค์œ„์น˜๊ฐ€ ์„œ๋ฒ„๋“ค์—๊ฒŒ ์š”์ฒญ ๊ทธ๋Œ€๋กœ ์ „๋‹ฌ

L4 ์Šค์œ„์น˜์— ๋Œ€ํ•ด ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์šด ๋ธ”๋กœ๊ทธ ๋งํฌ

L7 ์— ๋Œ€ํ•œ ์„ค๋ช…

์‘์šฉ๊ณ„์ธต ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ
ํŒจํ‚ท์„ ๋‹ค ๊นŒ์„œ ์‘์šฉํ”„๋กœ๊ทธ๋žจ๊นŒ์ง€ ์ปจํŠธ๋กค ํ•  ์ˆ˜ ์žˆ์Œ

L4 vs L7

  1. ๊ตฌ์กฐ์  ์ฐจ์ด์  - Intellingence
  • L4์Šค์œ„์น˜ : TCP/UDP ํฌํŠธ ์ •๋ณด๋ฅผ ๋ถ„์„ํ•ด ํ•ด๋‹น ํŒจํ‚ท์ด ํ˜„์žฌ ์‚ฌ์šฉํ•˜๋Š” ์„œ๋น„์Šค ์ข…๋ฅ˜(HTTP, FTP, ํ…”๋„ท, SMTP, POP3, SSL๋“ฑ)๋ณ„๋กœ PACKET์„ ์ฒ˜๋ฆฌ

  • L7์Šค์œ„์น˜ : ํŠธ๋ž˜ํ”ฝ์˜ ๋‚ด์šฉ(e-mail์ œ๋ชฉ/๋‚ด์šฉ์˜ ๋ฌธ์ž์—ด, HTTP์ปจํ…์ธ URL, FTPํŒŒ์ผ ์ œ๋ชฉ, SSL ID, Cookie ์ •๋ณด, ํŠน์ • ๋ฐ”์ด๋Ÿฌ์Šค(e.g. CodeRed, Nimda)ํŒจํ„ด๋“ฑ์„ ๋ถ„์„ํ•ด Packet์„ ์ฒ˜๋ฆฌ

  1. ๊ธฐ๋Šฅ์  ์ฐจ์ด์ 
  • ๋ณด๋‹ค ๋†’์€ ์ˆ˜์ค€์˜ Intelligence๋ฅผ ๊ฐ–์ถ˜ ์Šค์œ„์น˜์ผ์ˆ˜๋ก ๋” ์ •๊ตํ•œ ํŒจํ‚ท์˜ ๋ถ€ํ•˜๋ถ„์‚ฐ(Load Ballancing)๋ฐ Qos๊ธฐ๋Šฅ ๊ตฌํ˜„์ด ๊ฐ€๋Šฅํ•จ.
  • L7์Šค์œ„์น˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๋„คํŠธ์›Œํฌ ์‹œ์Šคํ…œ์˜ ๋ณด์•ˆ์„ฑ ๊ฐ•ํ™”๊ฐ€ ๊ฐ€๋Šฅํ•จ.
    1) Dos/SYN Attack์— ๋Œ€ํ•œ ๋ฐฉ์–ด
    2) CodeRed/Nimda๋“ฑ ๋ฐ”์ด๋Ÿฌ์Šค ๊ฐ์—ผ ํŒจํ‚ท์˜ ํ•„ํ„ฐ๋ง
    3) ๋„คํŠธ์›Œํฌ ์ž์›์˜ ๋…์  ๋ฐฉ์ง€๋ฅผ ํ†ตํ•œ ๋„คํŠธ์›Œํฌ ์‹œ์Šคํ…œ์˜ ๋ณด์•ˆ์„ฑ ๊ฐ•ํ™”๊ฐ€ ๊ฐ€๋Šฅํ•จ.
  1. ๊ณตํ†ต์ 
  • ์Šค์œ„์น˜๋กœ ๋“ค์–ด์˜จ Packet์„ ์ ์ ˆํ•œ ๋ชฉ์ ์ง€(์ฃผ๋กœ ๋„คํŠธ์›Œํฌ ์žฅ๋น„๋‚˜ ํด๋ผ์ด์–ธํŠธ, ๋•Œ๋กœ๋Š” ๋ถˆํ•„์š”ํ•œ Packet์„ Drop์‹œํ‚ค๊ธฐ๋„ ํ•จ)๋กœ ์ „์†กํ•ด์คŒ. ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋Šฅ๊ณผ ์—ญํ• ์€ ๋™์ผํ•˜๋‚˜ Packet์„ ๋ถ„์„ํ•ด ์„ฑ๊ฒฉ๊ณผ ์ค‘์š”๋„๋ฅผ ๋ถ„๋ฅ˜ํ•˜๋Š” Intelligence๊ฐ€ ๋‹ฌ๋ผ์„œ "์ ์ ˆํ•œ ๋ชฉ์ ์ง€"๋ฅผ ์ฐพ์•„๋‚ด ํ•ด๋‹น Packet์„ ์ฒ˜๋ฆฌํ•ด ์ฃผ๋Š” ๋Šฅ๋ ฅ์— ์ฐจ์ด๊ฐ€ ๋ฐœ์ƒํ•จ.

์ •๋ฆฌํ•˜์ž๋ฉด,
L4 Load Balancer๋Š” IP, Port ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์Šค์ผ€์ค„๋ง ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ†ตํ•ด ๋ถ€ํ•˜๋ฅผ ๋ถ„์‚ฐํ•ฉ๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ์—์„œ ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ(DNS)๋กœ ์š”์ฒญ์„ ๋ณด๋ƒˆ์„ ๋•Œ ์ตœ์ ์˜ ์„œ๋ฒ„๋กœ ์š”์ฒญ์„ ์ „์†กํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ค๋‹ˆ๋‹ค. ์ฆ‰, ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค์˜ ์ข…๋ฅ˜์™€ ์ƒ๊ด€ ์—†์ด ๊ณต์žฅ์„ ์—ฌ๋Ÿฌ ๊ฐœ ๋Œ๋ฆฌ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
L7 Load Balancer๋Š” L7 ์œ„์—์„œ ๋™์ž‘ํ•˜๊ธฐ ๋•Œ๋ฌธ์— IP, Port ์ด์™ธ์—๋„ URI, Payload, Http Header, Cookie ๋“ฑ์˜ ๋‚ด์šฉ์„ ๊ธฐ์ค€์œผ๋กœ ๋ถ€ํ•˜๋ฅผ ๋ถ„์‚ฐํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ฝ˜ํ…์ธ  ๊ธฐ๋ฐ˜ ์Šค์œ„์นญ์ด๋ผ๊ณ ๋„ ํ•ฉ๋‹ˆ๋‹ค.

L4 Load Balancer๋Š” ๋‹จ์ง€ ๋ถ€ํ•˜๋ฅผ ๋ถ„์‚ฐ์‹œํ‚ค๋Š” ๊ฒƒ์ด๋ผ๋ฉด, L7 Load Balancer๋Š” ์š”์ฒญ์˜ ์„ธ๋ถ€์ ์ธ ์‚ฌํ•ญ์„ ๋‘๊ณ  ๊ฒฐ์ œ๋งŒ ๋‹ด๋‹นํ•˜๋Š” ์„œ๋ฒ„, ํšŒ์›๊ฐ€์ž…๋งŒ์„ ๋‹ด๋‹นํ•˜๋Š” ์„œ๋ฒ„ ๋“ฑ์œผ๋กœ ๋ถ„๋ฆฌํ•ด์„œ ๊ฐ€๋ณ๊ณ  ์ž‘์€ ๋‹จ์œ„๋กœ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์„œ๋น„์Šค๋ฅผ ์šด์˜ํ•˜๊ณ  ์š”์ฒญ์„ ๊ฐ๊ฐ์˜ ์„œ๋ฒ„์— ๋ถ„์‚ฐํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
L7 Load Balancer๋Š” L4 Load Balancer์™€ ๋‹ค๋ฅด๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์„ํ•ด์„œ ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์•…์˜์ ์ด๊ฑฐ๋‚˜ ๋น„ ์ •์ƒ์ ์ธ ์ฝ˜ํ…์ธ ๋ฅผ ๊ฐ์ง€ํ•ด ๋ณด์•ˆ ์ง€์ ์„ ๊ตฌ์ถ•ํ•  ์ˆ˜๋„ ์žˆ๋Š” ์žฅ์ ์ด ์žˆ๊ณ , ๊ทธ ๋งŒํผ ์ž์› ์†Œ๋ชจ๊ฐ€ ํฌ๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.



๊ทธ๋ ‡๋‹ค๋ฉด Health Check ๊ฐœ๋…์€ ๋ญ”๊ฐ€์š”?

Active ์žฅ๋น„์— ์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ•˜์˜€์„ ๋•Œ ์‹ ์†ํ•˜๊ฒŒ ๊ต์ฒดํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋น ๋ฅธ ์žฅ์•  ํƒ์ง€๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋•Œ ํ•„์š”ํ•œ ๊ฒƒ์ด ๋ฐ”๋กœ 'Health Check'์ž…๋‹ˆ๋‹ค. Health Check๋Š” ์„œ๋ฒ„์— ์ผ์ •ํ•œ ๊ฐ„๊ฒฉ์œผ๋กœ ์‹ ํ˜ธ๋ฅผ ๋ณด๋‚ด๊ณ  ์‘๋‹ต์ด ์˜ค๋Š”์ง€ ์ฒดํฌํ•˜์—ฌ ์ •์ƒ ๊ฐ€๋™ ์ค‘์ธ์ง€๋ฅผ ํŒ๋‹จํ•ฉ๋‹ˆ๋‹ค. Health Check ์ข…๋ฅ˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์œผ๋ฉฐ ๋ ˆ์ด์–ด๊ฐ€ ๋†’์„์ˆ˜๋ก ์ •ํ™•๋„๋Š” ๋†’์•„์ง€์ง€๋งŒ ์„œ๋ฒ„์— ๋Œ€ํ•œ ๋ถ€ํ•˜๋„ ์ปค์ง‘๋‹ˆ๋‹ค.
L4, L7 ๋ชจ๋‘ Health Check์˜ ๊ธฐ๋Šฅ์„ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ




์ฐธ๊ณ  ๋งํฌ

profile
์—ด์‹ฌํžˆ ๊ตฝ๊ณ  ์žˆ์–ด์š”๐Ÿž

1๊ฐœ์˜ ๋Œ“๊ธ€

L4 Load Balancer๋Š” ๋‹จ์ง€ ๋ถ€ํ•˜๋ฅผ ๋ถ„์‚ฐ์‹œํ‚ค๋Š” ๊ฒƒ์ด๋ผ๋ฉด, L7 Load Balancer๋Š” ์š”์ฒญ์˜ ์„ธ๋ถ€์ ์ธ ์‚ฌํ•ญ์„ ๋‘๊ณ  ๊ฒฐ์ œ๋งŒ ๋‹ด๋‹นํ•˜๋Š” ์„œ๋ฒ„, ํšŒ์›๊ฐ€์ž…๋งŒ์„ ๋‹ด๋‹นํ•˜๋Š” ์„œ๋ฒ„ ๋“ฑ์œผ๋กœ ๋ถ„๋ฆฌํ•ด์„œ ๊ฐ€๋ณ๊ณ  ์ž‘์€ ๋‹จ์œ„๋กœ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์„œ๋น„์Šค๋ฅผ ์šด์˜ํ•˜๊ณ  ์š”์ฒญ์„ ๊ฐ๊ฐ์˜ ์„œ๋ฒ„์— ๋ถ„์‚ฐํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค

๋‹ต๊ธ€ ๋‹ฌ๊ธฐ