-
외워서 끝내는 네트워크 핵심 이론 - 섹션 4공부/네트워크 2023. 6. 23. 16:47
*TCP / UDP
- TCP : 연결지향, 연결 순서에 따라 상태가 변한다
- UDP : 수신자의 상태 여부에 관계 없이 송신한다
*TCP 연결 과정
- 3 Way Handshaking
- 물리적으로 연결하는 것이 아닌 가상으로 연결
- 순서
0. Server는 Client의 요청을 받기위해 대기한다
( Server : Listen )
1. SYN : Client의 Sequence number를 통신을 위해 Server에 전달
( Client : SYN_SENT )
2. ACK + SYN : Server는 Client의 Sequence number + 1 와 Server의 Sequence number 전달
( Server: SYN_RECEIVED )
- ACK = Sequence number + 1
3. ACK : Client는 Server에 Sequence number + 1 를 전달한다
( Client : ESTABLISHED )
4. Server는 Cilent의 ACK를 받고 ESTABLISHED가 된다
( Server : ESTABLISHED )
*TCP 연결 종료 과정
0. 클라이언트가 종료를 요청한다
*서버가 종료를 하는 경우는 문제가 있는 것으로 보인다
1. FIN(Finish) + ACK : Client가 Server에 종료 요청을 전달한다
( Client : ESTABLISHED -> FIN_WATE1 )
2-1. ACK : Server는 Client에게 종료에대한 응답한다
( Server: ESTABLISHED -> CLOSE_WAIT )
2-2. Client는 ACK를 받고 상태를 FIN_WAIT2가 된다
( Client : FIN_WAIT2)
3. FIN + ACK : 이제 Server가 Client 에 종료 요청을 전달
( Server: LAST_ACK)
4. ACK : Cilent는 FIN + ACK를 받고 응답 ACK를 보낸 뒤 연결이 종료될 TIME_WAIT가 된다
( Server : TIME_WAIT ) *TIME_WAIT는 최초의 연결 요청을 한 곳에서 발생한다
5. Server가 ACK를 받으면 연결이 종료가 된다
( Server : CLOSED)
( Client : CLOSED )
*TCP / UDP Header
*TCP

TCP - Source Port, Destination Port : 출발, 도착 포트 번호
*포트 번호는 : 2^16 제곱 0 ~ 65335의 범위가 가능하며 0과 65335는 사용이 안된다
- Sequence Number : Data의 크기
- Acknowledgment Number : TCP 연결 요청시 보내는 번호
- Header Length : 패킷의 IHL과 동일한 해더의 길이
- Code Bits : Flags, ACK, FIN등의 요청의 형태들이 있다
- Window : 수신측의 현재의 버퍼의 남은 크기
- Checksum : 데이터 손상을 확인하는 공간
*UDP

UDP '공부 > 네트워크' 카테고리의 다른 글
외워서 끝내는 네트워크 핵심 이론 - 섹션 5(웹 서비스 구조 기본이론) (0) 2023.06.24 외워서 끝내는 네트워크 핵심 이론 - 섹션 5 (0) 2023.06.24 외워서 끝내는 네트워크 핵심 이론 - 섹션 3 (0) 2023.06.20 외워서 끝내는 네트워크 핵심 이론 - 섹션 2 (0) 2023.06.19 외워서 끝내는 네트워크 핵심 이론 - 섹션 1 (0) 2023.06.18