์ „์ฒด ๊ธ€ 181

[network] ํ˜ผ์ž ๊ณต๋ถ€ํ•˜๋Š” ๋„คํŠธ์›Œํฌ 4-3 ECN: ๋ช…์‹œ์  ํ˜ผ์žก ์•Œ๋ฆผ

ECN(Explicit Congestion Notification): ๋ช…์‹œ์  ํ˜ผ์žก ์•Œ๋ฆผ์ค‘๊ฐ„ ๋…ธ๋“œ์˜ ๋„์›€์œผ๋กœ ํ˜ผ์žก์„ ์ œ์–ดTCP์˜ ํ˜ผ์žก ์ œ์–ด - ์˜ค๋กœ์ง€ ์†ก์‹  ํ˜ธ์ŠคํŠธ์˜ ๋ชซ; ํ˜ผ์žก ๊ฐ์ง€, ํ˜ผ์žก ์œˆ๋„์šฐ ๊ณ„์‚ฐ, ์žฌ์ „์†ก๊ทธ์— ๋ฐ˜ํ•ด ECN์€ ํ˜ผ์žก์„ ํšŒํ”ผํ•˜๊ธฐ ์œ„ํ•ด ๋„คํŠธ์›Œํฌ ์ค‘๊ฐ„ ์žฅ์น˜(์ฃผ๋กœ ๋ผ์šฐํ„ฐ)์˜ ๋„์›€์„ ๋ฐ›๋Š”๋‹ค์˜ค๋Š˜๋‚ ์˜ ๋„คํŠธ์›Œํฌ ํ™˜๊ฒฝ์—์„œ ์ ๊ทน์ ์œผ๋กœ ํ™œ์šฉ๋จ ์™ผ์ชฝ์€ IPv4 ํ—ค๋”, ์˜ค๋ฅธ์ชฝ์€ TCP ํ—ค๋”์˜ ๋ชจ์Šต์ด๋‹ค. ์—ฌ๊ธฐ์„œ ์™ผ์ชฝ ํ—ค๋”์˜ ์„œ๋น„์Šค ์œ ํ˜•์— ์žˆ๋Š” ๋‘ ๊ฐœ์˜ ECN ๋น„ํŠธ๊ฐ€ '11'๋กœ ์„ค์ •๋œ ์ฑ„ ์ˆ˜์‹ ์ง€ ํ˜ธ์ŠคํŠธ๋กœ ์ „๋‹ฌ๋˜๋ฉด ์ˆ˜์‹ ์ง€ ์ชฝ์—์„œ๋Š” ์ค‘๊ฐ„์—์„œ ๋ผ์šฐํ„ฐ๊ฐ€ ํ˜ผ์žก์„ ๊ฐ์ง€ํ–ˆ์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋Ÿฐ ํ›„ ์ˆ˜์‹ ์ง€ ์ชฝ์—์„œ ๋‹ค์‹œ ์†ก์‹ ์ง€ ์ชฝ์œผ๋กœ TCP ์„ธ๊ทธ๋จผํŠธ์˜ ECE(ECN-Echo) ํ”Œ๋ž˜๊ทธ์— 1์„ ์„ธํŒ…ํ•˜์—ฌ ๋ณด๋‚ธ๋‹ค. ์ด๊ฒƒ์€ ์ˆ˜์‹ ..

network 2025.01.06

[network] ํ˜ผ์ž ๊ณต๋ถ€ํ•˜๋Š” ๋„คํŠธ์›Œํฌ 04-3 TCP์˜ ์˜ค๋ฅ˜, ํ๋ฆ„, ํ˜ผ์žก ์ œ์–ด

์ „์†ก ๊ณ„์ธต์˜ TCP ํ”„๋กœํ† ์ฝœ์˜ ํ•ต์‹ฌ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. TCP์˜ ๊ธฐ๋Šฅ์žฌ์ „์†ก์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‹ค์–‘ํ•œ ์˜ค๋ฅ˜๋ฅผ ์ œ์–ดํ๋ฆ„ ์ œ์–ด๋ฅผ ํ†ตํ•ด ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์„ ๋งŒํผ์˜ ๋ฐ์ดํ„ฐ ์†ก์ˆ˜์‹ ํ˜ผ์žก ์ œ์–ด๋ฅผ ํ†ตํ•ด ๋„คํŠธ์›Œํฌ๊ฐ€ ํ˜ผ์žกํ•œ ์ •๋„์— ๋”ฐ๋ผ ์ „์†ก๋Ÿ‰ ์กฐโ‘  ์˜ค๋ฅ˜ ์ œ์–ด'์ „์†ก ๊ณ„์ธต์˜ TCP, UDP ์„ธ๊ทธ๋จผํŠธ์—๋Š” ์ฒดํฌ์„ฌ ํ•„๋“œ๊ฐ€ ์žˆ๋Š”๋ฐ ์ด๊ฒƒ๋งŒ์œผ๋กœ ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์„๊นŒ?' ๋ผ๋Š” ์งˆ๋ฌธ์— '๊ทธ๋ ‡์ง€ ์•Š๋‹ค'๋กœ ๋‹ตํ•  ์ˆ˜ ์žˆ๋‹ค. ์ฒดํฌ์„ฌ ํ•„๋“œ๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ํ›ผ์†๋˜์—ˆ๋Š”์ง€์˜ ์—ฌ๋ถ€๋งŒ ๋‚˜ํƒ€๋‚ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ํŒจํ‚ท์ด ์œ ์‹ค๋˜์—ˆ๊ฑฐ๋‚˜, ๋˜๋Š” ์ž˜๋ชป ์ „์†ก๋˜์—ˆ๊ฑฐ๋‚˜, ์ˆœ์„œ์— ์–ด๊ธ‹๋‚˜๊ฒŒ ์ „์†ก๋˜๋Š” ๊ฒƒ์€ ์ฒดํฌ์„ฌ ํ•„๋“œ๋งŒ์œผ๋กœ ์˜ค๋ฅ˜๋ฅผ ๊ฒ€์ถœํ•˜๊ธฐ ์–ด๋ ต๋‹ค. ๊ทธ๋Ÿฌ๋ฉด TCP๋Š” ์–ธ์ œ ์˜ค๋ฅ˜๊ฐ€ ๋‚œ ๊ฒƒ์„ ์•Œ์•„์ฑ„๊ณ  ์žฌ์ „์†กํ• ๊นŒ?์ค‘๋ณต๋œ ACK ์„ธ๊ทธ๋จผํŠธ๋ฅผ ์ˆ˜์‹ ํ–ˆ์„ ๋•Œํƒ€์ž„์•„์›ƒ์ด ๋ฐœ์ƒํ–ˆ์„ ๋•Œ (์ด๊ฒŒ ๋” ๋‚˜์˜๋‹ค) ์ด๋ ‡๊ฒŒ ์˜ค๋ฅ˜๊ฐ€ ๊ฒ€์ถœ๋˜๋ฉด T..

network 2025.01.06

[network] ํ˜ผ์ž ๊ณต๋ถ€ํ•˜๋Š” ๋„คํŠธ์›Œํฌ 04-2 TCP์™€ UDP

๊ฐ•์˜๋Š” ๋ช‡ ๋ฒˆ ๋“ค์—ˆ์ง€๋งŒ ์ „์ฒ˜๋Ÿผ ๊ธฐ๋ก์„ ์—ด์‹ฌํžˆ ํ•ด ๋‘์ง€๋Š” ์•Š์•„์„œ ๋ช‡ ๊ฐœ์›”์ด ์ง€๋‚œ ํ›„์— ๋‹ค์‹œ ์“ด๋‹ค. (250414) TCP ํ†ต์‹  ๋‹จ๊ณ„TCP๋Š” ํ†ต์‹ (๋ฐ์ดํ„ฐ ์†ก์ˆ˜์‹ )ํ•˜๊ธฐ ์ „์— ์—ฐ๊ฒฐ์„ ์ˆ˜๋ฆฝํ•˜๊ณ  ํ†ต์‹ ์ด ๋๋‚˜๋ฉด ์—ฐ๊ฒฐ์„ ์ข…๋ฃŒํ•œ๋‹คMSS (Maximum Segment Size) ๋‹จ์œ„MSS - TCP๋กœ ์ „์†กํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ํŽ˜์ด๋กœ๋“œ ํฌ๊ธฐTCP ํ—ค๋” ํฌ๊ธฐ๋Š” ์ œ์™ธ (MTU๋Š” ํ—ค๋”์˜ ํฌ๊ธฐ๊นŒ์ง€ ํฌํ•จ)TCP ์„ธ๊ทธ๋จผํŠธ ๊ตฌ์กฐ์†ก์‹ ์ง€ ํฌํŠธ, ์ˆ˜์‹ ์ง€ ํฌํŠธ์ˆœ์„œ ๋ฒˆํ˜ธํ™•์ธ ์‘๋‹ต ๋ฒˆํ˜ธ์ œ์–ด ๋น„ํŠธ - ACK, SYN, FIN์œˆ๋„์šฐโ‘  ์†ก์‹ ์ง€ ํฌํŠธ, ์ˆ˜์‹ ์ง€ ํฌํŠธ์†ก์ˆ˜์‹ ํ•˜๋Š” ํฌํŠธ ๋ฒˆํ˜ธโ‘ก ์ˆœ์„œ ๋ฒˆํ˜ธ (sequence number)์ˆœ์„œ ๋ฒˆํ˜ธ๊ฐ€ ๋ช…์‹œ๋˜๋Š” ํ•„๋“œ์ˆœ์„œ ๋ฒˆํ˜ธ = ์ดˆ๊ธฐ ์ˆœ์„œ ๋ฒˆํ˜ธ + ์†ก์‹ ํ•œ ๋ฐ”์ดํŠธ ์ˆ˜์†ก์ˆ˜์‹ ๋˜๋Š” ์„ธ๊ทธ๋จผํŠธ ๋ฐ์ดํ„ฐ์˜ ์ฒซ ๋ฐ”์ดํŠธ์— ๋ถ€์—ฌ๋˜๋Š” ๋ฒˆํ˜ธ์„ธ๊ทธ..

network 2025.01.06

[JAVA] ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ์ดํ•ด - 2

ํด๋ž˜์Šค์˜ ๊ด€๊ณ„๋Š” ํฌ๊ฒŒ ์ƒ์†๊ณผ ํฌํ•จ ๊ด€๊ณ„๊ฐ€ ์žˆ๋‹ค. ์ƒ์†์€ ๊ธฐ์กด์˜ ํด๋ž˜์Šค๋กœ ์ƒˆ๋กœ์šด ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์ฝ”๋“œ๋ฅผ ์žฌ์‚ฌ์šฉํ•œ๋‹ค.์‰ฝ๊ฒŒ ์ƒ๊ฐํ•ด ๋‘ ํด๋ž˜์Šค์— ๋ถ€๋ชจ - ์ž์‹ ๊ด€๊ณ„๋ฅผ ๋งบ์–ด์ฃผ๋Š” ๊ฒƒ์ด๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค.์ž๋ฐ”๋Š” ์ถฉ๋Œ ์œ„ํ—˜ ๋•Œ๋ฌธ์— ๋‹จ์ผ ์ƒ์†๋งŒ ํ—ˆ์šฉํ•œ๋‹ค (c++์€ ๋‹ค์ค‘ ์ƒ์† ํ—ˆ์šฉ)Object ํด๋ž˜์Šค๋Š” ๋ชจ๋“  ํด๋ž˜์Šค์˜ ์กฐ์ƒ์ด๋‹ค. ๋ถ€๋ชจ๊ฐ€ ์—†๋Š” ํด๋ž˜์Šค๋Š” ์ž๋™์œผ๋กœ Object ํด๋ž˜์Šค๋ฅผ ์ƒ์†๋ฐ›๋Š”๋‹ค.(Object ํด๋ž˜์Šค๋Š” 11๊ฐœ์˜ ๋ฉ”์„œ๋“œ๋ฅผ ๊ฐ€์ง„๋‹ค.)์˜ˆ๋ฅผ ๋“ค์–ด Point ํด๋ž˜์Šค์™€ Point3D ํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ค ๋•Œ Point3D ํด๋ž˜์Šค๋ฅผ ์–ด๋–ป๊ฒŒ ์ •์˜ํ•˜๋А๋ƒ์— ๋”ฐ๋ฅธ ์ƒ์† ๊ด€๊ณ„๋ฅผ ์‚ดํŽด๋ณด์ž. class Point { int x; int y;}class Point3D { // 1. Point ํด๋ž˜์Šค์™€ ๋…๋ฆฝ์ ์ธ ๊ด€๊ณ„ int x; int y;..

[JAVA] ์†Œ์ˆ˜์  ํŠน์ • ์ž๋ฆฟ์ˆ˜๊นŒ์ง€ ํ‘œํ˜„ํ•˜๊ธฐ

1. Math.round()Math.round()๋Š” ์‹ค์ˆ˜๋ฅผ ์ •์ˆ˜๋กœ ๋ฐ˜ํ™˜ํ•ด ์ฃผ๋Š” ๋ฉ”์„œ๋“œ๋‹ค. ์‰ฝ๊ฒŒ ๋งํ•ด ๋ฐ˜์˜ฌ๋ฆผ์„ ํ•ด ์ค€๋‹ค๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋Š”๋ฐ ์ด ๋ฉ”์„œ๋“œ๋กœ ์‹ค์ˆ˜๋ฅผ ํŠน์ • ์ž๋ฆฟ์ˆ˜๊นŒ์ง€์˜ ์ˆ˜๋กœ ํ‘œํ˜„ํ•ด ์ค„ ์ˆ˜ ์žˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด 100.3564๋ฅผ ์†Œ์ˆ˜์  ๋‘˜์งธ ์ž๋ฆฟ์ˆ˜๊นŒ์ง€ ํ‘œํ˜„ํ•ด 100.36๋กœ ๋ฐ˜ํ™˜ํ•˜๋„๋ก ๋ง์ด๋‹ค. round()๋Š” ์•„๋ž˜ ๊ณต์‹ ๋ฌธ์„œ๋Œ€๋กœ int๋‚˜ long ํƒ€์ž…์˜ ์ •์ˆ˜ํ˜•์„ ๋ฐ˜ํ™˜ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ณ€ํ˜•ํ•ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค. ๋‘˜์งธ ์ž๋ฆฟ์ˆ˜๊นŒ์ง€ ์›ํ•œ๋‹ค๋ฉด 100์„ ๊ณฑํ•˜๊ณ  100.0์œผ๋กœ ๋‚˜๋ˆ„์–ด ์ค€๋‹ค. ์ฆ‰ ์†Œ์ˆ˜์  ์ˆ˜๋Œ€๋กœ ๊ณฑํ•ด์ฃผ๊ณ  ๋‚˜๋ˆ„์–ด ์ฃผ๋ฉด ๋œ๋‹ค.     System.out.println(Math.round(100.3564 * 100) / 100.0); // 100.36System.out.println(Math.round(100.3564 * ..

JAVA 2025.01.02

[JAVA] static ํ‚ค์›Œ๋“œ

static ํ‚ค์›Œ๋“œ๋Š” ๋ธ”๋ก, ๋ณ€์ˆ˜, ๋ฉ”์„œ๋“œ, ํด๋ž˜์Šค์— ๋ถ™์ผ ์ˆ˜ ์žˆ๋‹ค.  The static keyword in Java is used to share the same variable or method of a given class. ... . The static keyword belongs to the class rather than an instance of the class. The static keyword is used for a constant variable or a method that is the same for every instance of a class. ...  helps create class-level variables and methods. [์ถœ์ฒ˜: https://www.gee..

[JAVA] ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ์ดํ•ด - 1

๊ฐ์ฒด์ง€ํ–ฅ ์–ธ์–ด๋Š” ์ฝ”๋“œ์˜ ์žฌ์‚ฌ์šฉ์„ฑ์„ ๋†’์ด๊ณ , ์œ ์ง€๋ณด์ˆ˜๋ฅผ ์šฉ์ดํ•˜๊ฒŒ ํ•˜๊ณ , ์ค‘๋ณต ์ฝ”๋“œ๋ฅผ ์ œ๊ฑฐํ•˜๊ธฐ ์œ„ํ•œ ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉ๋œ๋‹ค.๊ฐ์ฒด์ง€ํ–ฅ ์–ธ์–ด๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ 4๋Œ€ ํ•ต์‹ฌ ๊ฐœ๋…์„ ๊ฐ€์ง„๋‹ค.์บก์Аํ™”์ƒ์†์ถ”์ƒํ™”๋‹คํ˜•์„ฑํด๋ž˜์Šค๋Š” ๊ฐ์ฒด๋ฅผ ์ •์˜ํ•ด ๋†“์€ ๊ฒƒ์ด๋ฉฐ, ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋งŒ๋“ ๋‹ค.๋”ฐ๋ผ์„œ ํด๋ž˜์Šค๋ฅผ (์ œํ’ˆ) ์„ค๊ณ„๋„๋ผ๊ณ  ์ดํ•ดํ•œ๋‹ค๋ฉด ๊ฐ์ฒด๋Š” ๊ทธ ์„ค๊ณ„๋„์— ๋”ฐ๋ผ ๋งŒ๋“  ์ œํ’ˆ์ด ๋œ๋‹ค. ์ด๋•Œ ๋งŒ๋“ ๋‹ค๊ณ  ํ•˜๋Š” ๊ฒƒ์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ด€์ ์—์„œ "์ธ์Šคํ„ด์Šคํ™”"ํ•œ๋‹ค๊ณ  ํ‘œํ˜„ํ•œ๋‹ค. ์„ค๊ณ„๋„์— ๋”ฐ๋ผ ๊ฐœ๋ณ„ ๊ฐ์ฒด๋ฅผ ๋งŒ๋“œ๋Š” ๊ณผ์ •์ด๋‹ค. ํด๋ž˜์Šค ๊ฐ์ฒด์ œํ’ˆ ์„ค๊ณ„๋„์ œํ’ˆ ๊ฐ์ฒด๋Š” ์†์„ฑ(๋ณ€์ˆ˜)๊ณผ ๊ธฐ๋Šฅ(๋ฉ”์„œ๋“œ)์œผ๋กœ ๊ตฌ์„ฑ๋œ ๊ฒƒ์œผ๋กœ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋ž˜์„œ ๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ํ•˜๋Š” ๊ฒƒ์€, ๊ฐ์ฒด๊ฐ€ ๊ฐ€์ง„ ์†์„ฑ๊ณผ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋‹ค.  ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•  ๋•Œ ์ฃผ์˜ํ•  ์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.ํ•˜๋‚˜์˜..

๋ณ‘๋ ฌ๋ถ„์‚ฐ ์š”์•ฝ ๋…ธํŠธ

๋ณ‘๋ ฌ๋ถ„์‚ฐ from concurrent.futures import ThreadPoolExecutorThreadPoolExecutor์Šค๋ ˆ๋“œ ์‹œ์ž‘ ์ž‘์—…์— ๊ณ„์‚ฐ์ด ๋งŽ์ด ํ•„์š”์Šค๋ ˆ๋“œ๋“ค์˜ ํ’€์„ ์ƒ์„ฑํ•ด ํ•ด๊ฒฐ์Šค๋ ˆ๋“œ ํ•œ๋ฒˆ ์ƒ์„ฑํ•œ ํ›„ ๊ทธ ์Šค๋ ˆ๋“œ์—๊ฒŒ ๊ณ„์† ์ž‘์—… ์ฃผ์–ด ์‹คํ–‰ concurrent.futures ๋ชจ๋“ˆ - Executor ํด๋ž˜์Šค๋‹ค์–‘ํ•œ ํ˜ธ์ถœ๋“ค์„ ๋ณ‘ํ–‰์ ์œผ๋กœ ๋™์‹œ์—(concurrent) ์‹คํ–‰Executor ๊ฐ์ฒด ์ž์ฒด executor = ThreadPoolExecutor(max_workers=3)ThreadPoolExecutor ๊ฐ์ฒด์— ์Šค๋ ˆ๋“œ ์ „๋‹ฌ: submit() ํ•จ์ˆ˜executor.submit(task) ์ž‘์—… ์ „๋‹ฌ  ์ปจํ…์ŠคํŠธ ๊ด€๋ฆฌ์ž์™€ ํ•จ๊ป˜ ์‚ฌ์šฉ์ž๋™์œผ๋กœ ThreadPoolExecutor๋ฅผ ์ธ์Šคํ„ด์Šคํ™”ํ•˜์—ฌ ์‚ฌ์šฉwith Thre..

memos 2024.12.18

[์•Œ๊ณ ๋ฆฌ์ฆ˜] ๊ทธ๋ž˜ํ”„ ์ตœ๋‹จ๊ฑฐ๋ฆฌ - ๋‹ค์ต์ŠคํŠธ๋ผ(Dijkstra) ์•Œ๊ณ ๋ฆฌ์ฆ˜

์ฑ… [Do it! ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ - ์ž๋ฐ” ํŽธ;๊น€์ข…๊ด€ ์ง€์Œ]์„ ์ฐธ๊ณ ํ•˜์—ฌ ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค.  ๋‹ค์ต์ŠคํŠธ๋ผ(Dijkstra) ์•Œ๊ณ ๋ฆฌ์ฆ˜์ถœ๋ฐœ ๋…ธ๋“œ์™€ ๋ชจ๋“  ๋…ธ๋“œ ๊ฐ„์˜ ์ตœ๋‹จ ๊ฑฐ๋ฆฌ ํƒ์ƒ‰ (์ถœ๋ฐœ ๋…ธ๋“œ์™€ ๋„์ฐฉ ๋…ธ๋“œ, ๋‘ ๋…ธ๋“œ๋งŒ์ด ์•„๋‹˜)์—์ง€(๊ฐ€์ค‘์น˜)๋Š” ๋ชจ๋‘ ์–‘์ˆ˜์—ฌ์•ผ ํ•œ๋‹ค์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” O(E * logV)๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜- ์ ‘๊ทผ ๋ฐฉ๋ฒ•๊ทธ๋ž˜ํ”„๋ฅผ ์ธ์ ‘ ํ–‰๋ ฌ, ์ธ์ ‘ ๋ฆฌ์ŠคํŠธ๋กœ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์ผ๋ฐ˜์ ์ธ ๊ฒฝ์šฐ์—์„œ ์ธ์ ‘ ๋ฆฌ์ŠคํŠธ๊ฐ€ ๋” ๋น ๋ฆ„, ํ•˜์ง€๋งŒ ์ƒํ™ฉ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง- ์ธ์ ‘ ํ–‰๋ ฌ O(V^2) - ๋ฐ€์ง‘ ๊ทธ๋ž˜ํ”„์— ์œ ๋ฆฌ, ์—ฐ๊ฒฐ ๋…ธ๋“œ ํ™•์ธํ•˜๋Š” ๋ฐ O(1)- ์ธ์ ‘ ๋ฆฌ์ŠคํŠธ O(E * log V) - ํฌ์†Œ ๊ทธ๋ž˜ํ”„์— ์œ ๋ฆฌ, ์—ฐ๊ฒฐ ๋…ธ๋“œ ํ™•์ธํ•˜๋Š” ๋ฐ O(์—ฐ๊ฒฐ๋œ ๊ฐ„์„ ์˜ ์ˆ˜)์ตœ๋‹จ ๊ฑฐ๋ฆฌ ๋ฐฐ์—ด์„ ์ดˆ๊ธฐํ™” (์ตœ๋Œ“๊ฐ’์œผ๋กœ ๋ชจ๋‘ ์ฑ„์šฐ๊ธฐ)๊ฑฐ๋ฆฌ ๋ฐฐ์—ด์— ์ถœ๋ฐœ ๋…ธ๋“œ ์ธ๋ฑ์Šค์— 0..

[network] ํ˜ผ์ž ๊ณต๋ถ€ํ•˜๋Š” ๋„คํŠธ์›Œํฌ 04-1 ์ถ”๊ฐ€ 2: ICMP (241201)

IP์˜ ์ „์†ก ํŠน์„ฑ์„ ๋ณด์™„ํ•˜๋Š” ICMPICMP(Internet Control Message Protocol, ICMP)๋Š” ์ธํ„ฐ๋„ท ์ œ์–ด ๋ฉ”์‹œ์ง€ ํ”„๋กœํ† ์ฝœ๋กœ์„œ, ๋„คํŠธ์›Œํฌ ๋‚ด ์žฅ์น˜๊ฐ€ ๋ฐ์ดํ„ฐ ์ „์†ก๊ณผ ๊ด€๋ จ๋œ ๋ฌธ์ œ๋ฅผ ์ „๋‹ฌํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ํ”„๋กœํ† ์ฝœ์ด๋‹ค. (https://www.fortinet.com/kr/resources/cyberglossary/internet-control-message-protocol-icmp)IP ํŒจํ‚ท ์ „์†ก ๊ณผ์ •์— ๋Œ€ํ•œ ํ”ผ๋“œ๋ฐฑ ๋ฉ”์‹œ์ง€ ์ œ๊ณตํ”ผ๋“œ๋ฐฑ ๋ฉ”์‹œ์ง€- 1. ์ „์†ก ๊ณผ์ •์—์„œ ๋ฐœ์ƒํ•œ ๋ฌธ์ œ ์ƒํ™ฉ์— ๋Œ€ํ•œ ์˜ค๋ฅ˜ ๋ณด๊ณ - 2. ๋„คํŠธ์›Œํฌ์— ๋Œ€ํ•œ ์ง„๋‹จ ์ •๋ณด (๋„คํŠธ์›Œํฌ ์ƒ์˜ ์ •๋ณด ์ œ๊ณต)๋‹ค์Œ ์Šฌ๋ผ์ด๋“œ๋Š” 1๋ฒˆ ์œ ํ˜•์— ์†ํ•˜๋Š”, ๋ฌธ์ œ ์ƒํ™ฉ์— ๋Œ€ํ•œ ์˜ค๋ฅ˜๋ฅผ ๋ณด๊ณ ํ•˜๋Š” ๋ฉ”์‹œ์ง€ ์œ ํ˜•์ด๋‹ค. ํ™”๋ฉด์—๋Š” ์ž์ฃผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ์˜ค๋ฅ˜ ๋ฉ”..

network 2024.12.01