์ ๋ขฐ์ฑ, ์ ํ์ฑ, ํจ์จ์ฑ์ผ๋ก ๋ํ๋๋ ์ ์ก ๊ณ์ธต์ ์ญํ ์ ์์๋ณด์
์ ์ก ๊ณ์ธต์ ๋ ๊ฐ์ง ์ญํ
๋ผ์ฐํฐ์ ๋ผ์ฐํ ๊ธฐ๋ฅ์ ํตํด ๋ค๋ฅธ ๋คํธ์ํฌ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๊ณ ์ ํ ๋, ๋ฐ์ดํฐ๊ฐ ํญ์ ๋ชฉ์ ์ง์ ์์ค์ด๋ ์์ ์์ด ์์ ํ๊ฒ ๋์ฐฉํ๋ฉด ์ข๊ฒ ์ง๋ง, ๋ชฉ์ ์ง๊ฐ ์ ๋๋ก ์ค์ ๋์๋คํ๋๋ผ๋ ๋ผ์ฐํฐ๋ ํจํท์ ๋ฌธ์ ๋ก ๋ฌธ์ ๊ฐ ์๊ธธ ์ ์๋ค.
์ด์ ๊น์ง์ ํฌ์คํ ์ ํตํด ๋ฌผ๋ฆฌ ๊ณ์ธต, ๋ฐ์ดํฐ ๋งํฌ ๊ณ์ธต, ๋คํธ์ํฌ ๊ณ์ธต๊น์ง ์ดํด๋ณด๋ฉด์ '๋ชฉ์ ์ง'๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๋ ๊ณผ์ ์ ์์๋ณด์์ง๋ง, ๊ณผ์ฐ ์ด๊ฒ์ด ์์ ํ์ง, ์ ๋ขฐํ ๋งํ ์์ค์ธ์ง์ ๋ํด์ ๋ง์ด ์ง์ง ๋ชปํ๋ค. ์ฆ, ๋ค์ ๋งํด ์ธ๊ธํ ์ธ ๊ฐ์ ๊ณ์ธต์์๋ ๋ฐ์ดํฐ๊ฐ ์์๋๊ฑฐ๋ ์ ์ค๋์ด๋ '์ฑ ์์ ์ง์ง์ง ์๋๋ค'
๊ทธ๋์ ๋ชฉ์ ์ง์ ์ ๋ขฐํ ์ ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๊ธฐ ์ํด '์ ์ก ๊ณ์ธต'์ด ์กด์ฌํ๋ค.
์ ์ก ๊ณ์ธต์๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ค๋ฅ๋ฅผ ์ ๊ฒํ๋ ๊ธฐ๋ฅ๊ณผ ์ปดํจํฐ๊ฐ ์ ๋๋ก ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ ๊ฒฝ์ฐ ์ด๋ค ์ ํ๋ฆฌ์ผ์ด์ ์ผ๋ก ๋๋ฌํด์ผ ํ๋์ง๋ฅผ ์๋ณํ๋ ๊ธฐ๋ฅ์ ํตํด ์ ๋ขฐํ ์ ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ค.
์ฐ๊ฒฐํ ํต์ ๊ณผ ๋น์ฐ๊ฒฐํ ํต์
- ์ฐ๊ฒฐํ ํต์ : ์ ๋ขฐํ ์ ์๊ณ ์ ํํ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ ํต์ . ๋ฐ๋ผ์ ํต์ ํ๊ณ ์ ํ๋ ์๋์ 'ํ์ธ'ํ๋ ๊ณผ์ ์ด ํ์ํ๋ค.
- ๋น์ฐ๊ฒฐํ ํต์ : ํจ์จ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ ํต์ . ํต์ ํ๊ณ ์ ํ๋ ์๋์ ํ์ธํ์ง ์๊ณ , '์ผ๋ฐฉ์ '์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ค.
์ผํ ์๊ฐํ๊ธฐ์๋ ๋น์ฐ๊ฒฐํ ํต์ ์ ํจ์ฉ์ด ์์ ๊ฒ์ฒ๋ผ ๋ณด์ด์ง๋ง, ํจ์จ์ ์ค์์ํ๊ธฐ ๋๋ฌธ์ ๋์์ ๊ฐ์ด ์ ๋ขฐํ๊ณ ์ ํํ ๋ฐ์ดํฐ ์ ์ก๋ณด๋ค๋ '๋น ๋ฅธ ์ ์ก'์ด ํ์ํ ํต์ ์์ ์ ๊ธฐ๋ฅ์ ๋ฐํํ๋ค. ๋ฐ์ดํฐ๊ฐ ์ฐ๊ฒฐํ ํต์ ๋ฐฉ์์ฒ๋ผ ๋ช ๋ฒ์ฉ ํ์ธํ๋ ๊ณผ์ ์ ๊ฑฐ์น๋๋ผ ์ง์ฐ๋์ด ๋์ฐฉํ๋ ๊ฒ๋ณด๋ค ๋ฐ์ดํฐ์ ์ฝ๊ฐ์ ์์ค์ ๊ฐ์ํ๋๋ผ๋ ๋น ๋ฅด๊ฒ ์ฌ์๋๋ ๊ฒ์ด ๋์ฑ ์ค์ํ๊ธฐ ๋๋ฌธ์ด๋ค.
์ฆ, ๋ ํต์ ๋ฐฉ์์ ๋ชจ๋ ์ฅ๋จ์ด ์๊ธฐ ๋๋ฌธ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฑ๊ฒฉ์ ๋ฐ๋ผ ํ์ผํ ์ ์๋ค.
์ด๋, ์ฐ๊ฒฐํ ํต์ ๋ฐฉ์์ ์ฌ์ฉ๋๋ ํ๋กํ ์ฝ์ด TCP(Transmission Control Protocol), ๋น์ฐ๊ฒฐํ ํต์ ์ ์ฌ์ฉ๋๋ ํ๋กํ ์ฝ์ด UDP(User Datagram Protocol)
TCP์ ๊ตฌ์กฐ
๊ฐ ๊ณ์ธต์ ํต์ ํ๋กํ ์ฝ์ ์ดํด๋ณด๋ฉด์, ์บก์ํ์ ์ญ์บก์ํ ๊ฐ๋ ์ ์ตํ๋ค. ์ ์ก ๊ณ์ธต์์๋ ๋ง์ฐฌ๊ฐ์ง๋ก ์ ์ก์ด ์ผ์ด๋ ๋ ํค๋๋ฅผ ๋ถ์ด๋ ์บก์ํ์ ์ด๋ฅผ ์ ๊ฑฐํ๋ ์ญ์บก์ํ๊ฐ ์ผ์ด๋๋ค.
TCP๋ก ์ ์กํ ๋ ๋ถ์ด๋ ํค๋๋ TCP ํค๋, ์ด ํค๋๊ฐ ๋ถ์ ๋ฐ์ดํฐ๋ ์ธ๊ทธ๋จผํธ(segment)๋ผ๊ณ ๋ถ๋ฆฐ๋ค.
์ถ๋ฐ์ง ํฌํธ ๋ฒํธ(16๋นํธ) | ๋ชฉ์ ์ง ํฌํธ ๋ฒํธ(16๋นํธ) | ||
์ผ๋ จ ๋ฒํธ(32๋นํธ) | |||
ํ์ธ ์๋ต ๋ฒํธ(32๋นํธ) | |||
ํค๋ ๊ธธ์ด (4๋นํธ) | ์์ฝ ์์ญ (6๋นํธ) | ์ฝ๋ ๋นํธ (6๋นํธ) | ์๋์ฐ ํฌ๊ธฐ (16๋นํธ) |
์ฒดํฌ์ฌ (16๋นํธ) | ๊ธด๊ธ ํฌ์ธํฐ (16๋นํธ) | ||
์ต์ |
TCP ํค๋์ ๊ตฌ์กฐ
TCP๋ผ๋ ํต์ ํ๋กํ ์ฝ์ ์ฐ๊ฒฐํ ํต์ ์ ์ฌ์ฉ๋๊ธฐ ๋๋ฌธ์ 'ํ์ธ'์ด ํ์ํ๋ค. ๊ทธ๋ฐ๋ฐ ์ด ๋ฐ์ดํฐ ์ ์ก์ ์งํํ๊ธฐ ์ ํด์ฃผ์ด์ผ ํ๋ ์ ์ ์์ ์ด ์๋ค: ์ฐ๊ฒฐ(Connection)์ด๋ผ๋ ๊ฐ์์ ๋ ์ ํต์ ๋ก๋ฅผ ํ๋ณดํด์ผ ํ๋ค.
์์ TCP ํค๋์ ๊ตฌ์กฐ์์ '์ฝ๋ ๋นํธ'๋ฅผ ๋ณด๋ฉด, ์ ์ฒด TCP ํค๋์ 107๋ฒ์งธ ๋นํธ~112๋ฒ์งธ ๋นํธ๊น์ง๋ฅผ ์ฐจ์งํ๋ 6๋นํธ์ง๋ฆฌ์ ์ฐ๊ฒฐ ์ ์ด ์ ๋ณด๊ฐ ๊ธฐ๋ก๋๋ค.
TCP Flags์ ์๋ฏธ
URG(Urgent Pointer) | ACK(Acknowledgement) | PSH(Push) | RST(Reset) | SYN(Synchronisation) | FIN(Finish) |
0 | 0 | 0 | 0 | 0 | 0 |
1 ๋นํธ | 1 ๋นํธ | 1 ๋นํธ | 1 ๋นํธ | 1 ๋นํธ | 1 ๋นํธ |
- URG : "์ด ํจํท์ Urgent Pointer์ ์ํด ์ง์ ๋ ๊ธด๊ธํ ๋ฐ์ดํฐ๋ฅผ ๊ฐ๊ณ ์๋ค!" ์๋ตํ ๋, ๋ฐ์ดํฐ์ ๋์ ์ฐ์ ์์๋ฅผ ๋ถ์ฌํด๋ฌ๋ผ๊ณ ์์ฒญํ๋ ๊ฒ์ด๋ค.
- ACK : ๋ฐ์ดํฐ์ ์ฑ๊ณต์ ์ธ ์์ ์ ์ธ์ ํ๋ค.
- PSH : ํต์ ์ ์์ ํ๋ ์ชฝ์ Buffer ์ํ๊ฐ ์ด๋ป๋ ๊ด๊ณ ์์ด ์ด ๋ฐ์ดํฐ๋ฅผ ๋ฐ์๋ง์ ๋์ ๊ณ์ธต์ผ๋ก PUSH(transfter; ์ ์ก)ํด๋ฌ๋ผ๊ณ ์์ฒญํ๋ ๊ฒ
- RST : ์์์น ๋ชปํ ํจํท์ด ์ผ์ด๋๊ฑฐ๋ ์ปค๋ฅ์ ์ด ์คํจํ์ ๋์ ์ด๋ค ์๋ฌ๋ฅผ ๊ฐ๋ฆฌํจ๋ค.
- SYN : "์ด ํจํท์ TCP ์ฐ๊ฒฐ ํ๋ฆฝ์ ์ํ process์ ๋๋ค"๋ฅผ ๋งํ๋ค.
- FIN : "์ด ํจํท์ TCP ์ฐ๊ฒฐ release๋ฅผ ์ํ process์ ๋๋ค"๋ฅผ ๋งํ๋ค.
์ฝ๋ ๋นํธ๋ ๊ฐ ๋นํธ๋ณ๋ก ์ญํ ์ด ์๋๋ฐ, ์ด๊น๊ฐ์ 0์ผ๋ก ์ค์ ์ด ๋๋ฉฐ, ๋นํธ๊ฐ ํ์ฑํ๋์์ ๋ 1์ด ๋๋ค. ์ปค๋ฅ์ ์ ํ๋ฆฝ(to establish the connection)ํ๋ ค๋ฉด SYN์ ACK์ด ํ์ํ๋ค.
- SYN : ์ฐ๊ฒฐ ์์ฒญ
- ACK : ํ์ธ ์๋ต
3-way Handshake (3-way ํธ๋์ ฐ์ดํฌ)
- ํต์ ์ ํ๊ธฐ ์ํด์ ์๋ฒ์ ํ๊ฐ๋ฅผ ๋ฐ์์ผ ํ๊ธฐ ๋๋ฌธ์, ํด๋ผ์ด์ธํธ์์ ์๋ฒ๋ก ์ฐ๊ฒฐ ํ๋ฆฝ ํ๊ฐ๋ฅผ ๋ฐ๊ธฐ ์ํ ์์ฒญ(SYN)์ ๋ณด๋ด๊ณ , ์ด๋ ์ฝ๋ ๋นํธ SYN์ ์ด๊น๊ฐ 0์ด 1๋ก ํ์ฑํ๋๋ค.
- ์๋ฒ๋ ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ๋ฐ์ ํ ํ๊ฐํ๋ค๋ ์๋ต์ ํ์ ํ๊ธฐ ์ํด ์ฐ๊ฒฐ ํ๋ฆฝ ์๋ต(ACK)๋ฅผ ๋ณด๋ด๊ณ ๋์์ ์๋ฒ๋ ํด๋ผ์ด์ธํธ์๊ฒ ๋ฐ์ดํฐ ์ ์ก ํ๊ฐ๋ฅผ ๋ฐ๊ธฐ ์ํด ์ฐ๊ฒฐ ํ๋ฆฝ ์์ฒญ(SYN)์ ๋ณด๋ธ๋ค. ์ฝํธ ๋นํธ์ ACK๊ณผ SYN์ด ๋ชจ๋ ํ์ฑํ๋๋ค.
- ์๋ฒ์ ์์ฒญ์ ๋ฐ์ ํด๋ผ์ด์ธํธ๋ ์๋ฒ์๊ฒ ํ๊ฐํ๋ค๋ ์๋ต(ACK)์ ๋ณด๋ด๊ณ ๋นํธ๋ฅผ ํ์ฑํํ๋ค.
3๊ฐ์ ํ๋ก์ธ์ค๋ก ์ด๋ฃจ์ด์ง๊ธฐ ๋๋ฌธ์ 3-way handshake๋ผ๊ณ ๋ถ๋ฆฐ๋ค. ์ฐ๊ฒฐ ์ข ๋ฃ(TCP Release)๋ฅผ ์ํ ํ๋ก์ธ์ค๋ ๋น์ทํ๋ค. ์๋์ ๊ฐ์ ๊ณผ์ ์ ๊ฑฐ์น๋ฉฐ, ๊ฐ ๊ณผ์ ์์ ํ์ฑํ๋๋ ๋นํธ๋ค์ FIN, ACK๊ฐ ์๋ค.
์ผ๋ จ ๋ฒํธ์ ํ์ธ ์๋ต ๋ฒํธ์ ๊ตฌ์กฐ
์ TCP ํค๋์ ๋ค์ด๊ฐ๋ ์ ๋ณด๋ฅผ ํ์ธํด๋ณด์. ์ผ๋ จ ๋ฒํธ(sequence number)์ ํ์ธ ์๋ต ๋ฒํธ(acknowledge number)๊ฐ ์กด์ฌํ๋ค.
- ์ผ๋ จ ๋ฒํธ : TCP๊ฐ ๋ฐ์ดํฐ๋ฅผ ๋ถํ ํด์ ๋ณด๋ผ ๋ ์ก์ ์ธก์์ ์์ ์ธก์ ์ด ๋ฐ์ดํฐ๊ฐ ๋ช ๋ฒ์งธ ๋ฐ์ดํฐ์ธ์ง ์๋ ค์ฃผ๋ ์ญํ ์ ํ๋ค. ์ถํ์ ์ด๋ ๊ฒ ๋ถํ ๋ ๋ฐ์ดํฐ๋ฅผ ๋ค์ ํฉ์น ๋ ๊ผญ ํ์ํ ์ ๋ณด์ด๋ค.
- ํ์ธ ์๋ต ๋ฒํธ : ๋ฐ๋ ์ชฝ์ ๋ช ๋ฒ์งธ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์๋์ง๋ฅผ ํ์ธ ์๋ต ๋ฒํธ์ ์ค์ด ๋ณด๋ด๊ณ , ์ด ๋ฐ์ดํฐ๋ ์ก์ ์ธก์ด ๋ค์ ๋ฒ์ ๋ช ๋ฒ์งธ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด์ผ ํ๋์ง์๋ ์ฐ์ธ๋ค.
๋ง์ผ ๋ฐ์ดํฐ๊ฐ ์์๋๊ฑฐ๋ ์ ์ค๋์ด ๋ฐ์ดํฐ๊ฐ ์ฌ๋ฐ๋ฅด๊ฒ ์ ๋ฌ์ด ๋ ๊ฒ์ด ์๋๋ผ๋ฉด, ๋ฐ์ดํฐ๋ ์ฌ์ ์ก๋์ด์ผ ํ๊ณ ์ด๋ฅผ ์ฌ์ ์ก ์ ์ด(์ค๋ฅ ์ ์ด)๋ผ๊ณ ํ๋ค. ์ ์ก๋๋ ๋ฐ์ดํฐ์ ์์ ์กฐ์ ํ๋ ํ๋ฆ ์ ์ด, ๋คํธ์ํฌ ํผ์ก์ ๋์ฒํ๋ ํผ์ก ์ ์ด๋ ์กด์ฌํ๋ค.
์๋์ฐ ํฌ๊ธฐ
๊ทธ๋ฐ๋ฐ ์ ๊ฐ์ ๋ฐฉ์์ผ๋ก ํต์ ํ ๋ ํจ์จ์ ์ด๋จ๊น? ๋งค๋ฒ ์ธ๊ทธ๋จผํธ๋ฅผ ๋ณด๋ผ ๋๋ง๋ค ํ์ธ ์๋ต์ ๊ธฐ๋ค๋ ค์ผ ํ๋ค๋ฉด ํจ์จ์ด ๋ฌด์ฒ ๋ฎ์ ๊ฒ์ด๋ค. ์ด๋ฅผ ๊ฐ์ ํ๊ธฐ ์ํด ์ธ๊ทธ๋จผํธ๋ฅผ ์ฐ์ํด์ ๋ณด๋ด๊ณ , ํ์ธ ์๋ต์ ๋ฐํํ๋ฉด ํจ์จ์ ๋์ผ ์ ์์ ๊ฒ์ด๋ค. ๋ฌผ๋ก ์ด๊ฒ์ด ๊ฐ๋ฅํ๋ ค๋ฉด ์์ ์ธก์ (์ก์ ์ธก์ด ์ฐ์ํด์ ๋ณด๋ด๋) ์ธ๊ทธ๋จผํธ๋ฅผ ์ผ์์ ์ผ๋ก ๋ณด๊ดํ๋ ๋ฒํผ(buffer)๊ฐ ์์ด์ผ ํ๋ค.
๊ทธ๋ ์ง๋ง, ๋ฒํผ์ ํฌ๊ธฐ๋ฅผ ๋๊ธฐ๋(overflow) ๋๋์ ๋ฐ์ดํฐ๊ฐ ์ ์ก๋๋ค๋ฉด ์์ ์ธก์ด ๊ฐ๋นํ์ง ๋ชปํ ๊ฒ์ด๋ค. ๊ทธ๋์ ๋ฒํผ๊ฐ ์ด๋ ์ ๋์ ํ๊ณ๋ฅผ ๊ฐ๋์ง ํฌ๊ธฐ๋ฅผ ์๊ณ ์์ด์ผ ํ๊ณ , ์ด ์ ๋ณด๊ฐ์ TCP ํค๋์ '์๋์ฐ ํฌ๊ธฐ(window size)'์์ ํ์ธํ ์ ์๋ค.
์์์ TCP ํต์ ์ ํ๊ธฐ ์ํด ๋ ๋์ ์ปดํจํฐ๊ฐ ์ฐ๊ฒฐ ํ๋ฆฝ(Connection Establishment)์ ์ํด 3-way handshake๋ฅผ ์งํํ๋ค. ์๋์ฐ ํฌ๊ธฐ๋ ๊ทธ๋ TCP ํค๋์ ๊ฐ์ด ์ ๋ฌ๋์ด ์๋ก ์ผ๋ง๋ ๋ง์ ์ฉ๋์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํด ๋ ์ ์๋์ง๋ฅผ ๋ํ๋ธ๋ค! ์ด๋ฅผ TCP์ ํ๋ฆ ์ ์ด ๊ธฐ๋ฅ์ด๋ผ ํ๋ค.
ํฌํธ ๋ฒํธ์ ๊ตฌ์กฐ
์ด ํฌ์คํธ์ ๋ชฉ์ ์ ์ ์ก ๊ณ์ธต์ ๋ ๊ฐ์ง ์ญํ ์ ์ดํด๋ณด๋ ๊ฒ์ด๊ณ , ์ง๊ธ๊น์ง๋ ๊ทธ ์ค ํ๋์ธ ์ค๋ฅ ์ ๊ฒ ๊ธฐ๋ฅ์ ์ดํด๋ณด์๋ค. ๋๋จธ์ง ๋ค๋ฅธ ํ๋๋ ์ ์ก๋ ๋ฐ์ดํฐ์ ๋ชฉ์ ์ง๊ฐ ์ด๋ค ์ ํ๋ฆฌ์ผ์ด์ ์ธ์ง๋ฅผ ์๋ณํ๋ ์ญํ ์ด๋ค. ์๋ฅผ ๋ค์ด ๋์ฐฉํ ๋ฐ์ดํฐ๊ฐ ์ด๋ฉ์ผ ํ๋ก๊ทธ๋จ์ ๋ชฉ์ ์ง๋ก ๊ฐ๋์ง, ์น ๋ธ๋ผ์ฐ์ ๋ฅผ ๋ชฉ์ ์ง๋ก ๊ฐ๋์ง๋ฅผ ํ๋จํ๋ค.
TCP ํค๋์ ํด๋น ์ ๋ณด๊ฐ ์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ด ๊ฐ๋ฅํ ๊ฒ์ด๋ค. TCP ํค๋์๋ ์ถ๋ฐ์ง, ๋ชฉ์ ์ง์ ํฌํธ ๋ฒํธ๋ง ๋ด๊ธฐ๊ณ , ๋คํธ์ํฌ ๊ณ์ธต์์ IP ์ฃผ์๊ฐ ๋ด๊ธธ ๊ฒ์ด๋ค.
- ์ค๋ฅธ์ชฝ ์ด๋ฏธ์ง์ฒ๋ผ(@์ํ์ฝ๋ฉ, ํ๋จ ๋งํฌ ์ถ์ฒ ์ฐธ๊ณ ), 0~1023๋ฒ ํฌํธ๋ ์ฃผ์ ํ๋กํ ์ฝ์ด ์ฌ์ฉํ๋๋ก ์์ฝ๋ ์ ์๋ ค์ง ํฌํธ(Well-known ports)์ด๋ค. ์ฃผ๋ก ์๋ฒ ์ธก ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ฌ์ฉ๋๋ค.
- 1024๋ฒ์ ์์ฝ ๋์ด ์์ง๋ง, ์ฌ์ฉ๋์ง๋ ์๋ ํฌํธ์ด๋ฉฐ,
- 1025๋ฒ ์ด์์ ๋๋ค ํฌํธ๋ก, ํด๋ผ์ด์ธํธ ์ธก์ ์ก์ ํฌํธ๋ก ์ฌ์ฉ๋๋ค.
- ์๊ฒฉ ๋ก๊ทธ์ธ(๋ณด์) : SSH (22)
- ์ ์๋ฉ์ผ(์ก์ ) : SMTP (25)
- Domain Name System : DNS (53)
- www : HTTP (80)
- ์ ์๋ฉ์ผ(์์ ) : POP3 (110)
- www(๋ณด์) : HTTPS (443)
์ด๋ ์๋ฒ ์ธก์ ํฌํธ ๋๋ฒ๊ฐ ์ ํํ ์ค์ ์ด ๋์ด ์์ด์ผ ๋คํธ์ํฌ ์ ์ก ์ ๋ฐ์ดํฐ๊ฐ ์์ ํ๊ณ ์ฌ๋ฐ๋ฅด๊ฒ ๋ชฉ์ ์ง์ ๋์ฐฉํ์ง๋ง, ํด๋ผ์ด์ธํธ ์ชฝ์ ์์์ ํฌํธ๊ฐ ์๋์ผ๋ก ํ ๋น๋์ด์ ๊ตณ์ด ์ ํด๋์ง ์์๋ ๋๋ค.
UDP์ ๊ตฌ์กฐ
๋น์ฐ๊ฒฐํต์ ์ ์ํ ํ๋กํ ์ฝ UDP๋ TCP๋งํผ ๊ผผ๊ผผํ๊ฒ ์๊ฐ์ ๋ค์ฌ ํ์ธํ๋ ์์ ์ ํ์ง ์๋๋ค. ํจ์จ์ฑ์ด ๊ฐ์ฅ ์ค์ํ ์ฐ๊ฒฐ ๋ฐฉ์์ด๊ธฐ ๋๋ฌธ์ด๋ค.
UDP ํค๋
์ถ๋ฐ์ง ํฌํธ (16๋นํธ) | ๋ชฉ์ ์ง ํฌํธ ๋ฒํธ (16๋นํธ) |
๊ธธ์ด (16๋นํธ) | ์ฒดํฌ์ฌ (16๋นํธ) |
TCP์ ์ธ๊ทธ๋จผํธ์ ๊ฐ์ ๊ฒ์ด UDP์์๋ UDP ๋ฐ์ดํฐ๊ทธ๋จ์ด๋ผ๊ณ ๋ถ๋ฆฐ๋ค.
ํจ์จ์ฑ์ ์ค์์์ฌ๊ธฐ๋ฏ๋ก ํ์ธ ์๋ต ์์ด, ์ฐ์ํด์ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ผ ์ ์์ผ๋ฏ๋ก ์ ์ก ์๋๊ฐ ๋ฌด์ฒ ๋น ๋ฅด๋ค. ๋ํ, UDP๋ฅผ ์ด์ฉํ๋ฉด ๋ ๋ด ์ปดํจํฐ๋ ๋คํธ์ํฌ ์ฅ๋น์ ๋ฐ์ดํฐ๋ฅผ ์ผ๊ด๋ก ๋ณด๋ผ ์๋ ์๋ค. (๋ธ๋ก๋์บ์คํธ)
TCP๋ 3-way handshake์ฒ๋ผ ๋ฐ์ดํฐ ์ ์ก ์์ ํ์ธ ์๋ต์ ํ๋์ฉ ๋ณด๋ด์ผ ํ๊ธฐ ๋๋ฌธ์ '์ผ๊ด๋ก', '๋ถํน์ ๋ค์์๊ฒ' ๋ณด๋ด๋ ๋ฐ์ดํฐ ํต์ ๋ฐฉ์๊ณผ๋ ์ ํฉํ์ง ์์ ๋ธ๋ก๋์บ์คํธ๋ ํ์ง ์๋๋ค.
Wireshark
์ด๋ฐ ํจํท์ ํ๋ฆ์ ์กฐ๊ธ ๋ ์ง๊ด์ ์ผ๋ก ์ดํดํ๊ธฐ ์ํด์ wireshark๋ผ๋ ํด์ ์ด์ฉํด ํจํท์ ํ๋ฆ์ ๋ถ์ํด๋ด๋ ์ข์ ๊ฒ ๊ฐ๋ค.
๐ WireShark : 1998๋ ์ ๋ด๋ ์ฝค์ค ์ด๋๋ฆฌ์ผ์ด ๋ฌด๋ฃ๋ก ์ ์ํด ๋ฐฐํฌํ ๋คํธ์ํฌ ํจํท ๋ถ์ ํด. wireshark๋ ๋คํธ์ํฌ ์์์ ์ฃผ๊ณ ๋ฐ๋ ๋ชจ๋ ํจํท์ ์บก์ณํ๋ค. ์์ด์ด์คํฌ๋ฅผ ์คํํ๋ ์๊ฐ๋ถํฐ ๋ชจ๋ ํจํท์ ์บก์ณํ๊ณ , ํ์ง๋ฅผ ์์ํ๋ค. ์คํ ํ ๊ฒฝ๊ณผ ์๊ฐ, ์ก์ IP, ์์ IP, ์ฌ์ฉํ๋ ํ๋กํ ์ฝ, ํจํท์ ํฌ๊ธฐ ์ ๋ณด ๋ฑ ๋ค์ํ ํจํท ๋ด ์ ๋ณด๋ฅผ ํ์ธํ ์ ์๋ค.
์ฐธ๊ณ
[์ํ์ฝ๋ฉ] WEB2 - Home Server
์์ด์ด์คํฌ(WireShark) ์ฌ์ฉ๋ฐฉ๋ฒ