
1. Multiplexing / Demultiplexing ๊ฐ์

์ฌ๋ฌ ํ๋ก๊ทธ๋จ(์์ผ)์์ ์จ ๋ฐ์ดํฐ๋ฅผ ํ๊บผ๋ฒ์ ๋ชจ์์ ๋คํธ์ํฌ๋ก ๋ณด๋
์์ ๋ ๋ฐ์ดํฐ(segment) ๋ฅผ ๋ฐ๊ณ , ํค๋ ์ ๋ณด๋ฅผ ํ์ธํด์ ์ด๋ ํ๋ก๊ทธ๋จ(์์ผ)์ผ๋ก ๋ณด๋ด์ผ ํ ์ง ๊ฒฐ์
2. Demultiplexing ๋์ ๋ฐฉ์

IP datagram ์์
host๋ IP address์ Port ๋ฒํธ๋ฅผ ๋ณด๊ณ ์ ์ ํ ์์ผ(Process)์ผ๋ก ์ ๋ฌ
3. Demultiplexing (UDP)
1) ์ด๊ธฐ ์ค๋น ๋จ๊ณ
์์ผ ์์ฑ ํ, ํธ์คํธ ๋ด๋ถ ํฌํธ ๋ฒํธ์ ๋ฐ์ธ๋ฉ
serverSocket.bind(('', serverPort))
2) ์ก์ ๋จ๊ณ
UDP datagram์ ๋ณด๋ผ ๋๋๋ชฉ์ ์ง IP Address + Port ๋ฒํธ๋ฅผ ๋ช
์ ํด์ผํจ
3) ์์ ๋จ๊ณ
์์ ํ UDP ์ธ๊ทธ๋จผํธ์ ๋ชฉ์ ์ง ํฌํธ ๋ฒํธ๋ฅผ ํ์ธํ๋ฉด,
ํด๋น ํฌํธ ๋ฒํธ์ ๋ฐ์ธ๋ฉ๋ ์์ผ์ผ๋ก ์ธ๊ทธ๋จผํธ๋ฅผ ์ ๋ฌ
์ก์ ์์ IP๋ ์ก์ ํฌํธ๋ ๋ค๋ฅด์ง๋ง,
๋ชฉ์ ์ง ํฌํธ๋ง ๊ฐ์ผ๋ฉด ๊ฐ์ ์๋ฒ ์์ผ์ผ๋ก ๋ค์ด์ค๋ ๊ฒ์ ํ์ธ ๊ฐ๋ฅ

6428๋ฒ ํฌํธ์ ๋ฐ์ธ๋ฉ
serverSocket = socket(AF_INET, SOCK_DGRAM)
serverSocket.bind(('', 6428))
clientSocket ๋ง๋ค์ด์ ๋ฐ์ดํฐ ๋ณด๋
source port: 9157, dest port: 6428
๋ค๋ฅธ clientSocket ๋ง๋ค์ด ๋ฐ์ดํฐ ๋ณด๋
source port: 5775, dest port: 6428
4. Demultiplexing (TCP)
TCP ์์ผ์ ๋ชฉ์ ์ง ํฌํธ๋ง ๋ณด๋ ๊ฒ ์๋๋ผ,
4๊ฐ์ ๊ฐ์ ๋ชจ๋ ๋ณด๊ณ ๊ตฌ๋ณ
(๋ชจ๋ ๊ฐ์ด ์ผ์นํด์ผ ๊ฐ์ TCP ์์ผ์ผ๋ก ํ๋จ)

์๋ฒ๋ ์ด๊ฑธ ์ ๋ถ ๋ค๋ฅธ ์ฐ๊ฒฐ๋ก ๊ตฌ๋ณํด์ ๋ค๋ฅด๊ฒ ์ฒ๋ฆฌ
์ก์ IP/Port๊น์ง ๋ณด๋ฉด, ๋๊ฐ ๋ณด๋๋์ง๋ ์์ ํ ๊ตฌ๋ณ ๊ฐ๋ฅ (TCP์ ์ ๋ขฐ์ฑ์ ๋์ฌ์ค)