TCP(티씨피)는 "Transmission Control Protocol"의 약자로서, 인터넷에서 사용되는 표준 통신 프로토콜이다. 한국어로 번역하면, 전송 제어 프로토콜이라는 뜻이다. 흔히 TCP와 IP를 결합하여, TCP/IP라고 사용한다. TCP와 유사한 프로토콜로 UDP가 있다. TCP가 1:1 연결을 통해 안전하게 데이터
를 교환하는 것과 달리, UDP는 1:N 방식으로 한 쪽에서 다른 쪽으로 일방적으로 데이터를 전송한다. TCP가 전화와 비슷하다면, UDP는 일방적으로 보내는 소포와 비슷하다.
개요
특징
신뢰성
신쇠성을 제공하기 위해, 패킷이 손실되거나, 중복되거나, 네트워크 계층에서 순서의 바뀜 등이 없도록 보장해야한다. 또한, TCP는 신뢰성을 실현하기 위해 적극적 수신, 통지, 재전송 체계를 사용한다. TCP 하위계층인 IP계층의 신뢰성 없는 서비스에 대해 다방면으로 신뢰성을 제공한다.[1][2]
- 흐름제어
상대방이 받을 수 있을 만큼만 데이터를 효율적으로 전송하는 것을 의미한다. TCP 데이터 세그먼트를 송수신하는 컴퓨터는 중앙처리장치(CPU)와 네트워크 대역폭의 차이로인해 서로 다른 데이터 속도로 작동할 수 있다. 결국 수신자가 처리할 수 있는것처럼 훨씬 더 빠른 속도로 송신자가 데이터를 보낼 가능성이 많다. TCP는 송신자가 보낸 데이터의 양을 제어하는 흐름제어 메커니즘을 구현한다. 흐름제어를 위해 슬라이딩 윈도우(Sliding Window) 방식을 사용한다. 이는 상대방이 수신 가능한 크기(Window size) 내에서 데이터를 연속해서 전송하는 방식으로 매 세그먼트(Segment) 전송 시마다 수신 확인응답(ACK)을 수신한 후, 전송하게 되면 왕복시간이 길 경우 단위 시간당 데이터 전송량이 매우 떨어지므로 효율적으로 전송하기 위해 상대방이 받을 수 있는 범위 내에서 연속적으로 전송한다.[1][3]
- 오류제어
데이터의 오류나 누락없이 안전한 전송을 보장하고, 오류 또는 누락이 발생했을 경우, 재전송을 수행하여 이를 보정한다.[3]
- 혼잡제어
네트워크의 혼잡 정도에 따라 송신자가 데이터 전송량을 제어하는 것을 의미한다. 혼잡정도에 대한 판단 기준은 데이터의 손실 발생 유무로 판단한다. 네트워크가 혼잡하다고 판단될 때 송신률을 감속한다. 또한, 전송한 데이터에 누락이 발생하면, 네트워크가 혼잡한 상태로 판단하여 전송량을 조절한다. 이에 따른 여러 장치들을 다양한 TCP 버전에서 마련하고 있다. 주요 활동기능은 느린시작, 혼잡회피, 수신 윈도우 및 혼잡 윈도우 크기 결정 등이 있다.[2][3]
다중화
한 라우터의 많은 프로세스가 TCP 통신 서비스를 동시에 사용할 수 있는 것을 뜻한다. 이들 프로세스는 같은 네트워크 인터페이스에서 통신할 수 있으므로, 네트워크 인터페이스의 IP 주소로 식별된다. 하지만 한 컴퓨터의 같은 네트워크 인터페이스를 사용하는 모든 프로세스는 공통의 IP 주소를 가지고 있다. 네트워크 인터페이스의 IP 주소외에도 더 많은 것이 필요하다. TCP는 TCP를 사용하는 응용 프로그램에 포트 번호값을 연계시킨다. 각 연결은 서로 다른 포트 쌍을 사용하므로, 이 연관성은 원격 컴퓨터의 응용 프로그램 프로세스들 사이에 여러 연결이 존재할 수 있게 한다. 응용 프로그램 프로세스에 대한 포트의 바인딩은 각 컴퓨터에서 독립적으로 처리된다.[1]
연결형 서비스
물리적으로 전용회선이 연결되어 있는 것처럼 가상의 연결통로를 설정하여 통신하는 방식이다. 응용 프로그램 프로세스는 TCP를 사용하여 데이터를 보낼 수 있는 상태가 되려면 먼저 연결을 설정해야 한다. 가상의 연결통로를 가상회선이라하는데, 가상회선방식은 물리적으로 전용회선이 연결되어 있는 것처럼 논리적으로 동작하는 방식이다. 논리적인 연결통로를 통해 데이터를 주고 받음으로써 데이터의 전송 순서를 보장해준다. 다른말로는 순서제어라고도 한다. 스트림 기반의 전송방식을 사용하고, 임의의 크기로 데이터를 나누어 연속해서 전송하는 방식을 사용한다.[1][3]
양방향성
종단 간 양 프로세스가 동시에 서로 세그먼트를 전달할 수 있다. 즉, 하나의 전송 선로에서 데이터가 동시에 양쪽 방향으로 전송될 수 있다는 것을 의미한다. 양방향 각각에 대해 송수신 버퍼 및 데이터 흐름용 순서번호를 유지한다.[1][2]
연결 과정
3-way handshake
UDP
User Datagram Protocol의 약자로, TCP와는 다르게 데이터를 패킷으로 나누고, 반대편에서 재조립하는 과정을 거치지 않으며, 수신지에서 받던, 받지 않던 상관하지않고, 데이터를 보내기만 한다.[4]
비교
각주
참고자료
같이 보기
이 TCP 문서는 인터넷에 관한 토막글입니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 이 문서의 내용을 채워주세요.
|
개발 : 프로그래밍, 소프트웨어, 데이터, 솔루션, 보안, 하드웨어, 컴퓨터, 사무자동화, 인터넷 □■⊕, 모바일, 사물인터넷, 게임, 메타버스, 디자인
|
|
인터넷
|
PC통신 • 그누텔라 • 네트워크 • 다크넷 • 다크웹 • 딥웹 • 무선인터넷 • 슈퍼피어 • 스타링크 • 아르파넷 • 아이투피(I2P) • 엑스트라넷 • 오버레이 네트워크 • 오투오(O2O) • 오프라인 • 온라인 • 온오프라인 • 유선인터넷 • 인터넷 • 인트라넷 • 초고속 인터넷 • 토어(토르) • 표면웹 • 프리넷 • 피투피(P2P) • 하이브리드 피투피(P2P) • 홈네트워크
|
|
인터넷 기술
|
ARP • DNS • FTP • G-클라우드 • HTTP • HTTPS • IPFS • IPv4 • IPv6 • IRC • IRI • ISBN • LDAP • MOIP • OpenSSL • OSI 7 계층 • RFC • RFID • SFTP • SOAP • SSH • SSL • SSO • TCP • TCP/IP • TLS • UCI • UDP • URI • URL • URN • VoIP • 강화 내부 게이트웨이 라우팅 프로토콜 • 검색 • 검색엔진 • 게이트웨이 • 경계 경로 프로토콜 • 내부 게이트웨이 라우팅 프로토콜 • 다운로드 • 데몬 • 라우팅 정보 프로토콜 • 백엔드 • 사물인터넷 • 서버 • 서버-클라이언트 • 서브넷마스크 • 세션 • 스트리밍 • 식별자 • 아이피(IP) • 업로드 • 에듀테크 • 온프레미스 • 원격 프로시저 호출(RPC) • 유비쿼터스 • 인터넷 기술 • 자율시스템 • 정보기술 • 정보통신 • 채팅 • 챗봇 • 최단경로 우선 프로토콜(OSPF) • 쿠키 • 크롤링 • 클라이언트 • 키워드 • 텔넷 • 토폴로지 • 트래픽 • 패킷 • 포털 • 포트 • 프런트엔드 • 프로토콜 • 프록시 • 해시태그
|
|
이메일
|
IMAP • POP3 • SMTP • 계정메일 • 네이버 메일 • 다음 메일 • 센드메일 • 스팸 • 스팸메일 • 스팸필터링 • 아웃룩 익스프레스 • 야후 메일 • 웹메일 • 이메일 • 지메일 • 카카오 메일 • 한메일 • 핫메일
|
|
웹
|
KWCAG • WCAG • 서핑 • 시맨틱 웹 • 오프라인 웹 • 웹 • 웹 1.0 • 웹 2.0 • 웹 3.0 • 웹개방성 • 웹서비스 • 웹접근성 • 웹접근성 인증마크 • 웹주소 • 웹표준 • 웹호환성 • 피드
|
|
웹사이트
|
BBS • GNB • LNB • UI/UX • 게시판 • 관리자 사이트 • 그래픽 사용자 인터페이스(GUI) • 누리집 • 대시보드 • 드롭다운 메뉴 • 랜딩 템플릿 • 랜딩 페이지 • 리더보드 • 마이홈피 • 메뉴 • 모달창 • 미니홈피 • 방명록 • 배너 • 사용자 경험(UX) • 사용자 인터페이스(UI) • 섹션 • 왼쪽메뉴 • 웹기획 • 웹사이트 • 웹페이지 • 인터페이스 • 쪽지 • 커뮤니티 • 탑메뉴 • 탭메뉴 • 템플릿 • 팝업 • 페이지 • 페이지뷰 • 햄버거 메뉴 • 호버 • 홈페이지 • 화면
|
|
웹브라우저
|
넷스케이프 • 모자이크 • 브라우저 • 브레이브 브라우저 • 블록체인 브라우저 • 사파리 • 삼성인터넷 • 스윙 • 엣지 • 오시리스 • 오페라 • 웨일 • 웹브라우저 • 인터넷 익스플로러(IE) • 크롬 • 파이어폭스 • 판도브라우저
|
|
인터넷 서비스
|
구글 • 구글 미트 • 구글챗 • 구글 행아웃 • 깃허브 • 네아로 • 네이버 • 네이버 웹툰 • 네이버 카페 • 넷플릭스 • 다음 • 라이코스 • 레진코믹스 • 메일루 • 멜론 • 바이두 • 바이트댄스 • 비트토렌트 • 빌리빌리 • 빙 • 소리바다 • 스포티파이 • 아마존 웹서비스(AWS) • 애플 • 야후 • 야후재팬 • 얀덱스 • 에버노트 • 에어비앤비 • 왓챠 • 웹소설 • 웹툰 • 유튜브 • 인스타툰 • 인터넷 서비스 • 잼라이브 • 줌 • 카카오 • 카카오 웹툰 • 카카오페이지 • 탑툰 • 텐센트 • 팟캐스트 • 패스 • 페이오니아 • 페이팔 • 해시넷 • 화상통화 • 화상회의
|
|
인터넷쇼핑
|
11번가 • 그립 • 네이버 쇼핑 • 네이버 쇼핑 라이브 • 라이브방송 • 라이브커머스 • 모바일쇼핑 • 스쉐라이브 • 스타일쉐어 • 아마존 • 알리바바 • 오픈마켓 • 옥션 • 온라인쇼핑 • 위메프 • 이베이 • 인터넷쇼핑 • 인터파크 • 전자상거래 • 지마켓 • 징동닷컴 • 카카오 쇼핑 • 카카오 쇼핑 라이브 • 커머스 • 쿠팡 • 쿠팡 라이브 • 타오바오 • 티몬
|
|
소셜 네트워크
|
SNS(소셜 네트워크 서비스) • 구글 블로거 • 네이버 밴드 • 네이버 블로그 • 디시인사이드 • 링크드인 • 마이크로블로그 • 맞팔 • 브런치스토리 • 블로그 • 소셜 네트워크 • 엑스 (트위터) • 웨이보 • 인스타그램 • 트루스소셜 • 티스토리 • 팔로우 • 페이스북 • 플리커 • 핀터레스트
|
|
메신저
|
골프메신저 • 님버즈 • 대화방 • 두레이 • 디스코드 • 딩톡 • 라인 • 라인웍스 • 마이크로소프트 팀즈 • 메신저 • 버디버디 • 스냅챗 • 스노우 • 스카이프 • 슬랙 • 아이씨큐(ICQ) • 왓츠앱 • 웹메신저 • 위챗 • 잔디 • 직톡 • 카카오워크 • 카카오톡 • 카톡방 • 큐큐(QQ) • 탱고 • 텔레그램 • 틱톡 • 페이스북 메신저 • 플로우
|
|
도메인
|
네임서버 • 다국어도메인 • 도메인 • 레지스트라 • 레지스트리 • 아이피 • 인터넷주소 • 인터넷키워드 • 한글인터넷주소 • 후이즈
|
|
호스팅
|
메일호스팅 • 서버호스팅 • 웹호스팅 • 코로케이션 • 클라우드 • 파킹 • 포워딩 • 호스팅
|
|
위키
|
구스위키 • 나무위키 • 노스모크 • 더위키 • 디시위키 • 리그베다위키(엔하위키) • 리브레위키 • 미디어위키 • 바다위키 • 백괴사전 • 아이티위키 • 알파위키 • 엔하계 위키 • 요다위키 • 우만위키 • 위키 • 위키낱말사전 • 위키독스 • 위키문법 • 위키문서 • 위키문헌 • 위키미디어재단 • 위키백과 • 위키스 • 위키엔진 • 위키원 • 위키원드 • 위키트리 • 위키휴가 • 제이위키 • 제타위키 • 중국위키 • 팬덤(위키아) • 한국어 위키백과 • 한국위키미디어협회 • 항공위키
|
|
인터넷 사용자
|
가입 • 가입자 • 강퇴 • 계정 • 관리자 • 네트워크 관리자 • 네티즌 • 누리꾼 • 대기자 • 데이터베이스 관리자 • 등록자 • 디지털 원패스 • 로그아웃 • 로그인 • 방문자 • 블로거 • 블록체인 관리자 • 비회원 • 사용자 • 사이트 관리자 • 서버관리자 • 시삽 • 시스템 관리자 • 아이디(ID) • 웹관리자 • 웹마스터 • 유튜버 • 접속자 • 차단 • 최고관리자 • 탈퇴 • 탈퇴자 • 회원 • 휴면 • 휴면계정
|
|
인터넷 단체
|
IANA • ICANN • W3C • 다르파 • 유럽입자물리연구소(CERN)
|
|
위키 : 자동차, 교통, 지역, 지도, 산업, 기업, 단체, 업무, 생활, 쇼핑, 블록체인, 암호화폐, 인공지능, 개발, 인물, 행사, 일반
|
|