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 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 14、传输层原理及多路复用解复用 -> 正文阅读

[网络协议]14、传输层原理及多路复用解复用

一、传输层原理
1、传输层是进程与进程之间的服务,是远程主机之间的逻辑通信
2、传输层的报文传输过程
发送方:将应用层的报文分为报文段,然后传送给网络层;
接收方:将报文段重组成报文,然后传递给应用层
3、传输层与网络层之间的关系
(1)传输层协议:TCP和UDP,网络层协议:IP分组的传输协议
(2)传输层服务:主机之间的逻辑通信,网络层服务:进程之间的逻辑通信
传输层依赖于网络层的服务,并对网络层提供的服务进行加强,如:
IP向上提供的服务是不可靠的,可通过传输层TCP进行加强,TCP提供的服务是不安全的,再向上提供服务可以靠SSL加强。
(3)在网络层是主机与主机之间的通信,这个一个复用过程,将传输的信息内容进行聚合;传输至传输层时,是进程与进程之间的通信,这个解复用过程

二、复用与解复用
1、TCP复用与解复用
(1)过程:主机A创建Socket(TCP Socket包含源IP、目标IP、源端口、目标端口)并将Message向下传输,传输至应用层,通过TCP将源端口、目标端口以及报文分为报文段,再向下传输,同时源IP与目标IP也向下传输,到传输层通过IP协议将TCP传输过来的报文段结合源IP、目标IP装为数据报,数据报根据IP地址传至目标主机,目标主机的传输层拿到数据报再向上传输,传输至应用层除去IP地址封装的头部也就为TCP报文段,TCP报文段再向上传输,根据传输的源IP、目标IP、源端口、目标端口知道Socket的值,也就知道了对应的进程,则传输给对应的进程。
(2)结论:所以从源主机发送报文开始,向下是不断的进行封装,到应用层加上源端口、目标端口封装为报文段,然后再向下传输封装为IP数据报,这是一个复用的过程;当传输至目标主机时,不断的进行解复用,首先传输层向上传输,需要解复用,向上传输了TCP报文段,再向上传输又将报文段解复用为原本的Message,然后再根据Socket进行传输给进程。

2、UDP的复用与解复用
与TCP大致一样,只不过要注意的是UDP的Socket封装的自是自身IP以及端口,所以在目标端收到的时候是只有Message还有包含自身IP及端口的Socket,而传输的源端需要传输自身Socket、Message以及目标端的IP及端口。

注意 上面说描述的只是在传输的Message刚好是一个报文段的情况下,实际会分为多个报文段,报文段再传输为数据报,每个数据报都包含源IP地址和目标IP地址,每份数据都承载一个传输层报文段,而每个报文段也同样会包含源端口号和目标端口号,最后是主机联合IP地址和端口号将报文段发送给合适的套接字。
3、多路复用和解复用
(1)发送方主机多路复用
在多个套接字接收来自多个进程的报文,根据套接字对应的IP地址和端口号等信息对报文段用头部加以封装(该头部信息用于以后的解复用)
(2)在接收方主机多路解复用
根据报文段的头部信息中的IP地址和端口号将接收到的报文段发给正确的套接字(和对应的应用进程)
·

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

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