itisjustK
코딩과 사람 사는 이야기
itisjustK
전체 방문자
오늘
어제
  • 분류 전체보기 (207)
    • 일이삼사오육칠팔구십일이삼사오육칠팔구십일이삼사오육칠.. (0)
    • Web (43)
      • html & css (9)
      • django & python (15)
      • java script (9)
    • iOS (51)
      • Swift (42)
      • SwiftUI (5)
    • CS (25)
      • 자료구조 (6)
      • 운영체제 (3)
      • 데이터베이스 (9)
      • 네트워크 (7)
    • PS (34)
      • 알고리즘 & 자료구조 (0)
    • Life (36)
    • Retrospective (15)
    • Book (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 세그멘테이션
  • SwiftUI
  • 독립서점
  • 점주
  • nosql
  • 어플
  • AppleDevloperAcademy
  • 킨디
  • 생활코딩
  • 연결리스트
  • crud
  • mongodb
  • SWIFT
  • binding
  • ios
  • CoreData
  • 생활코딩 #이고잉 #HTML #코딩 #개발자
  • 개발자
  • CS
  • POSTECH

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
itisjustK

코딩과 사람 사는 이야기

[CS - 네트워크] TCP와 UDP
CS/네트워크

[CS - 네트워크] TCP와 UDP

2023. 2. 14. 17:08

TCP와 UDP

일단 TCP와 UDP 둘 다 TCP/IP 4계층의 전송 계층에서 발생하는 프로토콜이다.

전송 계층은 말 그대로 데이터의 전송을 담당하는 계층이고,

여기서 데이터를 보내기 위해 사용하는 프로토콜이 있는데, 이것들이 바로 TCP와 UDP다.

 

응용 계층으로부터 메세지를 전달받아서, 전송 계층 패킷으로 캡슐화하여 주고 받는다.

TCP에서 사용하는 패킷을 segment, UDP에서 사용하는 패킷을 datagram이라고 한다.

 

각각의 특징을 알아보즈아 ~ 

 

TCP (Transmission Control Protocol)

  • 연결 지향
    • 데이터를 전송하기 전, 먼저 두 호스트의 전송 계층 사이에 논리적 연결을 설립
    • 그 후 데이터 전송하고 완료했으면 연결 해제
    • connection setup → data transfer → connection termination
    • 3 way handshaking 방식으로 연결, 4 way handshaking 방식으로 연결 해제
  • 높은 신뢰성 (신뢰성이 중요함)
    • 오류 제어, 흐름 제어, 혼잡 제어
  • 많은 양의 오버헤드
    • 많은 일들을 하기 때문에 시간이 오래 걸림
  • segment 단위

 

UDP (User Datagram Protocol)

  • 비연결형, 비신뢰성
    • TCP에 비해 연결 3단계, 제어 3종 세트 이런 거 없이 그냥 주고 받음
  • 실시간 중요
  • 적은 양의 오버헤드
    • 추가적인 일 없이 그냥 연결하기 때문에 빠름
    • 그래서 실시간 전송에 유용
  • datagram 단위

 

예시 상황

  • 매우 큰 문서파일을 인터넷을 통해 다운받고 있는 상황에 유용한 프로토콜은?

→ 문서 파일을 훼손 없이 정확히 받는 것이 중요하기 때문에 연결형, 신뢰성의 TCP가 유용하다.

 

 

  • live방송과 같이 실시간 상호작용을 하는 응용프로그램을 사용하는 상황에 유용한 프로토콜은?

→ 빠른 속도로 실시간으로 데이터를 받는 것이 중요하기 때문에, 비연결형, 비신뢰성의 UDP가 유용하다.

 

저작자표시 (새창열림)

'CS > 네트워크' 카테고리의 다른 글

[CS - 네트워크] 검색창에 “www.google.com”을 검색하면 네트워크에서 벌어지는 일 (네트워크 관점)  (0) 2023.02.20
[CS - 네트워크] HTTP (개념, 구조, method, status code 등)  (0) 2023.02.20
[CS - 네트워크] 쿠키와 세션 (Cookie, Session)  (0) 2023.02.19
[CS - 네트워크] 3-way handshaking, 4-way handshaking  (0) 2023.02.14
[CS - 네트워크] OSI 7계층과 TCP/IP 4계층 (또는 5계층)  (0) 2023.02.14
    'CS/네트워크' 카테고리의 다른 글
    • [CS - 네트워크] HTTP (개념, 구조, method, status code 등)
    • [CS - 네트워크] 쿠키와 세션 (Cookie, Session)
    • [CS - 네트워크] 3-way handshaking, 4-way handshaking
    • [CS - 네트워크] OSI 7계층과 TCP/IP 4계층 (또는 5계층)
    itisjustK
    itisjustK
    https://www.instagram.com/onttaste

    티스토리툴바