IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> TCP(传输控制协议) -> 正文阅读

[网络协议]TCP(传输控制协议)

要点
? 运输层协议,特点:面向连接、单播、可靠交付、全双工通信、面向字节流、头部开销大,三次握手四次挥手。

标准

? TCP是传输控制协议,是TCP/IP体系中非常复杂的一个协议,属于运输层协议。与UDP协议一样用于处理应用层的数据。它和UDP一样具有复用和分用的功能以及可靠传输的功能。TCP的主要特点是:面向连接、单播、可靠交付、全双工通讯、面向字节流、头部开销大。

重点

? TCP是传输控制协议,是TCP/IP体系中非常复杂的一个协议,属于运输层协议。与UDP协议一样用于处理应用层的数据。它和UDP一样具有复用和分用的功能以及差错检测的功能。UDP的主要特点是:

  • 面向连接。应用程序在使用TCP之前必须两端之间先建立TCP连接。当确认数据传输完成之后,必须要释放TCP连接。
  • 单播。TCP只能有两个端点,进行点对点的传输,不支持多播和广播传输。
  • 可靠交付。通过TCP连接传送的数据是没有差错、不会丢失、不重复并且按序到达的。
  • 全双工通信。TCP允许连接的双方可以在任何时候发送数据,双方都有发送缓存和接收缓存。应用程序把数据给发送缓存之后就可以做其他的事情了,TCP发送缓存会在合适的时候自己把缓存中的数据发送出去。在接受的时候TCP会把数据存进接收缓存,上层应用程序会在合适的时候读取数据。也正因为是全双工通信方式,建立连接时最少需要三次信息确认,也就是三次握手,断开连接时最少需要四次信息确认,也就是所谓的四次挥手。
  • 面向字节流。TC不像UDP每一个数据报独立传输,而是在不保留报文边界的情况下以字节流的方式进行传输,这也是长连接的由来。TCP中的“流”就是指流入到进程或从进程流出的字节序列。
  • 头部开销大。最小20字节,最大60字节。加上TCP的可靠传输机制功能的影响,数据传输效率比UDP慢很多。

延伸
TCP把“连接”作为最基本的抽象。TCP的连接必须建立在两个“端点”,这两个“端点”不是主机,不是IP地址,不是应用程序,也不是运输层的协议端口,而是套接字(socket)或者叫“插口”,根据RFC 793的定义:端口号拼接到IP地址就构成了套接字。

? 需要注意的是,socket这个词语在不同的使用场景有不同的含义,容易让人混淆。例如:

  • 允许应用程序访问联网协议的应用编程接口API,也就是应用层和运输层之间的一种接口,称为socket API,简称socket。
  • socket API中使用的一个函数名也叫socket。 调用socket时,返回值是socket描述符,简称socket。
  • 上面这些socket的意思和TCP中的端点不同。

使用TCP的各种应用层协议:
在这里插入图片描述

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-03-03 16:49:22  更:2022-03-03 16:49:26 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 8:15:52-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码