카테고리 없음

#5 TCP와 UDP

kmsoon 2024. 5. 2. 17:06

#웹
모든 프로그램은 웹에서 돌아간다.
 - 인터넷 : 멀리 있어도 컴퓨터끼리 통신할 수 있게 되었다.
 - 해저 광케이블
 - 인공위성
 - 이름에 걸맞는 World Wide Web(WWW) 구축

#IP(Internet Protocol)
인터넷 프로토콜 IP(Internet Protocol)
 - 인터넷을 통한 통신규약
 - 많은 단계를 거쳐서 데이터를 전달

IP 주소
 - 지정한 IP 주소에 데이터를 패킷(Packet) 단위로 전달한다.
 
IP 방식의 문제점
 - 비연결성 : 수신 대상의 상태에 상관없이 전송
 - 비신뢰성 : 복잡한 과정 때문에 데이터 소실 발생
 - 용량이 커서 나뉘어진 패킷들이 도착하는 순서가 뒤바뀜
 - 해결 방법으로 TCP가 제시됨

#TCP(Transmission Control Protocol)
서버와 클라이언트간에 데이터를 신뢰성 있게 전달하기 위해 만들어진 프로토콜
 - 현재 대부분 TCP를 사용하여 데이터 통신을 한다.

3 Way HanShake
 - 통신방법
   1. client to server : SYN
   2. cerver to client : SYN, ACK
   3. client to server : ACK
   - SYN(Synchronize sequence numbers) 접속요청
   - ACk(Acknowledgment) 요청수락 : 요청수락과 함께 데이터 전송

#UDP(User Datagram Protocol)
UDP는 TCP와 같은 전송계층 프로토콜
단, UDP는 비연결형, 신뢰성이 없는 전송 프로토콜 → 기능이 없는 만큼 속도가 빠르다.
 - IP 방식과 거의 비슷하다. 추가적인 기능이 거의 없다.
 - IP와 차이점으로 PORT가 존재한다.
 - 데이터 무결성 검사 -> 체크섬

TCP와의 차이점
 - UDP가 훨씬 속도가 빠르다.
 - TCP는 신뢰성이 있지만 연결하는 과정, 데이터 전송에 시간이 많이 소요된다.
 - TCP는 현재 단계 이상의 최적화를 할 수 없다.

사용되는 곳
 - 실시간 스트리밍 서비스
 - 온라인 게임
 - 인터넷 전화