计算机网络运输层复用和分用

运输层

概述

之前课程所介绍的计算机网络体系结构中的物理层、数据链路层以及网络层它们共同解决了将主机通过异构网络互联起来所面临的问题,实现了主机到主机的通信。但实际上在计算机网络中进行通信的真正实体是位于通信两端主机中的进程。

如何为运行在不同主机上的应用进程提供直接的通信服务是运输层的任务,运输层协议又称为端到端协议。

运输层为用户屏蔽了下层的实现细节

image-20220924203116712

运输层端口号

  • 运行在计算机上的进程使用进程标识符PID来标志。
  • 因特网上的计算机并不是使用统一的操作系统,不同的操作系统(windows,Linux,Mac OS)又使用不同格式的进程标识符。
  • 为了使运行不同操作系统的计算机的应用进程之间能够进行网络通信就必须使用统一的方法对TCP/IP体系的应用进程进行标识。
  • TCP/IP体系的运输层使用端口号来区分应用层的不同应用进程。
端口号使用16比特表示,取值范围0~65535;
  • 熟知端口号:0~1023,IANA把这些端口号指派给了TCP/IP体系中最重要的一些应用协议,例如:FTP使用21/20,HTTP使用80,DNS使用53。
  • 登记端口号:1024~49151,为没有熟知端口号的应用程序使用。使用这类端口号必须在IANA按照规定的手续登记,以防止重复。例如:Microsoft RDP微软远程桌面使用的端口是3389。
  • 短暂端口号:49152~65535,留给客户进程选择暂时使用。当服务器进程收到客户进程的报文时,就知道了客户进程所使用的动态端口号。通信结束后,这个端口号可供其他客户进程以后使用。

端口号只具有本地意义,即端口号只是为了标识本计算机应用层中的各进程,在因特网中,不同计算机中的相同端口号是没有联系的。

复用和分用

发送方的复用和接收方的分用
udp复用/TCP复用:

不同的应用进程发送的不同应用报文可以统一使用udp/TCP进行封装,封装后要表明应用进程的端口号

ip复用:

不管是tcp报文段还是用户数据包都可以通过ip协议进行封装为ip数据报,根据报文中协议字段不同区分是数据报还是tcp报文段

ip分用:

根据报文中协议字段不同区分是数据报还是tcp报文段从而分理出数据报或者报文段

udp分用/TCP分用:

根据端口号将应用报文拆分给对应的应用进程

image-20220924204041808

猜你喜欢

转载自blog.csdn.net/perturb/article/details/127073195