Transport 계층 서비스 개요
Transport 서비스 & protocol
- 서로 다른 host에 동작하는 애플리케이션 프로세스 간의 논리적 통신을 제공
- Transport protocol은 종단 시스템에서만 동작
-송신측 : message를 쪼개어 segment들로 만들어 network 계층에 넘겨줌
-수신측 : segment들을 재결합하여 message로 만들어 application계층에 넘겨줌
- Transport protocol의 종류 : internet TCP & UDP
Transport vs Network 계층
- Network layer : host들간의 논리적 통신
- Transport layer : process들간의 논리적 통신
Internet Transport 계층 protocol
- 순서대로 전달하는 신뢰적인 전달 : TCP (혼잡제어 , 흐름제어 , 연결 설정)
- 순서가 보장되지 않는 비신뢰적인 전달 : UDP 최신형 서비스인 IP의 확장형
다중화 & 역 다중화
송신호스트에서의 다중화 : 여러개의 소켓들로부터 데이터를 모으고, 헤더(추후 역 다중화에서 사용)를 붙여 포장
수신호스트에서의 역 다중화 : 수신된 segment들로 올바른 소켓들로 배분
역다중화의 동작
- Host IP datagram들을 수신한다.
- 각 datagram은 출발지 IP주소와 목적지 IP주소를 가진다.
- 각 datagram은 한개의 transport 계층 segment를 운반
- 각 segment는 출발지 port번호와 목적지 port번호를 가정
- Host는 IP주소와 port번호를 기반으로 segment를 적절한 소켓에 전달
비연결형 역다중화
- UDP socket은 다음의 쌍으로 구분됨 (목적지IP주소,목적지port번호)
- Host가 UDP segment를 수신하면 segment안의 목적지 port번호를 점검하고 UDP segment를 목적지 port번호에 해당되는 socket에 전달한다.
- 서로 다른 출발지 IP주소와 출발지 port번호를 가지는 IP datagram들이 같은 socket에 전달 가능하다.
연결형 역 다중화
- TCP socket은 출발지 IP주소, 출발지 port번호 , 목적지 IP주소 , 목적지 port번호로 구성된다.
- 수신 host는 위 4개의 값을 모두 사용하여 segment를 적절한 socket에 전달한다.
- server host는 동시에 여러개의 TCP socket들을 생성한다. ( 각 socket은 앞의 4개 값으로 구분 )
- web server는 서로 다른 client와의 연결의 위해 서로다른 socket를 가진다. ( 비지속 HTTP는 각 request마다 다른 socket을 생성한다. )
비연결형 Transport UDP
UDP : User Datagram Protocol
-최소 기능만으로 구성됨
- 최선형 서비스 : 즉, UDP segment는 손실되거나 , 순서가 바뀌어 애플리케이션에 전달될 수 있다.
- 비연결형 : segment 전송 이전에 송신측과 수신측 사이에 handshaking 하지 않는다. , 각 segment는 다른 segment와 별개로 독립적으로 취급된다.
UDP를 사용하는 이유 ?
- 연결 설정(지연을 유발할 수 있는 요인)이 필요 없음
- 간단 : 송신 측과 수신측에서 연결 상에 관리가 필요 없다.
- segment header가 작다
- 혼잡제어 사용되지 않는다. 따라서 UDP는 신속하게 전달될 수 있다.
UDP 추가적 특징 및 형식
- Streaming multimedia 애플리케이션에 흔히 사용됨 (약간의 손실 허용)
- 다른 UDP 사용 예 (DNS , SNMP)
- UDP위에서 신뢰적 전송 : application계층에서 신뢰성 추가
UDP Checksum
목적 : 전송된 segment내의 오류(뒤바뀐 bit값) 검출
송신측
- segment 내용을 16bit 정수의 수열로 취급
- checksum : segment내용들을 더함
- 송신측은 checksum 결과값을 UDP checksum field에 입력
수신측
- 수신된 segment의 checksum을 계산
- 계산된 checksum이 checksum field값과 같은지 점검 ( NO : 오류 검출 , YES : 오류 검출 되지 않았으나 아직 모름 )
'Network > 컴퓨터 네트워크' 카테고리의 다른 글
[8] CH3 Transport 계층 (0) | 2021.11.01 |
---|---|
[7] CH3 Transport 계층 (0) | 2021.11.01 |
[5] CH2 애플리케이션 계층 (0) | 2021.10.31 |
[4] CH2 애플리케이션 계층 (0) | 2021.10.31 |
[3] CH2 애플리케이션 계층 (0) | 2021.10.31 |
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!