(모각소2024)컴퓨터 네트워크-UDP,TCP

LEEHYUNJE·2024년 8월 25일
0

아주대학교_모각소!

목록 보기
23/23

갑자기 생뚱맞게 왜 UDP와 TCP를 모각소 마지막주차에 공부하냐고 물어본다면 다다음주가 개강 이기 때문이다. 1년전에 배운 컴퓨터 네트워크 지식의 가장 기초인 UDP와 TCP를 한번 다시 복습해보도록하자.

소개

TCP(전송 제어 프로토콜) 및 UDP(사용자 데이터그램 프로토콜)는 인터넷을 포함한 네트워크를 통해 데이터를 전송하기 위해 네트워크 시스템에서 사용되는 기본 통신 프로토콜이다.

둘 다 OSI 모델의 전송 계층에서 작동하지만 서로 다른 특성을 가지며 애플리케이션의 요구 사항에 따라 다른 용도로 사용된다.

전송 제어 프로토콜(TCP)

1. 개요

TCP는 연결 지향 프로토콜이다. 즉, 데이터 전송이 시작되기 전에 발신자와 수신자 간에 안정적인 연결을 설정합니다. 이렇게 하면 데이터 패킷이 오류 없이 순서대로 전달된다.

2. 주요 기능

연결 지향(Connection-Oriented) : TCP에서는 데이터가 전송되기 전에 통신 장치 간에 연결이 설정되어야 합니다. 이 연결은 통신 세션 내내 유지된다.
신뢰할 수 있는 데이터 전송(Reliable Data Transfer): TCP는 오류 감지 및 수정을 위한 메커니즘을 제공한다. 이는 데이터가 손실이나 중복 없이 올바른 순서로 전달되도록 보장하고 손실된 패킷을 재전송한다.

흐름 제어(flow Control): TCP는 흐름 제어를 사용하여 장치 간 데이터 전송 속도를 관리하여 빠른 발신자가 느린 수신자를 압도하는 것을 방지한다.
혼잡 제어(congestion control): TCP는 네트워크 트래픽을 모니터링하고 데이터 전송 속도를 조정하여 패킷 손실과 성능 저하로 이어질 수 있는 네트워크 정체를 방지한다.

위 흐름제어와 혼잡제어의 방식에서 여러개 버전이 존재했던 것 같은데 나중에 꼭 복습하자.

분할 및 재조립(Segmenting and Reassembling): TCP는 전송 전에 데이터를 더 작은 세그먼트로 나누고 이러한 세그먼트가 대상에서 올바르게 재조립되는지 확인합니다.

3. 사용 사례

TCP는 데이터 전달의 신뢰성과 순서가 중요한 애플리케이션에 사용되는데, 일반적인 사용 사례는 다음과 같다.

웹 브라우징(HTTP/HTTPS)
이메일(SMTP, IMAP, POP3)
파일 전송(FTP)
원격 접속(SSH, Telnet)

사용자 데이터그램 프로토콜(UDP)

1. 개요

UDP는 비연결 프로토콜입니다. 즉, 데이터가 전송되기 전에는 연결을 설정하지 않습니다. 이로 인해 TCP에 비해 속도가 빠르지만 안정성이 떨어집니다.

2. 주요 기능

무연결(connectionless): UDP는 데이터를 전송하기 전에 연결을 설정하지 않는다. 이는 데이터가 올바른 순서로 또는 전혀 수신되는지 확인하지 않고 데이터그램이라고 하는 개별 패킷으로 데이터를 보낸다.
신뢰할 수 없는 데이터 전송(Unreliable Data Transfer): UDP는 오류 확인이나 수정 기능을 제공하지 않습니다. 패킷이 손실되거나 잘못된 순서로 도착하는 경우 프로토콜 자체는 데이터 재전송이나 재정렬을 시도하지 않는다.
낮은 오버헤드(Low Overhead): UDP는 연결 설정, 유지 관리 또는 광범위한 오류 확인 메커니즘이 필요하지 않으므로 TCP에 비해 오버헤드가 낮다. 이로 인해 데이터 전송 속도가 빨라진다.
브로드캐스팅 및 멀티캐스팅(Broadca): UDP는 브로드캐스트(네트워크의 모든 장치에 데이터 전송) 및 멀티캐스팅(여러 특정 장치에 데이터 전송)을 지원하므로 많은 수신자에게 동시에 데이터를 전달해야 하는 애플리케이션에 적합하다.

3. 사용 사례

UDP는 안정성보다 속도가 더 중요하고 일부 데이터 손실이 허용되는 애플리케이션에서 선호됩니다. 일반적인 사용 사례는 다음과 같다.

스트리밍 미디어(오디오, 비디오)
온라인 게임
VoIP(Voice over IP)
DNS(도메인 이름 시스템) 쿼리

TCP와 UDP 비교

기능: TCP UDP
연결 유형: 연결지향 무접속
신뢰성: 높음(배송 보장, 오류 수정) 낮음(배송 보장 없음, 수정 없음)
속도: 오버헤드로 인해 속도가 느려짐 최소한의 오버헤드로 더 빠르게
데이터 전송: 주문하고 신뢰할 수 있는 주문하지 않은 경우 배송이 보장되지 않음
사용 사례: 웹 브라우징, 이메일, 파일 전송 스트리밍, 게임, VoIP
오버헤드: 높음(연결 관리로 인해) 더 낮은(더 간단한 프로토콜)

결론

TCP와 UDP는 모두 컴퓨터 네트워킹 영역의 필수 프로토콜이며 각각 특정 목적을 수행한다. 신뢰성과 데이터 무결성이 가장 중요한 애플리케이션에는 TCP가 선택되는 반면, 속도가 중요하고 어느 정도의 데이터 손실이 허용되는 시나리오에는 UDP가 선호한다. 이러한 프로토콜 간의 차이점을 이해하면 네트워크 관리자와 개발자는 애플리케이션의 특정 요구 사항에 따라 적절한 프로토콜을 선택할 수 있다.


모각소 후기

오늘로서 모각소는 종료했다. 친구들 놀때 모각소 프로그램을 통해서 같이 모여서 소프트웨어를 진행하니 할때는 힘들었는데, 시간이 지나고 나니 뿌듯함이 더 큰 것같다. 하지만 내가 성장을 했는지 감이 오지 않는다. 하지만 하나를 알았다. 하기 싫은 것을 동기부여 영상을 보고 하게 된다면, 그것은 내 자신이 한것이 아닌 취한 내가한것. 하기 싫은 것을 그냥하는 것이 내가 한 것. 후자로 진행해야 그게 습관이 되고 그게 내것이 되는 느낌을 이번 방학에 많이 받았다. 2학기가 개강하고서는 내가 하는일을 좋아해보자.

profile
현재진행중

0개의 댓글