wanna be dev 🧑‍💻

Cool 하고 Sick한 개발자가 되고 싶은 uzun입니다

A.K.A. Kick-snare, hyjhyj0901, h_uz99 solvedac-logo

Computer Science/Computer Network

📡 [Network] 전송층 - 다중화와 역다중화 (Multiplexing & Demultiplexing)

Kick_snare 2022. 10. 10. 21:50
728x90

본 포스팅은 < 컴퓨터 네트워킹 하향식 접근[8판] James F. Kurose, Keith W. Ross 저/최종원, 강현국, 김기태 > 을 참고하여 작성되었습니다.

Ch03 Transport Layer

2. 다중화와 역다중화 : Multiplexing & demultiplexing

  • 서버가 클라이언트에 메세지를 보낼 때 transport, network 헤더를 추가하여 보낸다

  • 그렇다면 여러 클라이언트가 서버에 데이터를 보내면 어떻게 구별할 수 있을까?

➡️ 전송층 헤더에 포함된 포트 번호로 구별!

다중화 & 역다중화

역다중화 (demultiplexing)

  • 전송층 세그먼트의 데이터를 올바른 소켓으로 전달하는 작업

다중화 (multiplexing)

  • 출발지 호스트에서 소켓으로부터 데이터를 모음
  • 이에 대한 세그먼트를 생성하기 위해 각 데이터 헤더 정보를 캡슐화
  • 그 세그먼트들을 네트워크 계층으로 전달

비연결형 Connectionless 다중화 (UDP)

전송자

  • 소켓을 생성할 때 포트 번호를 명시해준다
  • datagram을 생성하여 UDP 소켓으로 전송할 때 IP 주소와 포트번호를 명시한다.

수신자

  • 세그먼트의 포트 번호를 확인한다.
  • 출발지 IP, 출발지 포트 번호가 달라도 목적지 IP와 포트번호가 같을 수 있다.

연결 지향형 Connection-oriented 다중화 (TCP)

(출발지 IP주소, 출발지 포트 번호, 목적지 IP주소, 목적지 포트 번호) 4개 요소로 식별한다.

P1, P2, P3 모두 다른 소켓으로 들어가는 것을 확인 가능한 특정 프로세스 전용 소켓을 열어준다.

728x90