🎬영상후기
▶ [10분 테코톡] 👨🏫르윈의 TCP UDP
- 전송 계층이 없다면?: 데이터 순차 전송 원활X, Flow(흐름 문제: 송수신자 간의 데이터 처리 속도 차이로 인해), Congestion(혼잡 문제: 네트워크 데이터 처리 속도로 인해)
---> 데이터의 손실 발생.
- TCP: 신뢰성있는 데이터 통신을 가능하게 해주는 프로토콜.(TCP헤더 + 데이터: 세그먼트)
- 양방향 통신.
- 데이터 순차 보장.
- Flow Control(흐름 제어)
- Congestion Control(혼잡 제어)
- Error Detection(오류 감지)
- 전송의 신뢰성 보장.
- But, 매번 Connection을 연결해서 시간 손실 발생.
- 패킷을 조금만 손실해도 재전송.
- TCP의 데이터 전송 방식
- Client가 패킷 송신.
- Server에서 ACK 송신.
- ACK를 수신하지 못하면 재전송.
- TCP의 3 way-handshake(Connection 연결)//SYN(연결 요청 flag), ACK(응답 flag), FIN(연결 종료 요청 flag)
- SYN 비트를 1로 설정해 패킷 송신.
- SYN, ACK비트를 1로 설정해 패킷 송신.
- ACK 비트를 1로 설정해 패킷 송신.
- 4 way-handshake(Connection close)
- 데이터를 전부 송신한 Client가 FIN 송신.
- Server가 ACK 송신.
- Server에서 남은 패킷 송신(일정 시간 대기)
- Server가 FIN 송신.
- Client가 ACK 송신.
- UDP: TCP보다 신뢰성이 떨어지지만 전송 속도가 일반적으로 빠른 프로토콜.(UDP헤더 + 데이터: 데이타그램)
- 순차 전송 X, 흐름 제어 X, 혼잡 제어 X
- Connectionless(3 way-handshake X)
- Error Detection
- 비교적 데이터의 신뢰성이 중요하지 않을 때 사용.(ex, 영상 스트리밍)
- UDP의 데이터 전송 방식
- client가 패킷 송신.