First of all - TCP provides reliable end to end data transfer.
It can easily enhanced at the application layer with SSL to provide security services,
and guaranteeing that all data will eventually get to it's destination.
electronic mail(SMTP), remote terminal access(Telnet), web(HTTP), and File transfer(FTP) applications are using TCP most likely.
Streaming multimedia (HTTP, RTP-real time transfer protocol) applications are using TCP or UDP,
Internet telephone - loss tolerant - application typically is using UDP.
In earnest, congestion control and flow control are two important mechanisms in TCP (Transmission Control Protocol) that help regulate the flow of data between two endpoints in a network. Here's a brief description of each:
- Congestion control: This mechanism is used to prevent network congestion by slowing down the rate at which data is transmitted when the network is congested. It is based on the idea of monitoring the network for signs of congestion and then adjusting the transmission rate accordingly. TCP implements congestion control by using a combination of techniques, including slow start, congestion avoidance, and congestion recovery.
- Slow start: In the beginning of a transmission, TCP starts by sending a small number of packets and then gradually increases the transmission rate until it detects signs of congestion.
- Congestion avoidance: Once congestion is detected, TCP reduces the transmission rate to avoid further congestion.
- Congestion recovery: If packets are lost or dropped due to congestion, TCP uses a mechanism called fast retransmit/fast recovery to quickly recover from the loss and resume normal transmission.
- Flow control: This mechanism is used to prevent the receiver from being overwhelmed by too much data. It is based on the idea of regulating the flow of data from the sender to the receiver. TCP implements flow control by using a sliding window protocol.
- Sliding window protocol: The receiver informs the sender about how much data it can receive by sending a window size value. The sender then sends data up to that window size and waits for an acknowledgement from the receiver before sending more data.
By implementing both congestion control and flow control, TCP ensures that data is transmitted efficiently and reliably between two endpoints in a network.
혼잡 제어 및 흐름 제어는 네트워크의 두 끝점 사이의 데이터 흐름을 조절하는 데 도움이 되는 TCP(전송 제어 프로토콜)의 두 가지 중요한 메커니즘입니다. 각각에 대한 간략한 설명은 다음과 같습니다.
혼잡 제어: 이 메커니즘은 네트워크가 혼잡할 때 데이터 전송 속도를 늦춤으로써 네트워크 혼잡을 방지하는 데 사용됩니다. 정체의 징후에 대해 네트워크를 모니터링한 다음 그에 따라 전송 속도를 조정한다는 아이디어를 기반으로 합니다. TCP는 느린 시작, 혼잡 회피, 혼잡 복구 등의 기술 조합을 사용하여 혼잡 제어를 구현합니다.
느린 시작: 전송이 시작될 때 TCP는 적은 수의 패킷을 보내는 것으로 시작한 다음 혼잡의 징후를 감지할 때까지 점차적으로 전송 속도를 높입니다.
혼잡 회피: 혼잡이 감지되면 TCP는 추가 혼잡을 피하기 위해 전송 속도를 줄입니다.
혼잡 복구: 혼잡으로 인해 패킷이 손실되거나 누락된 경우 TCP는 빠른 재전송/빠른 복구라는 메커니즘을 사용하여 손실을 신속하게 복구하고 정상적인 전송을 재개합니다.
흐름 제어: 이 메커니즘은 수신자가 너무 많은 데이터에 압도당하는 것을 방지하는 데 사용됩니다. 발신자에서 수신자로의 데이터 흐름을 규제한다는 아이디어를 기반으로 합니다. TCP는 슬라이딩 윈도우 프로토콜을 사용하여 흐름 제어를 구현합니다.
슬라이딩 윈도우 프로토콜: 수신자는 윈도우 크기 값을 전송하여 수신할 수 있는 데이터의 양을 발신자에게 알려줍니다. 그런 다음 보낸 사람은 해당 창 크기까지 데이터를 보내고 더 많은 데이터를 보내기 전에 받는 사람의 승인을 기다립니다.
혼잡 제어와 흐름 제어를 모두 구현함으로써 TCP는 데이터가 네트워크의 두 끝점 간에 효율적이고 안정적으로 전송되도록 합니다.
'Network' 카테고리의 다른 글
VPN 없이 private 망 도메인 접근하기 (PortForwarding) (0) | 2024.06.18 |
---|---|
ABR (Adaptive bitrate streaming) (0) | 2023.03.10 |
UDP vs TCP (Difference between UDP and TCP in Network) (0) | 2023.02.28 |
체크섬(checksum)과 패리티 비트(parity bit) (0) | 2023.02.28 |
transport layer services for self-study and summary (0) | 2023.02.28 |