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 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> QQ是如何发出一个 hello 消息?你知道吗? -> 正文阅读

[网络协议]QQ是如何发出一个 hello 消息?你知道吗?

本文只是简单的介绍一下服务器和客户端通信的大致的流程

应用层 -> 传输层 -> 网络层 -> 数据链路层 -> 物理层 -> 数据链路层 -> 网络层 -> 传输层 -> 应用层

具体流程

1、qq 软件会按照一定的规则(qq 的程序员约定的通讯协议),把hello 这个字符串构造成一个应用层数据包。然后将这个数据包交给操作系统的传输层

例如构造的是这样的一个信息:

张三;123456789;李四987654321;2022/7/15 12:30;hello;

2、在传输层中,就会把刚才这个数据打包成一个传输层数据包。假设此处使用 UDP 协议,然后将这个数据包交给网络层

假设这里使用的是 UDP 协议

3、到了网络层后,网络层也会把刚才这个数据打包成一个网络层的数据包

假设此处使用 IP 协议,接下来网络层又会把数据交给数据链路层

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7UkUXVjt-1657893165151)(https://s3.bmp.ovh/imgs/2022/07/15/336a176ee4ba73cb.png)]

4、数据链路层也会把这个数据封装成一个数据链路层的数据包

假设这里使用以太网协议,就会把这个数据按照以太网数据帧的格式进行组织,打包完后将这个数据交给物理层

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sAtwneFj-1657893165151)(https://s3.bmp.ovh/imgs/2022/07/15/bb7e45bb4fe192ec.png)]

5、物理层就会把这个数据以二进制的方式转换成为 0/1 这样的光信号/电信号并进行传输,通过网线/光纤/无线网络将数据包发送到接收端

紧接着,光电信号到达了接收端(即主机)

6、首先到达接收端的物理层。物理层再把这个光电信号进行翻译,转换为 0/1 这样的二进制序列,也就得到了一个以太网数据帧,然后把这个数据帧交给了数据链路层
7、数据链路层对这个以太网数据帧进行解析,去掉了帧头和帧尾将中间的负载部分信息获取到,然后交给上层协议(即网络层)

8、到了网络层后,IP 协议就会按照协议格式来解析这个数据,去掉 IP 报头获取到其中的负载部分信息,然后交给上层协议(即传输层)

9、到达传输层后,传输层的 UDP 协议再解析这个数据去掉 UDP 包头获取到负载部分信息,然后交给上层协议(即应用层)

10、到达应用层后,应用程序就会按照应用层的协议在解析数据去出其中的关键信息(即 hello 这条消息),然后将其显示在屏幕上

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-07-20 19:17:07  更:2022-07-20 19:19:42 
 
开发: 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年5日历 -2024/5/19 13:17:13-

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