❗ data transfer service
인터넷에서 제공하는 data transfer service는 2가지가 존재한다.
1. connetion-oriented service
- 대표적으로 tcp(transport connect protocol)이다.
- tcp는 크게 3가지 기능을 제공한다.
1) reliable, inorder byte stream data transfer - 신뢰성을 확보한다.
2) flow control - data를 받는 receiver의 데이터 소화 역량을 고려하여 통신한다.
3) congestion control - 네트워크 환경의 혼잡도를 고려하여 통신한다.
2. connectionless service
- 대표적으로 UDP(user datagram protocol)이다.
- UDP는 특별한 기능을 제공하지 않는다.
1) connetionless
2) unreliable
3) no flow control
4) no congestion control
- UDP가 아무런 기능을 보장해주지 않기때문에 왜 UDP를 사용하는지에 대해 의문을 품을 수 있다. 음성통신의 경우 UDP를 사용하는데 음성의 일부분이 손실된다고 하더라도 인간의 청각이 그렇게 민감하지 않기때문에 UDP를 사용한다고 한다. TCP가 많은 기능을 수행하는 만큼 UDP는 그보다 빠르다.
❗ What is protocol?
TCP와 UDP모두 protocol인데 그렇다면 protocol이란 무엇인가?
- 사람과 사람이 대화할때 대화의 방식, 스타일, 추구하는 가치관 등이 안맞을 경우 대화가 어렵다. 서로 익숙하고 비슷한 사람일수록 대화가 잘 통하 수 있다. 이처럼 네트워크 노드간의 통신에서도 대화의 방식이 존재하는데 이것이 protocol이다. protocol은 통신의 방식을 약속한 것이다. 서로 protocol이 맞지 않으면 통신이 불가능하다.
'computer science > Network' 카테고리의 다른 글
[network] TCP의 신뢰성 확보를 위한 Timeout 한방정리 / Fast Retransmission (0) | 2022.10.27 |
---|---|
[network] TCP pipeline protocol의 개념적 접근 방법 2가지, Go-Back-N과 Selective Repeat (0) | 2022.10.26 |
[network] TCP reliable principle, 신뢰성 확보를 위한 원칙 (0) | 2022.10.22 |
[network] Transport layer의 기본 제공기능 (0) | 2022.10.22 |
[network] router의 데이터 전달방식 2가지 (0) | 2022.10.19 |