Computer Networking: A Top-Down Approach, 7th Edition
Computer Networking
A Top-Down Approach
Seventh Edition
을 참고하여 작성하였습니다.
TCP ( Transmission Control Protocol )
말그대로 전송 제어 프로토콜이다.
Transmission Control Protocol을 줄여 TCP라고 부른다.
TCP는 OSI 7계층에서 4계층인 전송 프로토콜에 해당한다.
Internet Protocol인 IP와 함께 쓰인다. 흔히들 TCP/IP라고 칭한다.
TCP/IP에서 TCP는 데이터의 조각들을 reliable하게 전송하기 위한 프로토콜이고,
IP는 데이터를 빠르게 목적지까지 전송하기 위한 프로토콜이다.
(TCP에서 이러한 데이터의 조각들을 TCP Segment라고 칭한다.)
인터넷 상에서, 이를 묶어서 데이터 통신에 사용하는 것이 TCP/IP 프로토콜이다.
TCP Segment 구조
특징
연결형서비스
연결형서비스로 가상회선방식을 사용한다.
3-way handshaking, 4-way handshaking 을 생각해보면 된다.
통신을 시작하기 전에 논리적인 경로를 3-way handshaking을 통해 수립하며,
통신을 종료하기 전에 논리적인 경로를 4-way handshaking을 통해 해제한다.
이러한 방식을 Connect Oriented 방식이라고 부르기도 한다.
흐름제어 (Flow Control)
데이터의 처리속도를 제어한다.
이를 제어함으로써, 수신자가 데이터를 받는 데에 있어 오버플로우 발생을 방지한다.
segement 구조에서 receive window가 receiver가 얼만큼의 데이터를 받을 수 있는지에 대한 정보를 나타낸다.
혼잡제어 (Congestion Control)
네트워크 내에서의 데이터 양을 제어함으로 통신의 혼잡/부하가 생기는 것을 방지한다.
전이중, 점대점 방식 (Full-Duplex, Point-to-Point)
전이중 방식: 양방향으로 전송/수신이 가능한 쌍방향 통신방식
점대점 방식: 통신을 하는 두 객체간 1:1 연결이 되어있는 방식
Reliable한 Transmission
위와 같이 timer가 만료되면, 재전송하는 등의 방식으로 TCP는 전송한 세그먼트의 도착을 보장한다.
즉, 전송의 Reliability를 보장해준다.
UDP ( User Datagram Protocol )
Connectionless Transport라고 불린다.
전송계층에 속해있으며, TCP와 달리 굉장히 단순하다.
UDP Segment 구조
상대방이 데이터를 수신했는지 말았는지 여부는 UDP에서 중요하지 않다.
그저 보냈다는 것... 그것이 중요할 뿐.
특징
비연결형 서비스
비연결형, 즉 Connectionless한 특징을 갖는다.
TCP와 달리, 논리적인 경로를 수립할 필요가 없으므로 3-way handshaking 같은 절차가 존재하지 않는다.
흐름제어X, 혼잡제어X, 데이터 전송보장X, 순서 보장X
TCP에서 제공하는 Reliability와 관련된 기능을 제공하지않는다.
Checksum을 활용하여 최소한의 오류만 검출한다.
때문에 TCP와 비교하여 빠른 속도와 적은부하를 갖는다.
- 실시간 스트리밍, DNS 등에 사용된다. ( 신뢰성 < [속도, 성능] 인 경우에 사용 )
점대점, 브로드캐스팅, 멀티캐스팅
TCP와 달리, 점대점 통신뿐만 아니라
- 1:N 관계의 브로드캐스팅 방식
- N:M 관계의 멀티캐스팅 방식
모두 지원한다.
'단단해지기 > Computer Science' 카테고리의 다른 글
[Network] HTTP와 HTTPS (0) | 2021.04.13 |
---|---|
[OS] 캐시 메모리 (2) | 2020.11.03 |
[Algorithm] 깊이우선탐색 DFS 에 대하여 (1) | 2020.09.07 |