📜  什么是传输控制协议 (TCP)?

📅  最后修改于: 2022-05-13 01:57:03.533000             🧑  作者: Mango

什么是传输控制协议 (TCP)?

TCP(传输控制协议)是 Internet 协议套件的主要协议之一。它位于应用层和网络层之间,用于提供可靠的交付服务。它是一种面向连接的通信协议,有助于通过网络在不同设备之间交换消息。

TCP/IP 层

TCP/IP 层

TCP的工作

为了确保每条消息完好无损地到达其目标位置,TCP/IP 模型将数据分解为小包,然后将这些包重新组合成另一端的原始消息。与一次性发送所有信息相比,以小包信息的形式发送信息更容易保持效率。

在将特定消息分解成束后,如果一条路线阻塞但目的地保持不变,这些束可能会沿着多条路线行进。

TCP的工作

我们可以看到消息正在被分解,然后在目的地从不同的顺序重新组装

例如,当用户在世界某个地方的 Internet 上请求网页时,服务器会处理该请求并将 HTML 页面发送回该用户。服务器使用称为 HTTP 协议的协议。然后 HTTP 请求 TCP 层设置所需的连接并发送 HTML 文件。

现在,TCP 将数据分成小数据包并将其转发到 Internet 协议 (IP) 层。然后数据包通过不同的路由发送到目的地。

用户系统中的 TCP 层等待传输完成,并在收到所有数据包后进行确认。

TCP/IP的特点

传输控制协议的一些最突出的特性是

1. 航段编号系统

  • TCP 通过为每个段分配编号来跟踪正在传输或接收的段。
  • 为要传输的数据字节分配一个特定的字节编号,而为段分配序列号
  • 确认号被分配给接收到的段。

2.流量控制

  • 流控制限制发送方传输数据的速率。这样做是为了确保可靠的交付。
  • 接收方不断提示发送方可以接收多少数据(使用滑动窗口)

3.错误控制

  • TCP为可靠的数据传输实现了错误控制机制
  • 错误控制是面向字节的
  • 检查段以进行错误检测
  • 错误控制包括——损坏的段和丢失的段管理、乱序段、重复段等。

4.拥塞控制

  • TCP 考虑了网络中的拥塞程度
  • 拥塞级别由发送方发送的数据量决定

好处

  • 这是一个可靠的协议
  • 它提供了一种错误检查机制以及一种用于恢复的机制
  • 它提供流量控制
  • 它确保数据按照发送的确切顺序到达正确的目的地
  • 开放协议,不归任何组织或个人所有
  • 它为网络上的每台计算机分配一个 IP 地址,为每个站点分配一个域名,从而使每个设备站点在网络上都是可区分的。

缺点

  • TCP 是为广域网而设计的,因此它的大小可能会成为资源不足的小型网络的问题
  • TCP 运行多层,因此它可以减慢网络的速度
  • 它本质上不是通用的。意思是,它不能代表除 TCP/IP 套件之外的任何协议栈。例如,它不能与蓝牙连接一起工作。
  • 自大约 30 年前开发以来,没有任何修改。