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地址和端口号将接收到的报文段发给正确的套接字(和对应的应用进程)
·

你可能感兴趣的:(计算机网络,网络,传输层原理,多路复用和解复用)