●TCP 와 UDP - 종단 시스템 사이의 IP 전달 서비스를 종단시스템에서 동작하는 두 프로세스간의 전달 서비스로 확장하는 것
- TCP(신뢰적인 데이터 전달) : 흐름제어, 순서번호, 확인응답, 타이머, 혼잡제어
- UDP(신뢰X) - loss에 관대함, 그러나!!!rate sensitive
●Why is there a UDP?
- 데이터 송신에 대해서 정교한 제어를 할 수 있다.
- 연결설정이 없다.
- 연결상태가 없다.(simple - sender, receiver만 존재)
- 작은 패킷 헤더 오버헤드
●신뢰적 데이터 전송 프로토콜
- stop & wait(즉시 응답)
- send <-> recieve => pipelining으로 성능향상
- pipelining : GBN(Go Back N) : 누적응답(cumulative ack - 연속적으로!n번까지는 잘 받음), sliding window protocol
SR(Selective Repeat) : 수신자에서 오류가 발생한 수신패킷만을 송신자가 다시 전송.
●TCP연결 - ex : Socket clientSocket = enw Socket("hostname", portNumber);
- three-way handshake
●TCP ACK generation
1. 기다리는 순서번호를 가진 순서에 맞는 세그먼트의 도착. 이미 확인된 기다리는 순서번호까지의 모든 데이터 수신
- 지연된 ACK. 또 다른 순서에 맞는 세그먼트의 도착을 위해 50ms까지 기다린다.
만약 다음 순서에 맞는 세그먼트가 이 기간에 도착하지 않으면 ACK를 보낸다.
2. 기다리는 순서번호를 가진 순서에 맞는 세그먼트의 도착. ACK전송을 기다리는 다른 하나의 순서에 맞는 세그먼트
- 즉시 두 개의 순서에 맞는 세그먼트를 ACK하기 위해, 하나의 누적된 ACK를 보낸다.
3. 기다리는 것보다 높은 순서번호를 가진, 순서가 틀린 세그먼트의 도착. 격차가 발견됨
- 즉시 기다리는 다음의 기대되는 바이트의 순서번호를 가리키는 중복 ACK를 보낸다.
4. 수신 데이터에서 격차를 부분적으로 또는 모두 채우는 세그먼트의 도착
- 즉시, 세그먼트가 격차의 낮은 쪽으로 시작하도록 제공하는 ACK를 보낸다.
'공부 > 네트워크' 카테고리의 다른 글
hidden problem & exposed-terminal problem(숨겨진 문제와 노출된 문제) (1) | 2011.01.19 |
---|---|
5. Link Layer and LANs (0) | 2011.01.11 |
4. Network layer (0) | 2010.12.23 |
2. Application layer (0) | 2010.12.23 |
1. 컴퓨터 네트워크와 인터넷 (0) | 2010.12.23 |