๐Ÿ“˜ Dev Book

[๋ฉด์ ‘์„ ์œ„ํ•œ CS ์ „๊ณต์ง€์‹ ๋…ธํŠธ] 2.1 ๋„คํŠธ์›Œํฌ์˜ ๊ธฐ์ดˆ

0=2. 2024. 7. 18. 17:18

๋„คํŠธ์›Œํฌ: ๋…ธ๋“œ์™€ ๋งํฌ๊ฐ€ ์„œ๋กœ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์œผ๋ฉฐ ๋ฆฌ์†Œ์Šค๋ฅผ ๊ณต์œ ํ•˜๋Š” ์ง‘ํ•ฉ

๋…ธ๋“œ: ์„œ๋ฒ„, ๋ผ์šฐํ„ฐ, ์Šค์œ„์น˜ ๋“ฑ ๋„คํŠธ์›Œํฌ ์žฅ์น˜
๋งํฌ: ์œ ์„  / ๋ฌด์„ 


1. ์ฒ˜๋ฆฌ๋Ÿ‰๊ณผ ์ง€์—ฐ ์‹œ๊ฐ„

์ฒ˜๋ฆฌ๋Ÿ‰(throughput)

  • ๋งํฌ ๋‚ด์—์„œ ์„ฑ๊ณต์ ์œผ๋กœ ์ „๋‹ฌ๋œ ๋ฐ์ดํ„ฐ์˜ ์–‘. (= ํŠธ๋ž˜ํ”ฝ์„ ์ฒ˜๋ฆฌํ•œ ์–‘)
  • ๋‹จ์œ„: bps(bits per second). ์ดˆ๋‹น ์ „์†ก/์ˆ˜์‹  ๋น„ํŠธ ์ˆ˜
  • ํŠธ๋ž˜ํ”ฝ, ๋Œ€์—ญํญ, ์—๋Ÿฌ, ํ•˜๋“œ์›จ์–ด ์ŠคํŽ™์— ์˜ํ–ฅ ๋ฐ›์Œ

ํŠธ๋ž˜ํ”ฝ: ํŠน์ • ์‹œ์ ์— ๋งํฌ ๋‚ด์— ํ๋ฅด๋Š” ๋ฐ์ดํ„ฐ ์–‘
๋Œ€์—ญํญ: ์ฃผ์–ด์ง„ ์‹œ๊ฐ„๋™์•ˆ ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ์„ ํ†ตํ•ด ํ๋ฅผ ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ๋น„ํŠธ ์ˆ˜

์ง€์—ฐ ์‹œ๊ฐ„(latency)

  • ์š”์ฒญ์ด ์ฒ˜๋ฆฌ๋˜๋Š” ์‹œ๊ฐ„. ๋ฉ”์„ธ์ง€๊ฐ€ ๋‘ ์žฅ์น˜ ์‚ฌ์ด๋ฅผ ์™•๋ณตํ•˜๋Š” ๋ฐ ๊ฑธ๋ฆฐ ์‹œ๊ฐ„
  • ๋งค์ฒด ํƒ€์ž…, ํŒจํ‚ท ํฌ๊ธฐ, ๋ผ์šฐํ„ฐ์˜ ํŒจํ‚ท ์ฒ˜๋ฆฌ ์‹œ๊ฐ„์— ์˜ํ–ฅ ๋ฐ›์Œ

2. ๋„คํŠธ์›Œํฌ ํ† ํด๋กœ์ง€์™€ ๋ณ‘๋ชฉ ํ˜„์ƒ

๋„คํŠธ์›Œํฌ ํ† ํด๋กœ์ง€(network topology)

๋…ธ๋“œ์™€ ๋งํฌ๊ฐ€ ์–ด๋–ป๊ฒŒ ๋ฐฐ์น˜๋˜์–ด ์žˆ๋Š”์ง€์— ๋Œ€ํ•œ ๋ฐฉ์‹·์—ฐ๊ฒฐ ํ˜•ํƒœ

ํŠธ๋ฆฌ ํ† ํด๋กœ์ง€

ํŠธ๋ฆฌ ํ˜•ํƒœ๋กœ ๋ฐฐ์น˜ํ•œ ๋„คํŠธ์›Œํฌ ๊ตฌ์„ฑ

์žฅ์ 

  • ๋…ธ๋“œ ์ถ”๊ฐ€, ์‚ญ์ œ ์‰ฌ์›€

๋‹จ์ 

  • ํŠน์ • ๋…ธ๋“œ์— ํŠธ๋ž˜ํ”ฝ์ด ์ง‘์ค‘๋  ๋•Œ ํ•˜์œ„ ๋…ธ๋“œ์— ์˜ํ–ฅ

๋ฒ„์Šค ํ† ํด๋กœ์ง€

์ค‘์•™ ํ†ต์‹  ํšŒ์„  ํ•˜๋‚˜์— ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋…ธ๋“œ๊ฐ€ ์—ฐ๊ฒฐ๋˜์–ด ๊ณต์œ ํ•˜๋Š” ๋„คํŠธ์›Œํฌ ๊ตฌ์„ฑ
๊ทผ๊ฑฐ๋ฆฌ ํ†ต์‹ ๋ง(LAN)์—์„œ ์‚ฌ์šฉ

์žฅ์ 

  • ์„ค์น˜ ๋น„์šฉ ์ ์Œ
  • ์‹ ๋ขฐ์„ฑ ์šฐ์ˆ˜
  • ์ค‘์•™ ํ†ต์‹  ํšŒ์„ ์— ๋…ธ๋“œ ์ถ”๊ฐ€, ์‚ญ์ œ ์‰ฌ์›€

๋‹จ์ 

  • ์Šคํ‘ธํ•‘ ๊ฐ€๋Šฅ

์Šคํ‘ธํ•‘: LAN์ƒ์—์„œ ์†ก์‹ ๋ถ€์˜ ํŒจํ‚ท์„ ์†ก์‹ ๊ณผ ๊ด€๋ จ ์—†๋Š” ๋‹ค๋ฅธ ํ˜ธ์ŠคํŠธ์— ๊ฐ€์ง€ ์•Š๋„๋ก ํ•˜๋Š” ์Šค์œ„์นญ ๊ธฐ๋Šฅ์„ ๋งˆ๋น„์‹œํ‚ค๊ฑฐ๋‚˜ ์†์—ฌ์„œ ํŠน์ • ๋…ธ๋“œ์— ํ•ด๋‹น ํŒจํ‚ท์ด ์˜ค๋„๋ก ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ

์Šคํƒ€ ํ† ํด๋กœ์ง€

์ค‘์•™์— ์žˆ๋Š” ๋…ธ๋“œ์— ๋ชจ๋‘ ์—ฐ๊ฒฐ๋œ ๋„คํŠธ์›Œํฌ ๊ตฌ์„ฑ

์žฅ์ 

  • ๋…ธ๋“œ ์ถ”๊ฐ€, ์—๋Ÿฌ ํƒ์ง€ ์‰ฌ์›€
  • ํŒจํ‚ท ์ถฉ๋Œ ๊ฐ€๋Šฅ์„ฑ ์ ์Œ
  • ์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ•œ ๋…ธ๋“œ๊ฐ€ ์ค‘์•™ ๋…ธ๋“œ๊ฐ€ ์•„๋‹ ๊ฒฝ์šฐ ๋‹ค๋ฅธ ๋…ธ๋“œ์— ์˜ํ–ฅ์„ ๋ผ์น˜๋Š” ๊ฒƒ์ด ์ ์Œ

๋‹จ์ 

  • ์ค‘์•™ ๋…ธ๋“œ์— ์žฅ์•  ๋ฐœ์ƒ ์‹œ ์ „์ฒด ๋„คํŠธ์›Œํฌ ์‚ฌ์šฉ ๋ถˆ๊ฐ€
  • ์„ค์น˜ ๋น„์šฉ ๊ณ ๊ฐ€

๋งํ˜• ํ† ํด๋กœ์ง€

๊ฐ๊ฐ์˜ ๋…ธ๋“œ๊ฐ€ ์–‘ ์˜†์˜ ๋‘ ๋…ธ๋“œ์™€ ์—ฐ๊ฒฐํ•˜์—ฌ ์ „์ฒด์ ์œผ๋กœ ๊ณ ๋ฆฌ์ฒ˜๋Ÿผ ํ•˜๋‚˜์˜ ์—ฐ์†๋œ ๊ธธ์„ ํ†ตํ•ด ํ†ต์‹ ์„ ํ•˜๋Š” ๋ง ๊ตฌ์„ฑ ๋ฐฉ์‹
๋ฐ์ดํ„ฐ๋Š” ๋…ธ๋“œ์—์„œ ๋…ธ๋“œ๋กœ ์ด๋™ํ•˜๋ฉฐ, ๊ฐ๊ฐ์˜ ๋…ธ๋“œ๋Š” ๊ณ ๋ฆฌ ๋ชจ์–‘์˜ ๊ธธ์„ ํ†ตํ•ด ํŒจํ‚ท์„ ์ฒ˜๋ฆฌ

์žฅ์ 

  • ๋…ธ๋“œ ์ˆ˜๊ฐ€ ์ฆ๊ฐ€๋˜์–ด๋„ ๋„คํŠธ์›Œํฌ ์ƒ์˜ ์†์‹ค์ด ๊ฑฐ์˜ ์—†์Œ
  • ์ถฉ๋Œ ๋ฐœ์ƒ ๊ฐ€๋Šฅ์„ฑ ์ ์Œ
  • ๋…ธ๋“œ์˜ ๊ณ ์žฅ ๋ฐœ๊ฒฌ ์‰ฌ์›€

๋‹จ์ 

  • ๋„คํŠธ์›Œํฌ ๊ตฌ์„ฑ ๋ณ€๊ฒฝ์ด ์–ด๋ ค์›€
  • ํšŒ์„ ์— ์žฅ์•  ๋ฐœ์ƒ ์‹œ ์ „์ฒด ๋„คํŠธ์›Œํฌ์— ์˜ํ–ฅ

๋ฉ”์‹œ(mesh) ํ† ํด๋กœ์ง€

๊ทธ๋ฌผ๋ง์ฒ˜๋Ÿผ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋Š” ๊ตฌ์กฐ

์žฅ์ 

  • ํ•œ ๋‹จ๋ง ์žฅ์น˜์— ์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ•ด๋„ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ฒฝ๋กœ๊ฐ€ ์กด์žฌํ•˜๋ฏ€๋กœ ๋„คํŠธ์›Œํฌ ๊ณ„์† ์‚ฌ์šฉ ๊ฐ€๋Šฅ
  • ํŠธ๋ž˜ํ”ฝ ๋ถ„์‚ฐ์ฒ˜๋ฆฌ ๊ฐ€๋Šฅ

๋‹จ์ 

  • ๋…ธ๋“œ ์ถ”๊ฐ€ ์–ด๋ ค์›€
  • ๊ตฌ์ถ•·์šด์˜ ๋น„์šฉ ๊ณ ๊ฐ€

๋ณ‘๋ชฉ ํ˜„์ƒ

์ „์ฒด ์‹œ์Šคํ…œ์˜ ์„ฑ๋Šฅ์ด๋‚˜ ์šฉ๋Ÿ‰์ด ํ•˜๋‚˜์˜ ๊ตฌ์„ฑ ์š”์†Œ๋กœ ์ธํ•ด ์ œํ•œ์„ ๋ฐ›๋Š” ํ˜„์ƒ

์›์ธ

  • ๋„คํŠธ์›Œํฌ ๋Œ€์—ญํญ
  • ๋„คํŠธ์›Œํฌ ํ† ํด๋กœ์ง€
  • ์„œ๋ฒ„ CPU, ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰
  • ๋น„ํšจ์œจ์ ์ธ ๋„คํŠธ์›Œํฌ ๊ตฌ์„ฑ

3. ๋„คํŠธ์›Œํฌ ๋ถ„๋ฅ˜

LAN(Local Area Network)

  • ๊ทผ๊ฑฐ๋ฆฌ ํ†ต์‹ ๋ง
  • ๊ฐ™์€ ๊ฑด๋ฌผ์ด๋‚˜ ์บ ํผ์Šค๊ฐ™์€ ์ข์€ ๊ณต๊ฐ„์—์„œ ์šด์˜
  • ์ „์†ก ์†๋„๊ฐ€ ๋น ๋ฅด๊ณ  ํ˜ผ์žกํ•˜์ง€ ์•Š์Œ

MAN(Metropolitan Area Network)

  • ๋Œ€๋„์‹œ ์ง€์—ญ ๋„คํŠธ์›Œํฌ
  • ๋„์‹œ๊ฐ™์€ ๋„“์€ ์ง€์—ญ์—์„œ ์šด์˜
  • ์ „์†ก ์†๋„๋Š” ํ‰๊ท . LAN๋ณด๋‹ค ํ˜ผ์žก

WAN(Wide Area Network)

  • ๊ด‘์—ญ ๋„คํŠธ์›Œํฌ
  • ๊ตญ๊ฐ€·๋Œ€๋ฅ™๊ฐ™์€ ๋” ๋„“์€ ์ง€์—ญ์—์„œ ์šด์˜
  • ์ „์†ก ์†๋„ ๋‚ฎ์Œ. MAN๋ณด๋‹ค ํ˜ผ์žก

4. ๋„คํŠธ์›Œํฌ ์„ฑ๋Šฅ ๋ถ„์„ ๋ช…๋ น์–ด

ping(Packet INternet Groper)

  • ๋„คํŠธ์›Œํฌ ์ƒํƒœ๋ฅผ ํ™•์ธํ•˜๋ ค๋Š” ๋Œ€์ƒ ๋…ธ๋“œ๋ฅผ ํ–ฅํ•ด ์ผ์ • ํฌ๊ธฐ์˜ ํŒจํ‚ท์„ ์ „์†กํ•˜๋Š” ๋ช…๋ น์–ด
  • ํ•ด๋‹น ๋…ธ๋“œ์˜ ํŒจํ‚ท ์ˆ˜์‹  ์ƒํƒœ์™€ ๋„๋‹ฌํ•˜๊ธฐ๊นŒ์ง€ ์‹œ๊ฐ„ ๋“ฑ์„ ์•Œ ์ˆ˜ ์žˆ์Œ
  • ํ•ด๋‹น ๋…ธ๋“œ๊นŒ์ง€ ๋„คํŠธ์›Œํฌ๊ฐ€ ์ž˜ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธ
  • TCP/IP ํ”„๋กœํ† ์ฝœ ์ค‘ ICMP ํ”„๋กœํ† ์ฝœ์„ ํ†ตํ•ด ๋™์ž‘. ICMP ํ”„๋กœํ† ์ฝœ์„ ์ง€์›ํ•˜์ง€ ์•Š๋Š” ๊ธฐ๊ธฐ๋ฅผ ๋Œ€์ƒ์œผ๋กœ๋Š” ์‹คํ–‰ํ•  ์ˆ˜ ์—†๊ฑฐ๋‚˜ ๋„คํŠธ์›Œํฌ ์ •์ฑ…์ƒ ICMP๋‚˜ traceroute๋ฅผ ์ฐจ๋‹จํ•˜๋Š” ๋Œ€์ƒ์˜ ๊ฒฝ์šฐ ํ…Œ์ŠคํŒ… ๋ถˆ๊ฐ€
  • ping[IP ์ฃผ์†Œ ๋˜๋Š” ๋„๋ฉ”์ธ ์ฃผ์†Œ]๋กœ ์‹คํ–‰

netstat

  • ์ ‘์†๋˜์–ด ์žˆ๋Š” ์„œ๋น„์Šค๋“ค์˜ ๋„คํŠธ์›Œํฌ ์ƒํƒœ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ
  • ๋„คํŠธ์›Œํฌ ์ ‘์†, ๋ผ์šฐํŒ… ํ…Œ์ด๋ธ”, ๋„คํŠธ์›Œํฌ ํ”„๋กœํ† ์ฝœ ๋“ฑ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ณด์—ฌ์คŒ
  • ์ฃผ๋กœ ์„œ๋น„์Šค์˜ ํฌํŠธ๊ฐ€ ์—ด๋ ค ์žˆ๋Š”์ง€ ํ™•์ธํ•  ๋•Œ ์”€

nslookup

  • DNS์— ๊ด€๋ จ๋œ ๋‚ด์šฉ์„ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ์“ฐ๋Š” ๋ช…๋ น์–ด
  • ํŠน์ • ๋„๋ฉ”์ธ์— ๋งคํ•‘๋œ IP๋ฅผ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ

tracert

  • ์œˆ๋„์šฐ: tracert / ๋ฆฌ๋ˆ…์Šค: traceroute
  • ๋ชฉ์ ์ง€ ๋…ธ๋“œ๊นŒ์ง€ ๋„คํŠธ์›Œํฌ ๊ฒฝ๋กœ๋ฅผ ํ™•์ธํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๋ช…๋ น์–ด
  • ๋ชฉ์ ์ง€ ๋…ธ๋“œ๊นŒ์ง€ ๊ตฌ๊ฐ„๋“ค ์ค‘ ์–ด๋Š ๊ตฌ๊ฐ„์—์„œ ์‘๋‹ต ์‹œ๊ฐ„์ด ๋Š๋ ค์ง€๋Š”์ง€ ๋“ฑ์„ ํ™•์ธ

๊ทธ ์™ธ

  • ftp๋ฅผ ํ†ตํ•ด ๋Œ€ํ˜• ํŒŒ์ผ์„ ์ „์†กํ•˜์—ฌ ํ…Œ์ŠคํŒ…
  • tcpdump๋ฅผ ํ†ตํ•ด ๋…ธ๋“œ๋กœ ์˜ค๊ณ  ๊ฐ€๋Š” ํŒจํ‚ท์„ ์บก์ฒ˜
  • wireshark, netmon ๋“ฑ ๋„คํŠธ์›Œํฌ ๋ถ„์„ ํ”„๋กœ๊ทธ๋žจ

5. ๋„คํŠธ์›Œํฌ ํ”„๋กœํ† ์ฝœ ํ‘œ์ค€ํ™”

๋„คํŠธ์›Œํฌ ํ”„๋กœํ† ์ฝœ: ๋‹ค๋ฅธ ์žฅ์น˜๋“ค๋ผ๋ฆฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›๊ธฐ ์œ„ํ•ด ์„ค์ •๋œ ๊ณตํ†ต๋œ ์ธํ„ฐํŽ˜์ด์Šค
IEEE802.3: ์œ ์„  LAN ํ”„๋กœํ† ์ฝœ. ์œ ์„ ์œผ๋กœ LAN์„ ๊ตฌ์ถ•ํ•  ๋•Œ ์“ฐ์ด๋Š” ํ”„๋กœํ† ์ฝœ. ๋งŒ๋“  ๊ธฐ์—…์ด ๋‹ค๋ฅธ ์žฅ์น˜๋ผ๋„ ์„œ๋กœ ๋ฐ์ดํ„ฐ ์ˆ˜์‹  ๊ฐ€๋Šฅ.
HTTP ํ”„๋กœํ† ์ฝœ: ๋…ธ๋“œ๋“ค์ด ์›น ์„œ๋น„์Šค๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›์„ ์ˆ˜ ์žˆ์Œ.