"์ ์ก์ ์ด ํ๋กํ ์ฝ(Transmission Control Protocol)"
๋คํธ์ํฌ ํต์ ์์ ์ ๋ขฐ์ฑ ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ๊ณตํ๋ ์ฐ๊ฒฐ๋ฐฉ์.
TCP ์๋น์ค๋ ์ก์ ์์ ์์ ์ ๋ชจ๋ ์์ผ์ด๋ผ๊ณ ๋ถ๋ฅด๋ ์ข
๋จ์ ์ ์์ฑํ๊ณ ์ฐ๊ฒฐํ๋ ค๋ ์ฌ์ฉ์๊ฐ TCP 3-way handshake ๊ณผ์ ์ ํตํด ์ฐ๊ฒฐ ์ํ๋ฅผ ํ์ธํ๋ค.
๋ชจ๋ TCP ์ฐ๊ฒฐ์ ์ ๋์ (Point to Poing) ๋ฐฉ์์ผ๋ก ์๋ฐฉํฅ์์ ๋์, ํ ๋ฒ์ ํ๋์ ์ก์ ์์ ์์ ์ ๊ฐ์ ํต์ ์ด ๊ฐ๋ฅํ๋ค.
๋ฐ๋ผ์ TCP๋ ๋ฉํฐ์บ์คํธ, ๋ธ๋ก๋์บ์คํ ์ ์ง์ํ์ง ์๋๋ค.
๋ํ TCP๋ ์ ๋ขฐ์ฑ ์๋ ๋ฐ์ดํฐ ์ ์ก์ ๋ณด์ฅํ๊ธฐ ์ํด ์ฌ๋ฌ ์ ์ด ๋งค์ปค๋์ฆ์ ์ฌ์ฉํ๋ค.
์์ ์ธก์ด ์ก์ ์ธก๋ณด๋ค ๋ฐ์ดํฐ ์ฒ๋ฆฌ ์๋๊ฐ ๋น ๋ฅด๋ฉด ๋ฌธ์ ์์ง๋ง, ์ก์ ์ธก์ด ์๋๊ฐ ๋น ๋ฅผ ๊ฒฝ์ฐ ๋ฌธ์ ๊ฐ ์๊ธด๋ค.
์์ ์ธก์ ์ ํ๋ ์ ์ฅ ์ฉ๋์ ์ด๊ณผํ ์ดํ์ ๋์ฐฉํ๋ ๋ฐ์ดํฐ๋ ์์ค ๋ ๊ฐ๋ฅ์ฑ์ด ์๋ค.
์ก์ ์ธก์ ๋ฐ์ดํฐ ์ ์ก๋์ ์์ ์ธก์ ๋ฐ๋ผ ์กฐ์ ํด์ผ ํ๋ค.
ํผ์ก์ ์ด : ์ก์ ์ธก ๋ฐ์ดํฐ ์ ๋ฌ๊ณผ ๋คํธ์ํฌ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์๋ ๊ฐ์ ์ฐจ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ๊ธฐ๋ฒ
LastByteSent - LastByteAcked <= ReceivecWindowAdvertised(๋ง์ง๋ง์ ๋ณด๋ธ ๋ฐ์ดํธ - ๋ง์ง๋ง์ ํ์ธ๋ ๋ฐ์ดํธ <= ๋จ์์๋ ๊ณต๊ฐ) ==
(ํ์ฌ ๊ณต์ค์ ๋ ์๋ ํจํท ์ <= sliding wndow)

3-way handshake๋ฅผ ํตํด ์์ ํธ์คํธ์ ์์ ์๋์ฐ ์ฌ์ด์ฆ์ ์์ ์ ์๋์ฐ ์ฌ์ด์ฆ๋ฅผ ๋ง์ถ๊ฒ ๋๋ค.์ก์ ์ธก์ ๋ฐ์ดํฐ๋ ์ง์ญ๋ง์ด๋ ์ธํฐ๋ท์ผ๋ก ์ฐ๊ฒฐ๋ ๋ํ ๋คํธ์ํด๋ฅผ ํตํด ์ ์ฅ๋๋ค.
๋ง์ฝ ํ ๋ผ์ฐํฐ์ ๋ฐ์ดํฐ๊ฐ ๋ชฐ๋ฆด๊ฒฝ์ฐ, ์์ ์๊ฒ ์จ ๋ฐ์ดํฐ๋ฅผ ๋ชจ๋ ์ฒ๋ฆฌํ ์ ์๊ฒ ๋๋ค.
์ด๋ด ๊ฒฝ์ฐ, ํธ์คํธ๋ค์ ๋ ๋ค์ ์ฌ์ ์ก์ ํ๊ฒ ๋๊ณ ํผ์ก๋ง ๊ฐ์ค์์ผ ์ค๋ฒํ๋ก์ฐ๋ ๋ฐ์ดํฐ ์์ค์ ๋ฐ์์ํจ๋ค.
๋ฐ๋ผ์ ๋คํธ์ํฌ ํผ์ก์ ํผํ๊ธฐ ์ํด ์ก์ ์ธก์์ ๋ณด๋ด๋ ๋ฐ์ดํฐ์ ์ ์ก ์๋๋ฅผ ๊ฐ์ ๋ก ์ค์ด๊ฒ ๋๋๋ฐ ์ด๋ฌํ ์์
์ ํผ์ก์ ์ด๋ผ๊ณ ํ๋ค.
ํ๋ฆ์ ์ด๋ ์ก์์ ์ธก ์ฌ์ด์ ์ ์ก์๋๋ฅผ ๋ค๋ฃจ๋๋ฐ ๋ฐํด, ํผ์ก์ ์ด๋ ํธ์คํธ์ ๋ผ์ฐํฐ๋ฅผ ํฌํจํ ๋ณด๋ค ๋์ ๊ด์ ์์ ์ ์ก ๋ฌธ์ ๋ฅผ ๋ค๋ฃฌ๋ค.