본문 바로가기

CS

TCP와 UDP

TCP

  • 신뢰성 있는 데이터 전송을 지원하는 연결 지향형 프로토콜
  • 3-way handshaking을 통해 연결 후 통신을 시작하고, 4-way handshaking으로 연결을 해제
  •  흐름 제어와 혼잡 제어를 지원

흐름제어

- 수신 측과 송신 측의 데이터 처리 속도 차이를 조절

- 수신 측은 처리 속도가 빨라도 상관 없지만, 송신측이 더 빠를 경우 저장 용량을 초과해 데이터 손실이 일어날 수 있다

 

  1. stop and wait
    • 매번 전송한 패킷에 대해 확인 응답을 받아야만 그 다음 패킷을 전송하는 방법

   2. sliding window

  • 수신측에서 설정한 윈도우 크기만큼 송신측에서 확인 응답없이 세그먼트를 전송할 수 있게 하여, 데이터 흐름을 동적으로 조절하는 기법

 

혼잡제어

- 네트워크 내의 패킷 수가 넘치지 않게 방지 하는 것

 

특징

  • 데이터의 전송 순서를 보장
  • 신뢰성 있는 데이터 전송
  • UDP에 비해 전송 속도가 느림

UDP

  • 비연결형 프로토콜
  • 따로 신호 절차를 거치지 않고 일방적으로 데이터를 전달

특징

  • 혼잡제어를 하지 않기 때문에 속도가 빠름
  • 패킷 오버해드가 적어 네트워크 부하 감소
  • 신뢰성을 보장 불가

 

'CS' 카테고리의 다른 글

트랜잭션  (0) 2023.07.20
HTTP HTTPS  (0) 2023.07.13
프로세스부터 멀티 스레드까지  (0) 2023.07.06
삽입정렬  (0) 2023.07.05
버블 정렬과 선택 정렬  (0) 2023.07.04