일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- nexus
- 사용자 계정 관리
- 리눅스
- GIT
- 변수
- 함수
- dockerfile
- Azure
- AWS
- 클라우드
- go
- 명령어
- open ai
- 파이썬
- terraform
- aws사용자모임
- docker
- AI챗봇
- maven
- it기사
- git hub
- 표준 라이브러리
- 3티어 아키텍처
- awskrug
- Linux
- 프로세스 관리
- AI
- jenkins
- 애저
- python
- Today
- Total
We are Architect
2. TCP / UDP 본문
*TCP, UDP 란?
- 4 계층에서 사용하는 프로토콜이며 3 계층 IP기반으로 적용이 된다. 그렇기에 TCP/IP를 같이 부르기도 한다.
- [ TCP 란? ]
> TCP는 전송 제어 프로토콜로써 데이터 전송 시 안정적인 데이터 전송 및 제어를 하는 역할을 한다.
> 연결형 프로토콜 이라고 부르기도 한다.
> # 3-way handshaking
> 클라이언트 와 서버가 데이터를 주고 받기전 서로 준비를 하는 과정.
> 1) 클라이언트 >>> SYN >>> 서버
: 클라이언트가 서버에게 연결요청 신호를 보냄.
> 2) 클라이언트( SYN_SENT ) <<< SYN + ACK <<< 서버( SYN_RECEIVED )
: 서버가 클라이언트에게 연결요청 허락신호를 보냄.
> 2) 클라이언트( ESTABLISHED ) >>> ACK >>> 서버( ESTABLISHED )
: 양쪽이 ESTABLISHED 상태로 전환됨으로써 연결이 오고감.
> # 4-way Handshaking
> 클라이언트와 서버가 연결을 통신을 종료하기 위한 과정.
> 1) 클라이언트 >>> FIN >>> 서버
: 클라이언트가 서버에게 연결종료 신호를 보냄.
> 2) 클라이언트 <<< ACK <<< 서버( TIME_WAIT )
: 응답으로 서버가 클라이언트에게 종료 중 신호를 보냄.
> 3) 클라이언트 <<< FIN <<< 서버( TIME_WAIT )
: 서버가 클라이언트에게 종료완료 신호를 보냄.
> 4) 클라이언트 >>> ACK >>> 서버
: 클라이언트가 서버에게 종료확인 신호를 보냄.
> TCP는 데이터를 분할해서 전송한다.
> 데이터 추적 및 관리 기능 때문에 높은 신뢰성과 안정성을 가지고 있다.
> UDP 보다는 데이터 전송 속도가 느리다.
> 1 대 1 통신에 사용이 많이 된다.
- [ UDP 란? ]
> UDP는 유저 데이터 프로토콜로 신속성과 효율성에 초점을 맞춘 프로토콜이다.
> 비연결형 프로토콜이다.
> 데이터를 분할하지 않고 연속적으로 보낸다.
> 최소한의 오류검출 검사만 진행한다. 그렇기에 신뢰성이 떨어진다.
> TCP 보다 데이터 전송 속도가 빠르다.
> 1 대 N 통신에 사용이 많이 된다.
'네트워크' 카테고리의 다른 글
5. 서브넷팅 (0) | 2024.10.28 |
---|---|
4. IP란? (0) | 2024.10.26 |
3. TCP / UDP의 포트 목록 (0) | 2024.10.25 |
1. OSI 7계층에 대하여 (0) | 2024.10.19 |