<목차>
- TCP/UDP
- http, https
17. TCP/UDP
TCP
- Transmission Control Protocol : 전송 통제 통신 규약
- 신뢰성 : 데이터가 손실 없이 정확히 전송되도록 보장 => 데이터 수신 확인과 순서 보장 기능 제공
- 연결 지향적 : 통신을 시작하기 전 "핸드셰이크" 과정을 통해 설정, 이 과정에서 데이터를 보내고 받을 준비가 되었는지 확인
- 혼잡 제어 및 흐름 제어 : 네트워크의 혼잡 상태나 수신자의 처리 능력에 따라 데이터 전송 속도 조절
- 용도 : 이메일, 웹 페이지 로딩, 파일 전송 등 데이터의 정확성이 중요한 서비스에 주로 사용
- 정확성, 신뢰성
- 데이터 제한이 있다.
UDP
- User Datagram Protocol : 사용자 데이터그램 통신 규약
- 비연결성 : 연결을 설정하지 않고 데이터를 바로 보냄 => TCP보다 빠르지만 네트워크 상태에 따라 데이터가 유실될 수 있음
- 간단함 : 수신 확인이나 순서 보장 기능이 없어 프로토콜 자체가 간단
- 용도 : 실시간 응용 프로그램 (실시간 비디오 스트리밍, 온라인 게임등) 에서 주로 사용, 일부 데이터의 손실이 허용되는 경우 적합
- 속도, 효율성
- 대용량 데이터 전송도 가능하다
Q. TCP/UDP에 대해서 설명해주세요.
TCP와 UDP는 모두 인터넷에서 정보를 교환하는 방식입니다. 하지만 여러면에서 차이점이 있습니다. TCP는 Transmission Control Protocol의 약자로 정확성과 신뢰성이 특징인 데이터 교환 방식입니다. 데이터 수신을 확인하고 순서를 보장하는 기능을 제공하기 때문에 데이터가 손실 없이 정확히 전송되도록 보장합니다. 데이터를 보내고 받을 준비를 "핸드셰이크" 과정을 통해 확인한다는 점과 네트워크의 혼잡도와 수신자의 처리능력을 고려한다는 점도 큰 특징입니다. 이러한 특성 때문에 이메일, 웹페이지 로딩, 파일 전송등 데이터의 정확성이 중요한 서비스에 주로 사용됩니다. 이와 비교하여 UDP는 속도와 효율성을 강조한 방식입니다. 연결을 설정하거나 수신을 확인하지 않고 데이터를 바로 보내기 때문에 TCP보다 빠르지만 네트워크의 상태에 따라 데이터가 유실될 수 있습니다. 대용량의 데이터 전송도 가능하고 순서 보장 기능등이 없어 간단하다는 특징 또한 갖고있습니다. 이러한 특성 때문에 실시간으로 제공되는 실시간 비디오 스트리밍, 온라인 게임등에서 주로 사용됩니다. 이런 서비스들은 일부 데이터의 손실을 허용하는 대신 빠르게 데이터를 교환해야하기 때문에 UDP방식을 사용합니다.
http,https
- http : HyperText Transfer Protocol
- https : HyperText Transfer Protocol Secure
- 보안성의 차이
HTTP
- 비암호화 : HTTP는 데이터를 평문 형식으로 전송 => 데이터가 네트워크를 통해 이동할 때 중간에 쉽게 도청되거나 수정될 수 있음
- 포트 80 사용 : 일반적으로 HTTP 통신은 80번 포트를 사용
- 보안 취약성 : 개인 정보, 비밀번호, 금융 정보 등 민감한 데이터를 전송할 때 보안이 취약
HTTPS
- 암호화 : SSL/TLS 프로토콜을 통해 데이터를 암호화하여 전송 => 데이터가 도청되거나 수정되는 것을 방지
- 포트 443 사용 : HTTPS 통신은 보통 443번 포트 사용
- 인증 및 무결성 보장 : 서버와 클라이언트는 인증 과정을 거쳐 서로의 신원 확인, 전송되는 데이터의 무결성 보장
- 성능 오버헤드 : 암호화 과정이 추가되기 때문에 HTTP에 비해 약간의 성능 저하 발생, 최근 이 차이가 줄어들고 있음
Q. http, https 차이점에 대해 설명해주세요.