Socket
OSI7 Layer ๋,TCP/IP 4 Layer์ ๋ํด ๋ค์ด๋ดค์ ๊ฒ์ด๋ค.
(ํน์ ๋ค์ด๋ณด์ง ์์๋ค๋ฉด ๊ฐ๋จํ ๊ตฌ๊ธ๋ง์ ํตํด ๊ฐ๋ ์ ํ์ธํ์!)
์ฌํํผ, ์ด๋ฐ ๊ณ์ธต์ด ํ์ํ ์ด์ ๋ ๋คํธ์ํฌ ์ฅ๋น ํ๋ก๊ทธ๋จ์ด๋ ์ฅ๋น๊ฐ๋ฐ์ ์ฝ๊ฒํ๊ธฐ ์ํจ์ด๋ผ๊ณ ๋ณผ์ ์๋ค.
๊ณ์ธต์ ๋๋์ผ๋ก์จ ๋ช ๊ฐ์ ํ๋กํ ์ฝ๋ก ๊ฐ๋ฐ์ ํ ์ ์๊ฒ ๋์๋๋ฐ
๊ทธ๋ฌ๊ธฐ ์ํด์๋ ํด๋นํ๋ ํ๋กํ ์ฝ์ ๊ตฌํํ๋ ํ๋กํ ์ฝ์ด ์์ด์ผ ํ๋ค!
๋คํ์ด ๊ตฌํํ๋ ํ๋กํ ์ฝ, ์ฆ ์ด๋ฏธ ๋ง๋ค์ด์ง ์ฝ๋๋ ์ ๊ณต๋๋๋ฐ
์ด๊ฒ ๋ฐ๋ก ์์ผ์ด๋ค.
์์ผ์์ ์ง์ํ๋ ๋ค์ํ ํจ์๋ ์ธํฐ๋ท ์ฌ์ฉ ํ๋กํ ์ฝ์ ์ง์ํ๋ค.
TCP/IP ๊ณ์ธต์์ ๋ณด๋ฉด ์ ์ก๊ณ์ธต ์์ ๋๊ธฐ๊ฒ ๋์ด, ์ ์ก ๊ณ์ธต ์์ ๋์ฌ ์์ผ ๊ณ์ธต์ด๋ผ๊ณ ๋ถ๋ฆฌ๊ธฐ๋ ํ๋ค.
์์ผ์ด ํ๋ ์ผ์ ๋๋ฝ์ น์ผ๋ก ์๋ ์ฌ์ง๊ณผ ๊ฐ๋ค๊ณ ์ดํดํ๋ฉด ์ดํด๊ฐ ์ฝ๋ค.
์์ผ์ SW์ SW๋ฅผ ์ฐ๊ฒฐํ๋ ์ญํ ๊ณผ,
SW๊ฐ Data ํต์ ์ ๋ด๋นํ๋ค.

ํฌ๋กฌ ๋ถ๋ผ์ฐ์ ์์ ์ด๋ค ์ด๋ฏธ์ง๋ฅผ ๊ฐ์ง ์๋ฒ์ ์ด๋ฏธ์ง๋ฅผ ์์ฒญํ๋ ์น ์๋น์ค ํํ๋ฅผ ์์๋ก,
์์ผ์ ์ญํ ์ ์ดํด๋ณด๋ฉด
socket() ํจ์๋ก ์์ผ์ ์์ฑํ๊ณ
connect() ํจ์์ accept()ํจ์๋ก ์์ผ๊ณผ ์์ผ์ ์ฐ๊ฒฐํ๋ค.
์ฐ๊ฒฐ ์ดํ Socket์ ๋ ๋ค๋ฅธ ํจ์๋ฅผ ์ด์ฉํ์ฌ ํต์ ํ๋ค.
์ถ๊ฐ๋ก, ๋๊ฐ์ ํ๋ก๊ทธ๋จ์ด ์ฐ๊ฒฐ๋ ๋ ์๋ก๋ฅผ ์ด๋ป๊ฒ ์ฐ๊ฒฐํ๋์ง์ ๋ํด์๋ Port๋ฒํธ์ IP ์ด๋ค.
IP ๋ ์ฝ๊ฒ ์ปดํ์ ์์น๋ฅผ ์ฐพ๊ธฐ ์ํด ์ฌ์ฉ๋๋ ๊ฒ์ด๊ณ , Port ๋ฒํธ๋ ์ปดํจํฐ ๋ด์ ํ๋ก๊ทธ๋จ ์์น๋ฅผ ์ฐพ๋๋ฐ ์ฌ์ฉํ๋ค.
Stream
์คํธ๋ฆผ์ ์ ์ถ๋ ฅ ์ฅ์น์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅํ๊ณ , ์ถ๋ ฅํ๋ ์ฒ๋ฆฌ๋ฅผ ์ํด ์คํธ๋ฆผ์ด ์กด์ฌํ๋ค.
์ ์ถ๋ ฅ ์ฅ์น(ํค๋ณด๋/ ๋ง์ฐ์ค ๋ฑ) ๋งํผ ๋ค์ํ ์คํธ๋ฆผ์ด ์กด์ฌํ๋ฉฐ
๋ฐ์ดํฐ, ํจํท, ๋นํธ ๋ฑ ์ผ๋ จ์ ์ฐ์์ฑ์ ๊ฐ๋ ํ๋ฆ์ ์๋ฏธํ๋ค.
์๋ ๋ธ๋ก๊ทธ์ Stream ์ ๋ํ ์ ๋ฆฌ๊ฐ ์ ๋์ด์์ด์ ๋์์ด ๋ง์ด ๋์๋ค.
'HTTP 1.1 VS HTTP2.0 > Capstone design' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
h1 ํ์ผ send-recv ์ฑ๋ฅ, ์๊ณ ๋ฆฌ์ฆ ์์ฑํ๊ธฐ (0) | 2021.07.19 |
---|---|
[Django] FileNotFoundError ํด๊ฒฐ๋ฒ! #๐ (0) | 2021.06.17 |
HTTP2 Json ๋ก๊ทธ์ ํ์ผ ๊ตฌ์กฐ / json parsing ์๊ณ ๋ฆฌ์ฆ ์ง๊ธฐ (0) | 2021.06.11 |
[#5 Http1.1 vs Http2.0] ๋ฌธ์ ํด๊ฒฐ / ํ์ผ ์ฌ์ด์ฆ ๋ณ ์ธก์ / ์คํ ์์ค ์กฐ์ฌ (0) | 2021.05.24 |
cat 10 / (0) | 2021.05.06 |
๋๊ธ