Keyword
- 연결지향(connection-oriented): 송/수신기 사이의 물리적인 연결이 아닌 논리적인 연결을 의미하는 개념
- 핸드셰이크(handshake): 통신 관련 분야에서 둘 이상의 장치가 연결/단절을 위해 선행하는 약속된 협상 과정
- 최대 세그먼트 크기(Maximum Segment Size, MSS): TCP가 세그먼트 한 개로 보낼 수 있는 최대 데이터 크기
- 전이중 통신(full-duplex): 송신과 수신이 동시에 가능한 통신 방식(참조: https://ko.wikipedia.org/wiki/이중통신)
- 혼잡 윈도우(congestion window): 송신측에서 ACK 수신 없이 연속적으로 전송할 수 있는 최대 데이터 양
- AIMD (Additive Increase and Multiplicative Decrease): 혼잡 윈도우(congestion window)를 증가시킬 때는 선형적으로, 감소시킬 때는 지수적으로 감소시키는 TCP 혼잡제어의 기본 원칙 (https://en.wikipedia.org/wiki/Additive_increase/multiplicative_decrease)
TCP(Transmission Control Protocol)
- Connection-oriented service
- 신뢰성, 순차적 전송
- 송신자와 수신자가 데이터를 교환하기 전에 서로의 상태를 점검
- Pipelined transmission
- Window size가 TCP 혼잡, 흐름 제어에 의해 결정
- 혼잡제어(congestion control)
- 네트워크의 혼잡을 막기위해 전송속도를 제어
- 흐름제어(flow control)
- 송신자는 수신자의 데이터 처리 속도를 고려하여 전송
- MSS: Maximum segment size
- 연결 수립 시 보낼 수 있는 최대 segment 크기
- Full-duplex connection
- 양방향 통신
TCP Segment 구조
Data offset = Header length: options에 의해 Header의 크기 변경
UDP Datagram segment 구조
- Seq number
- 세그먼트의 데이터의 첫 번째 바이트의 바이트 스트림 숫자
- Ack number
- 수신자에게 예상되는 다음 세그먼트의 시퀀스 번호
- Cumulative ACK
- N+100과 N+199를 동시에 받으면 N+200의 ACK만 전송
TCP Reliable Data Transfer
TCP는 신뢰성이 없는 IP의 서비스 위에서 신뢰성 있는 데이터 전송 서비스를 지원함.
Pipelined segments
Cumulative acks
Single retransmission timer
- Go-back-N 과 유사
- Cumulative ack
- Single Transmission timer
- Go-back-n은 순서에 맞지 않은 데이터가 들어오면 폐기..
- Selective Repeat와 유사
- TCP는 Buffer에 저장(Receive buffer가 허용하는 내)
'컴퓨터과학 > 0 +컴퓨터 네트워킹' 카테고리의 다른 글
[컴퓨터 네트워킹] 4-3) TCP Congestion control (0) | 2021.09.19 |
---|---|
[컴퓨터 네트워킹] 4-2) TCP Retransmit(TCP 재전송) (0) | 2021.09.19 |
[컴퓨터 네트워킹] 3-5) Packet Retransmission method(패킷 재전송 방법) (0) | 2021.09.09 |
[컴퓨터 네트워킹] 3-4) UDP 그리고 checksum (0) | 2021.09.08 |
[컴퓨터 네트워킹] 3-3) Port와 Socket이란? (0) | 2021.09.08 |