zoukankan      html  css  js  c++  java
  • Fragmentation & Reassembly

    DTN fragmentation and reassembling are designed to impove the efficiency of bundle transfers by ensuring that contact volumes are fully utilized and by avoiding retransmissions of partially-forwarded bundles.There are two forms of DTN fragmentation/reassembly:

    Proactive Fragmentation:Used primarily when contact volumes are known(or predicted ) in advance.

    Reactive Fragmentation:DTN nodes sharing an edge in the DTN graph may fragment a bundle cooperatively when a bundle is partially transferred.In this case, the receiving bundle layer modifies the incoming bundle to indicate it is a fragment, and forwards it normally. The previous-hop sender may learn that only a portion of the bundle was delivered to the next hop, and send the remainning portions when subsequent contacts become available(possibly to different next-hops if routing changes). This is called reactive fragmentation because the fragmentation process occurs after an attempted transmission has taken place.

    The reactive fragmentation capability is not required to be avaible in every DTN implementation, as it requires a certain level of support from underlying protocols that may not be present, and presents significant challenges with respect to digital signatures and authentication codes on messages. When a signed message is only partially received, most message authentication codes will fail.

    Even if reactive fragmentation is not present in an implementation, the ability to reassemble fragments at a destination is required in order to support DTN fragmentation.

    Furthermore, for contacts with volumes that are small compared to typical bundle sizes, some incremental delivery approach must be used(e.g., checkpoint/restart) to prevent data delivery livelock. Reactive fragmentation is one such approach, but other protocol layers could potentially handle this issue as well.

    [RFC4838 Section 3.9]

    References:

    livelock:http://zhidao.baidu.com/question/18561008

  • 相关阅读:
    windows 创建python独立开发环境
    sql多列排序
    mysql 导入sql脚本中文乱码问题
    廖雪峰Python教学课后作业---datetime
    poj 1004:Financial Management(水题,求平均数)
    【POJ水题完成表】
    poj 1003:Hangover(水题,数学模拟)
    ytu 2558: 游起来吧!超妹!(水题,趣味数学题)
    poj 1005:I Think I Need a Houseboat(水题,模拟)
    hdu 2393:Higher Math(计算几何,水题)
  • 原文地址:https://www.cnblogs.com/jcleung/p/1839361.html
Copyright © 2011-2022 走看看