多路复用与多路分解

本文介绍了网络协议中的多路复用与多路分解概念,涉及进程与套接字的关系,强调了UDP和TCP套接字在多路复用和分解中的区别,以及如何通过端口号来定向数据到正确的套接字。
摘要由CSDN通过智能技术生成

进程与套接字

一个进程有一个或多个套接字( socket),它相当于从网络向进程传递数据和从进程向网络传递数据的门户。在接收主机中的运输层实际上并没有直接将数据交付给进程,而是将数据交给了一个中间的套接字。在任一时刻,在接收主机上可能有不止一个套接字,所以每个套接字都有唯一的标识符。标识符的格式取决于它是UDP还是TCP套接字。

怎样将一个到达的运输层报文段定向到对应的套接字?

为了达到目的,每个运输层报文段中具有几个字段。在接收端,运输层检查这些字段,标识出接收套接字,进而将报文段定向到该套接字。将运输层报文段中的数据交付到正确的套接字的工作称为多路分解(demultiplexing)。在源主机从不同套接字中收集数据块,并为每个数据块封装上首部信息从而生成报文段,然后将报文段传递到网络层,所有这些工作称为多路复用(multiplexing)

运输层多路复用要求

  1. 套接字有唯一标识符;
  2. 每个报文段有特殊字段来指示该报文段所要交付到的套接字。字段是源端口号字段和目的端口号字段。

无连接的多路复用和多路分解

假定在主机A中的一个进程具有UDP端口19157,它要发送一个应用程序数据块给位于主机B中的另一进程,该进程具有UDP端口46428。主机A中的运输层创建一个运输层报文段,其中包括应用程序数据、源端口号(19157)、目的端口号****(46428ÿ

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值