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报文段

  • TCP将若干个字节构成一个分组,叫报文段
  • TCP报文段封装在IP数据报中
  • 在这里插入图片描述
    源端口号:发送方进程的端口号
    目标端口号:接受端进程的端口号。接受端收到数据段后,根据这个端口号来确定吧数据送给哪个应用程序的进程
    序号:发送端为每个字节进行编号,便于接受端正确重组,TCP从进程接受数据字节时,进行分段编号,当数据到达目的地后,接受端会根据编号排列保证数据正确性
    确认号:对发送后端的确认消息,如确认号是X,表示前X-1个数据段都已收到
    首部长度:用它可以确认TCP首部数据结构的字节长度,一般情况是20字节,可扩展60字节
    控制位:
    URG:紧急位
    ACK:确认位,当ACK=1是1时字段有效,0无效
    PSH:急迫位
    RST:重置位,当RST=1,重新建立TCP连接
    SYN:同步(连接)位,TCP建立连接时SYN=1
    FIN:断开位,当TCP需要断开连接时,提出断开连接的一方将这个值为1

二. TCP连接

TCP建立连接的过程称为三次握手

三次握手图解

在这里插入图片描述

三次握手原理

  • 客户端向服务器发送SYN同步请求,请求与服务器建立连接,服务器收到SYN同步请求后,会针对客户端的SYN同步请求进行ACK响应的同时也会发送一个SYN同步请求,当客户端收到服务器发送过来的SYN同步请求时,会给予一个ACK响应。

三次握手的作用

因为TCP是可靠的传输层协议。它在传输数据前,会建立双向数据通信通道,当保证双向数据传输的通道没有问题时,才会发送数据,起到保护数据的作用。

三.TCP断开连接

TCP断开连接称为四次挥手

四次挥手图解

在这里插入图片描述

四次挥手原理

客户端向服务器发送FIN断开请求,服务器接收到此请求后,回复一个ACk响应,服务器向客户端发送FIN断开请求,客户端收到此请求后,回复一个ACK响应。

为何断开要四次?

数据传输方向是双向的,一个方向的数据通道关闭需要一次请求和一次确认,因此需要断两次,而我们有两个数据方向,因此需要断四次。

TCP半关闭状态

客户机向服务器发送了FIN请求,服务器也给予了ACK回应。但是,服务器和客户端之间还有数据要传输,因此服务器并没有立即向客户端发送FIN请求。

常见TCP端口

在这里插入图片描述

  • 客户端根据需要哪种服务,从而发送到特定的目的端口
  • 端口划分为三个类别,其范围介于1到65535之间
  • 公认端口:与通用网络应用程序相关联的目的端口称为公认端口,其范围为1到1023
  • 注册端口:1024到49151端口可作为源端口或目的端口使用,组织可使用这些端口注册即时信息等应用程序。
  • 私有端口:49152到65535端口通常作为源端口使用。
  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-08-19 12:24:57  更:2021-08-19 12:25:18 
 
开发: 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/25 20:18:45-

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