TCP(Transmisstion Control Protocol)은 높은 신뢰성을 갖고 있으며, 연결의 설정과 해제를 담당하는 프로토콜이다.
역할
데이터를 전송하기전 양 종단 간의 연결설정(3way handshake)
연결 설정 후 가상회선 생성
특징
높은 신뢰성(속도 느림)
가상회선 연결방식
연결의 설정과 해제
데이터 흐름 제어
목적지 포트 번호(well known port)
20, 21 : FTP
22 : SSH
53 : DNS
443 : HTTPS
flag
SYN - 세션을 설정하는데 사용되며 초기에 시퀀스 번호를 보내고 시퀀스 번호는 임의적으로 생성해서 보냄
ACK - 받은 데이터의 바이트 값
FIN - 세션 종료
RST - 재설정, 비 정상적인 세션 연결 끊기
URG - 긴급한 데이터가 있으면 1 이 표시됨
PSH - 대화형 트래픽에 사용되는 것으로 버퍼가 채워지기를 기다리지 않고 데이터를 전달
3-way Handshake
1. 클라이언트는 임의 seq번호를 포함해서 SYN플래그를 송신한다.
2. 서버는 seq번호가 있는 SYN플래그를 받으면 seq번호를 ACK에 저장하고 1을 더해 SYN/ACK 플래그를 보넨다. seq번호는 SYN플래그에 대응하는 임의 번호 부여해 전송한다.
3. 클라이언트는 SYN플래그를 받고 1을 더해서 ACK번호로 전송한다.
'네트워크 기초 이론' 카테고리의 다른 글
[네트워크] 라우팅 프로토콜 RIP, OSPF, IGRP (0) | 2024.09.02 |
---|---|
NAT 통신 과정, DNS 서버 (2) | 2024.03.14 |
ARP (1) | 2024.03.14 |
[네트워크] TCP/IP 계층 모델, 스위치 (1) | 2024.03.14 |
OSI 7계층 (15) | 2024.03.13 |