제퍼넷 로고

TCP(전송 제어 프로토콜)란 무엇입니까? | TechTarget의 정의

시간

TCP(전송 제어 프로토콜)란 무엇입니까?

TCP(전송 제어 프로토콜)는 네트워크의 장치 간에 안정적인 데이터 전송을 보장하는 인터넷의 표준 프로토콜입니다. 이는 애플리케이션이 데이터를 교환할 수 있는 네트워크 대화를 설정하고 유지하는 방법을 정의합니다.

인터넷 프로토콜의 주요 통신 프로토콜 중 하나(IP) 제품군에서 TCP는 개방형 시스템 상호 연결(OSI) 모델. 컴퓨터가 보내는 방법을 정의하는 IP와 함께 작동합니다. 패킷 데이터를 서로에게 전달합니다. TCP와 IP는 인터넷을 정의하고 네트워크를 통한 성공적인 메시지 전달을 보장하는 기본 규칙입니다.

TCP는 웹 브라우징, 이메일, 파일 및 데이터 전송, P2P(Peer-to-Peer)와 같은 많은 애플리케이션의 기본 프로토콜입니다.P2P) 나누는.

[포함 된 콘텐츠]

TCP의 역사

인터넷의 출현은 전송 제어 프로토콜의 역사와 얽혀 있습니다. 다음은 TCP 역사의 주요 사건에 대한 간략한 타임라인입니다.

  • 1960. 컴퓨터 네트워킹 초기에는 서로 다른 컴퓨터 간의 통신을 용이하게 하기 위해 다양한 프로토콜이 만들어졌습니다. 네트워크 제어 프로그램과 같은 프로토콜이 사용되었습니다. ARPANET, 현대 인터넷의 선구자.
  • 1970대 초반. 에 작업 TCP / IP 스위트는 1970년대 초에 시작되었습니다. TCP/IP는 Vinton Cerf와 Bob Kahn이 발명한 것으로 널리 알려져 있습니다. 초기 버전은 미국 국방부(DoD)가 자금을 지원하는 다양한 연구 네트워크를 연결하기 위한 것이었습니다.
  • 1974. Cerf와 Kahn은 "패킷 네트워크 상호 통신을 위한 프로토콜"이라는 제목의 논문에서 TCP 사양을 설명했습니다. 연결 지향 통신의 기본 원리와 네트워크를 통한 전송을 위해 데이터를 패킷으로 분할하는 개념이 이 백서에 요약되어 있습니다.
  • 1978. 처음에는 TCP와 IP가 밀접하게 연결되어 있었습니다. 1978년에 프로토콜은 패킷 주소 지정 및 라우팅을 위한 IP와 신뢰할 수 있는 연결 지향 통신을 위한 TCP의 두 계층으로 분리되었습니다.
  • 1980. 1981년에 의견 요청 791 및 RFC 793 인터넷 엔지니어링 태스크 포스 표준화 된 IPv4 그리고 TCP. 이는 인터넷이 세계적인 네트워크로 진화하는 데 중요한 전환점이 되었습니다. 수년에 걸쳐 TCP는 다양한 문제를 해결하고 성능을 향상시키기 위해 개선되고 확장되었습니다. 여기에는 혼잡 제어 알고리즘 생성, 고속 네트워크 개선 및 프로토콜 정의 개정이 포함되었습니다.
  • 1990년대~2000년대. 액세스 가능한 IPv4 주소가 부족해지면서 IPv6 최우선 과제가 되었습니다. IPv6은 IP 주소 지정에 중점을 두고 있지만 전송 계층의 TCP 및 기타 프로토콜에 영향을 미칩니다.

TCP는 새로운 과제를 처리하고 성능을 개선하며 진화하는 네트워킹 환경에 적응하기 위한 지속적인 노력을 통해 계속 개발 및 표준화되고 있습니다.

TCP/IP의 4계층

TCP/IP 모델은 4개의 계층으로 구성되어 있으며 각 계층은 데이터 전송 프로세스의 특정 기능을 처리합니다.

TCP/IP 스택의 4개 계층은 다음과 같습니다.

  • 네트워크 액세스 계층. 네트워크 액세스 계층, 때로는 데이터 링크 계층, 인터넷을 통한 컴퓨터 통신을 가능하게 하는 네트워크 인프라를 관리합니다. 주요 구성 요소에는 장치 드라이버, 네트워크 인터페이스 카드, 이더넷 연결 및 무선 네트워크.
  • 인터넷 레이어. 인터넷 계층은 다양한 네트워크에서 데이터 패킷 주소 지정, 라우팅 및 조각화를 처리합니다. 인터넷 프로토콜을 사용하여 장치에 고유한 정보를 제공합니다. IP 주소 패킷이 의도한 위치에 도달하도록 보장합니다.
  • 전송 계층. 이 계층을 사용하면 장치가 서로 엔드투엔드 통신할 수 있습니다. 사용자 데이터그램 프로토콜(User Datagram Protocol)과 같은 프로토콜을 활용하여UDP) 및 TCP를 통해 데이터 패킷의 일관되고 체계적인 전달을 보장합니다. UDP는 더 빠른 비연결 통신을 가능하게 하는 반면, TCP 연결은 신뢰할 수 있는 연결 지향 통신을 제공합니다.
  • 애플리케이션 계층. 최상위 계층인 애플리케이션 계층은 특정 서비스 및 애플리케이션에 대한 지원을 제공합니다. FTP(파일 전송 프로토콜), 단순 메일 전송 프로토콜(SMTP) and HTTP.
TCP/IP layers diagram
TCP/IP 스택의 4개 계층.

전송 제어 프로토콜의 작동 방식

TCP는 연결 지향 프로토콜입니다. 즉, 각 끝의 애플리케이션이 메시지 교환을 완료할 때까지 연결이 설정되고 유지됩니다.

TCP는 다음 작업을 수행합니다.

  • 악수. TCP는 송신자와 수신자가 제어 패킷을 교환하여 동기화하고 연결을 설정하는 3방향 핸드셰이크를 설정합니다. 핸드셰이크에는 창 크기 및 초기 시퀀스 번호와 같은 연결 매개변수가 포함됩니다.
  • 데이터 전송. 연결이 설정되면 TCP는 애플리케이션 데이터를 네트워크가 전달할 수 있는 패킷이나 세그먼트로 나누는 방법을 결정합니다. 여기에서 각 데이터 세그먼트에 시퀀스 번호가 할당됩니다.
  • 승인. TCP는 네트워크 계층으로 패킷을 보내고 네트워크 계층에서 패킷을 받아들입니다. 패킷을 수신한 후 수신 장치는 승인(ACK) 보낸 사람에게 다시 연락하여 수령을 확인합니다. 보낸 사람이 지정된 제한 시간 내에 ACK를 받지 못하면 데이터 세그먼트를 다시 전송합니다.
  • 흐름 제어. TCP가 관리 흐름 제어 발신자와 수신자 간의 데이터 전송 속도를 관리합니다. 흐름 제어는 수신기가 즉시 처리할 수 없는 데이터로 넘쳐나는 것을 방지합니다.
  • 오류 처리. TCP는 오류 없는 데이터 전송을 제공하기 위해 삭제되거나 왜곡된 패킷의 재전송을 처리합니다. 따라서 오류가 감지된 모든 데이터 세그먼트는 안정적인 전달을 위해 재전송됩니다.
  • 연결 종료. TCP는 4방향 핸드셰이크를 통해 데이터 전송이 완료되면 연결을 종료합니다.

OSI 통신 모델에서 TCP는 전송 계층인 계층 4의 일부와 세션 계층인 계층 5의 일부를 다룹니다.

웹 서버가 Hypertext Markup Language(HTML) 파일을 클라이언트에 전송하는 경우 HTTP를 사용하여 이를 수행합니다. HTTP 프로그램 계층은 TCP 계층에 연결을 설정하고 파일을 보내도록 요청합니다. TCP 스택은 파일을 데이터 패킷으로 나누고 번호를 매긴 다음 전달을 위해 개별적으로 IP 계층에 전달합니다.

전송의 각 패킷에는 동일한 소스 및 대상 IP 주소가 있지만 패킷은 여러 경로를 따라 전송될 수 있습니다. 클라이언트 컴퓨터의 TCP 프로그램 계층은 모든 패킷이 도착할 때까지 기다립니다. 그런 다음 누락된 패킷 번호를 기반으로 수신한 패킷을 확인하고 그렇지 않은 패킷의 재전송을 요청합니다. 그런 다음 TCP 계층은 패킷을 파일로 조합하고 해당 파일을 수신 애플리케이션에 전달합니다.

TCP/IP 대 OSI 모델

이 어플리케이션에는 XNUMXµm 및 XNUMXµm 파장에서 최대 XNUMXW의 평균 전력을 제공하는 OSI 모델 및 TCP/IP 공통점이 많다. 예를 들어, 둘 다 다양한 프로토콜이 서로 및 네트워크 통신과 상호 작용하는 방식을 이해하기 위한 기반을 제공합니다. 두 모델 모두 전송을 위해 데이터가 각 계층의 헤더와 트레일러로 패키징되고 특정 기능을 정의하는 수준을 갖는 캡슐화 아이디어를 지원합니다.

그러나 두 모델 모두 다음을 포함하여 많은 차이점이 있습니다.

  • 특성. 주요 TCP/IP 모델과 OSI 모델의 차이점 특정 수준입니다. OSI 모델은 데이터가 교환되는 방식을 보다 추상적으로 표현한 것이며 특정 프로토콜에만 국한되지 않습니다. 일반적인 네트워킹 시스템을 위한 프레임워크입니다. TCP/IP 스택은 보다 구체적이며 데이터 교환에 사용되는 주요 프로토콜 세트로 구성됩니다.
  • 프로토콜 의존성. OSI 모델은 추상적이고 기능에 더 기반을 두고 있으며 프로토콜에 종속되지 않습니다. TCP/IP 스택은 구체적이고 프로토콜 기반입니다.
  • 레이어 수. 또한 OSI 모델에는 7개의 계층이 있는 반면 TCP/IP 모델에는 4개의 계층만 있습니다.
  • 개발 및 사용. DoD가 개발한 TCP/IP 모델은 OSI 모델보다 앞서며 사실상 인터넷 통신의 표준이 되었습니다. OSI 모델은 국제표준화기구(International Organization for Standardization)에 의해 개발되었으며 개념적 모델에 가깝고 실제로는 덜 널리 사용됩니다.
  • 복잡성. OSI 모델은 더 많은 레이어와 상세한 기능 분석을 특징으로 하는 복잡하고 상세합니다. 이에 비해 TCP/IP 모델은 더 단순하고 능률적이어서 인터넷 통신에 필요한 필수 기능을 강조합니다.
comparison table between OSI and TCP/IP.
TCP/IP와 OSI 모델의 다양한 스택을 비교해 보세요.

TCP 대 UDP

TCP와 UDP는 인터넷을 통해 데이터를 전송하는 데 사용되는 두 가지 다른 프로토콜입니다. TCP와 UDP의 주요 차이점은 다음과 같습니다.

  • TCP는 패킷이 도착한 후 재전송하고 재정렬하는 오류 감지 프로세스를 통해 안정적인 전달을 제공합니다. 그러나, 그것은 소개할 수 있습니다 숨어 있음 TCP 스트림에서. 반면 UDP는 데이터를 재전송하지 않습니다. VoIP(voice over IP), 스트리밍 비디오, 게임과 같이 시간에 매우 민감한 애플리케이션은 일반적으로 UDP를 사용합니다. UDP가 패킷 순서를 바꾸거나 누락된 데이터를 재전송하지 않음으로써 대기 시간과 지터를 줄여주기 때문입니다.
  • TCP와 달리 UDP는 두 애플리케이션이 왕복 통신을 완료했는지 여부를 감지할 방법이 없기 때문에 데이터그램 프로토콜 또는 연결 없는 프로토콜로 분류됩니다.
  • UDP는 TCP처럼 잘못된 데이터 패킷을 수정하는 대신 해당 패킷을 삭제하고 보다 자세한 오류 감지를 위해 애플리케이션 계층에 맡깁니다.
  • UDP 데이터그램의 헤더에는 TCP 헤더보다 훨씬 적은 정보가 포함되어 있습니다. 또한 UDP 헤더는 대기 시간 단축을 위해 전송 계층에서 훨씬 적은 처리를 거치게 됩니다.
main differences between TCP and UDP table
TCP와 UDP의 주요 차이점을 비교해 보세요.

TCP는 어떤 용도로 사용되나요?

TCP는 서버와 클라이언트 간의 안전한 전송을 보장하는 방식으로 데이터를 구성하는 데 사용됩니다. 이는 양에 관계없이 네트워크를 통해 전송되는 데이터의 무결성을 보장합니다. 이러한 이유로 전송된 모든 데이터가 도착해야 하는 다른 상위 수준 프로토콜에서 데이터를 전송하는 데 사용됩니다.

이러한 프로토콜의 예는 다음과 같습니다.

  • 보안 쉘, FTP, 텔넷. P2P 파일 공유의 경우 텔넷의 이 경우 다른 사용자의 컴퓨터에 로그인하여 파일에 액세스합니다.
  • SMTP, 우체국 프로토콜, 인터넷 메시지 액세스 프로토콜. 이메일 메시지를 보내고 받기 위해.
  • HTTP. 웹 액세스용.

이러한 예는 모두 TCP/IP 스택의 애플리케이션 계층에 존재하며 전송 계층의 TCP로 데이터를 아래쪽으로 보냅니다.

TCP의 몇 가지 중요한 사용 사례는 다음과 같습니다.

  • 안정적인 데이터 전송. TCP의 주요 기능 중 하나는 오류 감지, 패킷 재전송 및 데이터 패킷 순서 지정을 제공하여 안정적인 데이터 전달을 보장하는 것입니다. 이는 데이터가 오류 없이 올바른 순서로 수신되도록 보장합니다.
  • 웹 브라우징. TCP가 없으면 웹 브라우징이 불가능합니다. TCP는 웹 브라우저인 클라이언트와 웹 사이트를 호스팅하는 서버 사이에 네트워크 연결을 설정합니다. 이는 리소스와 웹 페이지가 일관되고 올바른 순서로 제공되도록 보장합니다.
  • 이메일 전달. TCP는 이메일 전달에도 사용됩니다. 클라이언트와 클라이언트 간의 연결을 설정함으로써 이메일 서버, TCP는 이메일이 안정적으로 전달되고 수신되도록 보장합니다.
  • 파일 전송. TCP는 FTP와 같은 파일 전송 프로토콜에 자주 사용됩니다. 보안 파일 전송 프로토콜. 파일이 오류 없이 안정적으로 전송되도록 보장합니다.
  • 원격 액세스. TCP는 또한 원격 접속에 사용 Telnet 및 SSH를 포함한 프로토콜을 사용합니다. 이러한 프로토콜을 사용하면 사용자는 보안 연결을 통해 원격으로 컴퓨터나 네트워크 장치에 액세스하고 제어할 수 있습니다.
  • 데이터베이스 액세스. TCP는 네트워크를 통해 데이터베이스에 액세스하는 데 사용됩니다. 이는 쿼리 및 데이터베이스 응답의 안전하고 신뢰할 수 있는 전송을 보장합니다.
  • 메시징 및 채팅. TCP는 메시징 및 채팅 애플리케이션에 사용되어 사용자 간의 안정적인 메시지 전달을 보장합니다.
  • 가상 사설망. TCP는 다음과 같이 활용됩니다. VPN 원격 사용자를 개인 네트워크와 연결하는 안전하고 신뢰할 수 있는 연결을 생성합니다.

TCP의 장점은 무엇입니까?

TCP는 인터넷을 통해 정보가 전달되는 방식에 대한 규칙과 표준 절차를 설정하기 때문에 중요합니다. 이는 현재 존재하는 인터넷의 기반이며, 관련된 위치, 하드웨어 또는 소프트웨어에 관계없이 데이터 전송이 균일하게 수행되도록 보장합니다.

TCP는 유연하고 확장성이 뛰어나므로 새로운 프로토콜을 도입할 수 있습니다. 그것은 그들을 수용할 것입니다. 또한 이는 비독점적이므로 어느 개인이나 회사도 이를 소유하지 않습니다.

TCP는 다음과 같은 장점을 제공합니다.

  • 신뢰할 수 있음. 위에서 언급한 것처럼 TCP는 오류 감지, 누락된 패킷에 대한 패킷 재전송 및 패킷 순서 지정 기능을 제공하여 신뢰할 수 있는 데이터 전달을 제공합니다.
  • 흐름 제어. 한 번에 수신자에게 너무 많은 데이터를 보내는 것을 방지하기 위해 TCP는 데이터 흐름 제어 방법을 사용하여 데이터 전송 속도를 조절합니다.
  • 패킷의 순서와 순서. TCP는 순서와 시퀀스 번호를 보장하여 데이터 패킷이 전송된 순서와 동일한 순서로 수신되도록 보장합니다.
  • 오류 확인 중입니다. TCP는 광범위한 오류 검사를 수행하여 수신된 데이터의 결함을 식별합니다. 체크섬.
  • 연결 지향. TCP는 신뢰할 수 있고 안정적인 통신 링크를 보장하기 위해 보낸 사람과 받는 사람 사이에 링크를 만듭니다.
  • 보편적인 지원. IP와 함께 TCP는 개방형 산업 표준을 나타냅니다. 이는 인터넷의 초석 역할을 하며 전 세계 장치 간의 보편적인 연결과 통신을 촉진하는 확장 가능한 프로토콜입니다.양식 상단 양식 하단

TCP의 단점은 무엇입니까?

많은 이점과 함께 TCP에는 몇 가지 단점도 있습니다. TCP의 일반적인 단점은 다음과 같습니다.

  • 간접비. 신뢰성 기능으로 인해 TCP는 UDP보다 오버헤드가 더 많아 때로는 전송 속도가 느려질 수 있습니다.
  • 지연 시간. TCP에서 사용하는 전달 방법에는 승인 및 재전송이 포함되며, 이로 인해 영향을 줄 수 있는 대기 시간이 추가될 수 있습니다. 실시간 애플리케이션.
  • 혼잡 제어. 네트워크 정체를 방지하기 위해 TCP의 정체 제어 기술은 데이터 전송 속도를 늦출 수 있습니다. 이는 고속 전송이 필요할 때 단점이 될 수 있습니다.
  • 연결 지향. TCP의 연결 지향 설계에는 연결 생성 및 유지에 추가 비용이 필요하지만 이 기능은 많은 응용 프로그램에 필요하지 않을 수 있습니다.
  • 대부분. TCP는 특별히 TCP/IP 제품군에 맞춰져 있으며 다음과 같은 다른 프로토콜 스택을 나타내기 위해 적용될 수 없습니다. Bluetooth 연결.
  • 대역폭. UDP의 간단한 방법과 달리 TCP의 연결 형성, 승인 및 재전송에 필요한 앞뒤 통신은 때때로 더 많은 대역폭을 사용할 수 있습니다. 대역폭이 제한된 네트워크를 통해 대규모 데이터 전송을 사용하는 애플리케이션에서는 이 문제가 발생할 수 있습니다.

TCP/IP 스택의 위치

TCP/IP 스택 TCP/IP 프로토콜을 사용하여 네트워크를 통해 데이터가 구성되고 교환되는 방식을 나타내는 모델입니다. 이는 데이터가 클라이언트에서 서버로 또는 그 반대로 전달될 때 일련의 네트워크 프로토콜에 의해 처리되고 패키지되는 방식을 나타내는 일련의 레이어를 설명합니다.

TCP는 UDP와 같은 다른 프로토콜과 함께 전송 계층에 존재합니다. 이 계층의 프로토콜은 오류 검사 기능이 더 제한되어 있기 때문에 UDP를 제외하고 소스에 대한 오류 없는 데이터 전송을 보장합니다.

OSI 모델과 마찬가지로 TCP/IP 스택은 데이터 교환 표준에 대한 개념적 모델입니다. 데이터는 해당 기능과 전송 프로토콜을 기반으로 각 계층에서 다시 패키징됩니다.

요청은 애플리케이션 계층에서 데이터로 시작하여 스택을 통해 서버로 내려옵니다. 거기에서 정보는 각 계층에서 다양한 유형의 패킷으로 나뉩니다. 데이터는 다음과 같은 방식으로 이동합니다.

  • 이는 애플리케이션에서 TCP 세그먼트로 분류되는 전송 계층으로 이동합니다.
  • 이는 인터넷 계층으로 이동하여 데이터그램이 됩니다.
  • 네트워크 인터페이스 계층으로 전송되어 다시 비트와 프레임으로 분리됩니다.
  • 서버가 응답하면 스택을 통해 위로 이동하여 데이터로 애플리케이션 계층에 도착합니다.

[포함 된 콘텐츠]

효과적인 네트워크 통신을 촉진하는 데 있어 IP 주소와 서브넷의 중요성을 살펴보세요. 발견하다 IP 주소와 서브넷이 어떻게 운영 클래스가 있는 IP 주소 지정 체계와 클래스가 없는 IP 주소 지정 체계의 차이점을 살펴보세요.

spot_img

최신 인텔리전스

spot_img