Chinaunix首页 | 论坛 | 博客
  • 博客访问: 66581
  • 博文数量: 13
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 110
  • 用 户 组: 普通用户
  • 注册时间: 2015-05-17 10:06
文章分类
文章存档

2015年(13)

我的朋友

分类: 网络与安全

2015-05-18 09:13:43



PDU和相应层的协议有关,不同协议对应各自的PDU长度,用户的数据要进行通信必须封装到PDU中,实现对等层之间的信息交换。而用户数据可以理解为SDU,它的长度可能大于或者小于PDU,要想进行通信,则必须将SDU分割或者拼接为PDU长度。




所谓协议数据单元就是在不同站点的各层对等实体之间,为实现该层协议所交换的信息单元。通常将第N层的协议数据单元记为NPDU。它由两部分组成,即本层的用户数据(N)和本层的协议控制信息(NPCI(Protocol Control Information))。从服务用户的角度来看,它并不关心下面的PDU,实际上它也看不见PDU的大小。一个N服务用户关心的是:下面的N实体为了完成服务用户所请求的功能,究竟需要多大的数据单元。这种数据单元称为服务数据单元SDU,一个N服务数据单元就是N服务所要传送的逻辑数据单元。实际上,在某种情况下,某一层的服务数据单元SDU和上一层的PDU是对应的。因此NSDU就相当于N层的用户数据。而在许多情况下,SDU和PDU并不等同,有时NSDU较长,而N协议所要求的NPDU较短。这时就要对NSDU进行分段处理,将一个SDU分成两个或多个PDU来传送。当PDU所要求的长度比SDU还大时,也可将几个SDU合并成为一个PDU。这就涉及到SDU的分段和拼接。

SDU(service Data Unit):服务数据单元,又叫业务数据单元,是指定层的用户服务的数据集,传送到接收方的时候同一协议层时数据没有发生变化,即业务部分,然后发给下层之后,下层将其封装在PDU中发送出去。服务数据单元是从高层协议来的信息单元传送到低层协议。第N层服务数据单元SDU,和上一层的协议数据单元(PDU)是一一对应的。根据协议数据单元的数据的不同,送到接收端的指定层。

PDU(N) = SDU(N - 1)

SDU(N) = PDU(N + 1)




N层用户与N层协议之间传递的数据称为服务数据单元(SDU)
N层协议实体之间传递的数据称为协议数据单元(PDU),通过数据发送/接收管理把用户提交的SDU以PDU的形式,通过下层通道发送到对端协议实体。在接收端再将PDU还原成SDU送给收端用户。
PDU的封装/解封装:在发送方,将用户递交的SDU加上协议控制信息PCI,封装成PDU;在接收方,讲接收到的PDU解封装,去掉PCI,还原成SDU送交接收方用户。
SDU分段/装配 :如果下层通道的带宽不能满足传递SDU的需要,就需要将一个SDU分成多段,分别封装成PDU发送出去(分段);在接收方再将这些PDU解封装后重新装配成SDU。
SDU拼接/分离:拼接是指在发送方(n)层协议实体把多个长度较短的(n)SDU封装成一个(n)PDU来发送,在接收放再将接收到的(n)PDU解封装,将多个(n)SDU分离出来。采用拼接功能的目的是提高通道的利用率。
PDU分割/组合:PDU分割是指在发送端(n)层协议实体把一个(n)PDU分割成多个(n-1)SDU,并行地从多个(n-1)通道发送出去;接收端再将收到的多个(n- 1)SDU组合成一个(n)PDU。由于这是一个N层功能,所以组合操作在N层中进行,即N层先得到多个分割开的(n)PDU,然后把它们组合成一个(n)PDU。
阅读(1844) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~