使用存储和清空方法实现基于文本的压缩的装置和方法

文档序号:7735058阅读:249来源:国知局
专利名称:使用存储和清空方法实现基于文本的压缩的装置和方法
技术领域
本发明一般涉及通信系统领域,具体地说,涉及基于文本的压缩方案。
背景技术
现在,在绝大部分电路交换网络上都提供了电话服务。一种称为IP电话的迅速出现的新趋势提供基于网际协议(IP)网络上的电话服务。在数据网络上承载语音流量的激发因素是将语音和数据应用进行集成,这可以导致更有效的经营过程、节省语音呼叫的成本并为商务和用户实现许多新的服务。IP电话所提供的灵活性在于它将智能从网络移到了终端站,从而可以实现许多以前没有的新服务。在将因特网和蜂窝电话进行融合的努力中,主要的精力都集中在了两个方面上端到端的呼叫建立延迟和语音质量。
通常会使用诸如会话层呼叫协议(Session Initiated Protocol)(SIP)和会话描述协议(Session Description Protocol)(SDP)这样的协议来建立和解除呼叫。然而,在访问带宽有限的网络的时候采用基于ASCII的协议(诸如SIP和SDP)会导致呼叫建立的显著延迟。通过空中接口传送大的文本信息也会导致非常低效率地使用传输介质。此外,一些基于遗留(legacy)的增强的时分复用(TDM)蜂窝收发机(诸如GSM EDGE无线访问网络(GERAN))为了发射呼叫中(in-call)的SIP信令报文将需要“偷取”音频带宽。这种偷取音频带宽的做法将可能导致长时间的音频静音。
因此所需要的是一种为了增加频谱效率、降低发射延迟和提供与电路交换系统比较而言具有同等水平的服务质量而压缩基于文本的报文的方法。


图1是可以用来实现本发明的TCCB装置和方法的结构的方框图;图2是本发明中的TCCB压缩方法的优选实施例的流程图;图3是本发明中的TCCB解压缩方法的优选实施例的流程图;图4是在第一次发送完注册报文之后移动设备缓存的快照;图5是在TCCB层第一次处理完注册报文之后核心网络缓存的快照;图6是在TCCB层第一次处理完“INVITE”报文之后移动设备缓存的快照。
详细描述本发明提供了一种用于为了增加频谱效率、降低发射延迟和提供与电路交换系统比较而言具有同等水平的服务质量而压缩基于文本的报文的方法和装置。具体地说,本发明提供了一种用于执行使用存储和清空(Cache and Blank)方法的基于文本的压缩(TCCB)的方法和装置。TCCB是设计成可扩展的。它可以在各种访问技术上使用并且它的原理可以应用于各种基于文本的协议。TCCB方法的一个优点是只有用户设备(UE)(例如,移动设备)和同位体核心网络实体(peercore network entity)(例如,代理CSCF)才需要包括存储和取回信息的功能以压缩和解压缩的基于文本的报文。
图1是一种可以用来实现本发明的TCCB装置和方法的结构的方框图。在优选的实施例中,这个结构包含连接无线访问网络(RAN)104的移动设备100和代理CSCF(P-CSCF)102。移动设备100通过空中接口106与RAN 104相连,而P-CSCF 102通过IP接口108与RAN104相连。可以参看TR 23.821 v1.0.0(2000-06)的第5部分和3GPP TS23.060 v4.0.0(2001-03)的第5.6.1.1部分来获得对上述组件的功能性和连接性的详细描述。如同在本领域中已知的,移动设备100和P-CSCF102的软件结构通常包括在微处理器上运行的七(7)层堆栈。堆栈从上至下包括应用层110,124;基于文本的协议(TBP)层112,126;用户数据报协议(UDP)层116,130;传输控制协议(TCP)层118,132;IP层120,134;和物理层122,136。通常称UDP、IP和TCP层为低传输层。可以在Andrew S.Tannenbaum所著的《计算机网络(第二版)》的第15-20页找到关于OSI参考模型(7层模型)的详细描述。本发明引入了附加的TCCB层114,128。在优选的实施例中,TCCB层114,128位于TBP层112,126和低传输层之间。加入了TCCB层114,128后移动设备100和P-CSCF 102就可以使用压缩的报文进行通信。在移动设备100中,TCCB层114包括移动设备缓存(MDC)115。在P-CSCF 102中,TCCB层128包括核心网络缓存(CNC)127。如同将结合本发明的TCCB方法进行描述的那样,MDC 115和CNC 127用于存储用于压缩和解压缩在移动设备100和P-CSCF 102之间传送的报文的信息表。本发明的TCCB方法可以通过使用商用的微处理器来实现。
在移动设备100和P-CSCF 102中的TCCB层114,128包括本发明的压缩方法和解压缩方法。在移动设备100或P-CSCF 102准备发射报文的时候,就调用TCCB压缩方法来除去在报文的报头信息中包含的冗余信息。冗余的报头信息是源自发送设备的已经存储于接收设备中的MDC 115或CNC 127中的信息。例如,当在某个会话过程中报头内容与前面发射的报文相比没有改变的时候就可能出现这种情况。当TCCB压缩方法检测到在某个序列中报头内容与以前发送或接收的内容相同的时候,TCCB方法就将报头内容清空。在接收设备端,当TCCB层接收到带有空白的报头的报文的时候,就调用TCCB解压缩算法来从它的缓存中重新构建报头。关于压缩算法和解压缩算法的细节将参考流程图2和3来描述。
图2是本发明的TCCB压缩算法的优选实施例的流程图。在步骤202处,方法判断所发射的报文的特征(例如,类型)。对于报文类型,方法判断哪个(些)报文的报头含有缓存115或127中的正确的索引信息(步骤204)。例如,如果移动设备100在发射报文,就在步骤204处判断出缓存115中的正确的索引信息。在步骤206处,方法初始化变量“i”。这个变量用于追踪报文的被处理的特定报头。在步骤207处,方法判断报头(i)是否含有内容。如果报头含有内容,在步骤208处,方法就使用MDC 115或CNC 127中的索引信息,并从表中取出报头(i)的内容。在步骤210处,方法判断从表中取出的信息是否与报文中报头(i)的内容相匹配。如果信息不匹配,方法就在步骤214处将报文中的报头(i)的内容存入表中。在步骤216处,方法将“i”进行递增以指向下一个需要处理的报文。在步骤218处,方法判断报文的报头是否都处理过了。如果所有的报头都处理过了,方法就将报文转发给低传输层116、1118、120、130、132、134(图1)之一以进行传输(步骤220)。如果并非所有的报头都经过了处理,那么方法就返回到步骤208处继续处理剩余的报头。
再回到步骤207处,如果报头(i)不含有内容,方法就前进到步骤216处,在这里将“i”递增以继续处理其它剩余的报头。再回到步骤210处,如果来自表中的信息与报文中的报头(i)的内容相匹配,方法就在步骤212处判断报头(i)是否是报文类型的或报头(i)是否包含缓存中的索引信息。如果报头(i)不是报文类型的并且报头(i)不包含索引信息,方法就清空报头(i)的内容(步骤222)。然后,方法就将“i”递增(步骤216)并执行下去以继续处理其它剩余的报头。如果在步骤212处方法判断报头(i)是报文类型的或包含缓存中的索引信息,方法就跳过步骤222并在步骤216处递增“i”以继续处理其它剩余的报头。在优选的实施例中,表示报文类型的报头(请求行)和包含索引信息的报头不能被清空。
图3是本发明的TCCB解压缩方法的优选实施例的流程图。在步骤302处,方法判断所接收到的报文的特征(例如,类型)。对于判断出的特征,方法判断哪个(些)报文的报头含有缓存115或127中的正确的索引信息(步骤304)。例如,如果P-CSCF102在接收报文,就在步骤304处判断出缓存127中的正确的索引信息。在步骤306处,方法将变量“i”初始化为1。在步骤307处,方法判断报头(i)是否包括报文名称和协议。如果答案是“否”,在步骤308处,方法判断报头(i)的内容是否为空。如果内容不是空的,方法就使用MDC 115或CNC 127中的索引信息,并将接收到的报文中的报头(i)的内容存入与报头(i)对应的表中(步骤312)。在步骤314处,方法将“i”进行递增。在步骤316处,方法判断所有的报文的报头是否都处理过了。如果所有的报头都处理过了,方法就在步骤318处将报文转发给TBP层112、126(图1)以进行处理。如果并非所有的报头都经过了处理,那么方法就重复执行步骤308以继续处理剩余的报头。
再回到步骤307处,如果答案是“是”,方法就前进到步骤314处,在这里将“i”递增以继续处理其它剩余的报头。再回到步骤308处,如果报文的报头(i)的内容是空的,方法就使用索引信息来访问对应于报头(i)的缓存表并从表中取出信息以填充到报文报头(i)的内容中(步骤310)。然后,方法就在步骤314处将“i”递增并继续处理其它剩余的报头。
为了说明TCCB压缩和解压缩是如何操作的,现在将讲述移动设备100与P-CSCF 102进行注册的例子。这个例子主要是在移动设备100和P-CSCF 102之间的SIP报文交换。然而,本发明可以使用任意基于文本的报文。第一个例子是在移动设备100加电之后的第一次注册过程。为了发起这个过程,MD 100中的应用层110(图1)就向TCCB层114发送一个REGISTER(注册)请求。在本例中,报文具有下列字段(报头)REGISTER sipbell-tel.com SIP/2.0
ViaSIP/2.0/UDP saturn.bell-tel.comFrom<sipwatson@bell-tel.com>;tag=19a1Tosipwatson@bell-tel.comCall-ID70710@saturn.bell-tel.comCseq1 REGISTERContact<sipwatson@saturn.bell-tel.com3890;transport=udp>
Expires7200这个报文包含八(8)个报头REGISTER、Via(经由)、From(来自)、To(发往)、Call-ID(呼叫ID)、Cseq、Contact(联系人)和Expires(有效期)。除了第一行(请求行Request Line)中的内容是报文名后的所有内容以外,每个报头的内容就是在冒号后面显示的信息。例如,“REGISTER”报头的内容是“sipbell-tel.comSIP/2.0”。“Via”报头的内容是“SIP/2.0/UDP saturn.bell-tel.com”。
(如果可能)TCCB层114、128在将其发送到传输层116、118、120、130、132、134进行发射之前会调用压缩算法来压缩报文。参看图2的压缩算法,方法在步骤202处判断出报文是“REGISTER”报文。判断是通过查看报文的请求行(第一行)做出的。在步骤204处,方法判断哪个报头包含与请求行对应的MDC 115中的表中的正确的索引信息。在优选的实施例中,报头“To”包含“REGISTER”报文的索引信息。在另外的实施例中,别的报头或报头的组合可能包含有索引信息。在步骤206处,方法将变量“i”初始化为1以指向REGISTER报文的第一个报头(报头(1))。在步骤207处,方法判断REGISTER报文包含内容,在步骤208处使用报头“To”的内容作为MDC 115中的请求行表中的索引信息。在本例中,“sipwatson@bell-tel.com”是止确的索引信息。在步骤210处,方法判断请求行表中的内容是否与报头(1)中的内容相匹配,在本例中,报头(1)中的内容是“sipbell-tel.com SIP/2.0”。由于这是第一次发射报文,报文还没有存储在MDC 115中。在步骤214处,方法在MDC 115的请求行表中存储“sipbell-tel.com SIP/2.0”。
在步骤216处,方法将“i”递增以指向“Via”报头(报头(2))进行处理。在步骤218处,方法判断出还有很多报头需要处理并返回到步骤207处。方法重复执行步骤207、208、210、214、216和218直到所有的报头都处理完为止。方法使用“To”报头的内容作为索引信息,根据MDC 115中的对应表来检查报文中的每个报头的内容。由于这是第一个发送的报文,在MDC 115中还没有存储任何报头内容,并且没有任何报头的内容将被清空。当处理完最后一个报头之后,报文就未经压缩地(如上所示)发送到低传输层114、118、120之一以通过空中接口106发射到RAN 104。如图4所示,报文就存储在MDC115中了。RAN 104通过IP接口108把报文转发给P-CSCF 102。
在接到报文之后,P-CSCF 102就调用本发明的解压缩方法。参看图3,在步骤302处,方法判断出它接收到的是REGISTER报文。在步骤304处,方法判断出对于REGISTER报文来说,“To”报头包含CNC 127(图1)中的索引信息。在步骤306处,方法将“i”初始化为1以指向接收到的报文的第一个报头。在步骤307处,方法判断出报头(1)不包含报文名和协议,并且在步骤308处判断出报头(1)的内容不为空。在步骤312处,方法使用索引信息来用报头(1)的内容(“sipbell-tel.com SIP/2.0”)更新请求行表。在步骤314处,方法将“i”递增以指向报头(2)。在步骤316处,方法判断出还有很多报头需要处理并重复步骤307、308、312、314和316直到所有的报头都处理完为止。一旦所有的报头都处理完了,就将报文转发到TBP层126以进行处理(步骤318)。在图5中显示了CNC 127中所包含的值。
在本例中,P-CSCF 102用“200 OK”报文来响应“REGISTER”报文。200 OK报文如下所示
SIP/2.0 200 OKViaSIP/2.0/UDP Saturn.bell-tel.comFrom<sipWatson@bell-tel.com>;tag=19alTosipwatson@bell-tel.comCall-ID70710@saturn.bell-tel.comCseq1 REGISTERContact<sipwatson@saturn.bell-tel.com3890;transport=udp>
应当注意到200 OK报文没有内容。200 OK报文的报头是“SIP/2.0200 OK”。P-CSCF 102调用压缩算法来判断在发射给移动设备100之前是否有任何报头的内容可以清空。参看图2,方法判断出报文是200 OK报文(步骤202)。在步骤204处,方法判断出“To”报头包含“200 OK”报文的索引信息。(在另外的实施例中,另一个报头或报头的组合可能包含有索引信息)。在步骤206处,方法将变量“i”初始化为1以指向请求行报头(报头(1))。在步骤207处,方法判断出报头(1)没有内容并前进到步骤216处来递增“i”。在步骤218处,方法判断出还有许多报头需要处理并前进到步骤207处。在步骤207处,方法判断出报头(2)(报头“Via”)含有内容。在步骤208处,方法使用“sipwatson@bell-tel.com”作为CNC 127的Via表的索引信息。如同在图5中所示的,Via表的内容是“SIP/2.0/UDPSaturn.bell-tel.com”。因此,在步骤210处,方法判断出CNC 127中的Via表的内容与报文中的Via报头(报头(2))中的内容相匹配。在步骤212处,方法判断出报头(2)不是报文的类型也不包含索引信息,并清空Via报头的内容(步骤222)。然后,方法就前进到步骤216以递增“i”。
在步骤218处,方法判断出还有许多报头需要处理并前进到步骤207处。在步骤207处,方法判断出报头(3)含有内容,并在步骤208处使用“sipwatson@bell-tel.com”作为CNC 127中的“From”表的索引信息。如同在图5中所示的,“From”表的内容是“<sipwatson@bell-tel.com>;tag=19a1”,这与200 OK报文的From报头的内容相匹配。在步骤210处,方法判断它们是相匹配的,并在步骤212处判断From报头是否表示报文的类型或包含索引信息。由于这两个问题的答案都是“否”,方法就清空From报头的内容(步骤222)并在步骤216处递增“i”以处理“Call-ID”报头(报头(4))。
在剩余的报头都处理完之后,经过压缩的200 OK报文是SIP/2.0 200 OKViaFromTosipwatson@bell-tel.comCall-IDCseqContact经过压缩的报文发送给低传输层130、132、134之一以发射给移动设备100。
在移动设备100的TCCB层114中接收到经过压缩的200 OK报文之后,就调用解压缩方法。参看图3,方法判断出接收到了“200 OK”报文(步骤302)。在步骤304处,方法判断出“To”报头包含MDC 115中的索引信息。在步骤306处,变量“i”被初始化为1。在步骤307处,方法判断出报头(1)包含报文名(200 OK)和协议(SIP),并在步骤314处递增“i”。在步骤316处,方法判断出还有许多报头需要处理并前进到步骤307处。在步骤307处,方法判断出报头(2)不包含报文名和协议。在步骤308处,方法判断出报头(2)的内容为空的并使用“sipwatson@bell-tel.com”从“Via”表中取出信息(SIP/2.0/UDP saturn.bell-tel.com)填充到报文中的“Via”报头的内容中。在步骤314处,方法将“i”递增以指向报头(3)。在步骤316处,方法判断出还有许多报头需要处理并前进到步骤308处。方法重复执行步骤307、308、310、312、314和316直到报文中的所有报头都从MDC表中的信息中填充进来。在步骤318处,经过解压缩的报文将转发给TBP层112进行处理。
本发明的压缩和解压缩算法也可以使用对MDC 115和CNC 127的多重索引而实现。作为一个例子,设想在移动设备100成功地与P-CSCF 102注册之后从移动设备100向P-CSCF 102发射一个“INVITE(邀请)”报文。对于INVITE报文来说,如果需要,压缩和解压缩方法使用“From”和“To”报头内容作为MDC 115和CNC 127中的索引信息。“From”内容提供第一级的索引,而如果需要,“To”内容提供更高级粒度(granularity)的索引。除去SDP信息的INVITE报文的例子如下INVITE sipsimpson@springfield.bell-telcom SIP/2.0ViaSIP/2.0/UDP saturn.bell-tel.comFromT.Watson<sipwatson@bell-tel.com>
ToH.Simpson<sipsimpson@bell-tel.com>
Call-ID662606876@saturn.bell-tel.comCseq6 INVITEContact<sipwatson@saturn.bell-tel.com>
SubjectMr.Simpson,Going to Moe’s?Content-Typeapplication/sdp当TCCB层114接收到INVITE报文,它就调用压缩算法。参看图2,方法判断出报文是INVITE报文(步骤202)。在步骤204处,方法判断出(在需要的时候)“From”和“To”报头包含INVITE报文的索引信息。在步骤206处,方法将变量“i”初始化为1以指向请求行报头(报头(1))。在步骤207处,方法判断出报头(1)含有内容,并在步骤208处将From报头内容(sipwatson@bell-tel.com)作为MDC 115中的请求行表的索引使用。在步骤210处,方法判断出表的内容(见图4)与报文中的INVITE报头的内容不匹配。由于内容不匹配,方法就使用To报头内容(<sipsimpson@bell-tel.com>)来访问MDC 115中的请求行表。由于以前没有使用过<sipsimpson@bell-tel.com>来作为INVITE表的索引信息,所以INVITE表的这个索引处的信息与报头中的INVITE报文的内容不匹配。在步骤214处,方法在请求行表中存储INVITE报文的内容。在步骤216处,方法将“i”进行递增,并在步骤218处判断出还有更多报头需要处理。
在步骤207处,方法判断出报头(2)含有内容。在步骤208处,方法使用From报头的内容作为MDC 115的Via表的索引信息。如同在图4中所示的,Via表的内容是“SIP/2.0/UDP saturn.bell-tel.com”。因此,在步骤210处,方法判断出MDC 115中的Via表的内容与报文中的Via报头(报头(2))的内容相匹配。由于它们是匹配的,就不需要使用Via表中的第二级索引(To报头)。在步骤212处,方法判断出报头(2)不是报文的类型,也不包含索引信息,并清空Via报头的内容(步骤222)。然后,方法前进到步骤216处以递增“i”。在步骤218处,方法判断出还有更多报头需要处理并返回到步骤207处。方法重复执行步骤207、208、210、214、216和218直到所有的报头都处理完为止。方法首先使用“From”报头的内容作为索引,在MDC 115中的相应的表中检查报文的每个报头的内容,并且如果没有匹配的内容,就使用“To”报头的内容再次访问表。如果第二次也没有得到匹配的结果,就将报文中的报头的内容存储在表中相应于To报头信息的索引位置处。如果报文的报头是新的报头(即,诸如本例中Subject(主题)和Content Type(内容类型)报头这样在以前的报文中没有使用过的报头),报文中的报头的内容就在MDC表中存储两次,一次是存储在与From报头索引信息相对应的位置,然后是在与To报头索引信息相对应的位置。在每个报头都处理完之后,MDC表就包含在图6中所示的信息。
在本例中,只有在处理Via报头的时候比较报文的报头信息和MDC表中的报头信息的结果才是匹配的。(比较图4和6)。使用作为索引信息的“From”和“To”报头的内容的结合,为其它所有的域更新MDC 115。将下面的经过压缩的INVITE报文发送给P-CSCF102。
INVITE sipsimpson@springfield.bell-tel.com SIP/2.0ViaFromT.Watson<sipwatson@bell-tel.com>
ToH.Simpson<sipsimpson@bell-tel.com>
Call-ID662606876@saturn.bell-tel.comCseq6 INVITEContact<sipwatson@saturn.bell-tel.com>
SubjectMr.Simpson,Going to Moe’s?Content-Typeapplication/sdp在接收到经过压缩的INVITE报文之后,P-CSCF 102中的TCCB层128就调用解压缩方法。在判断出报文是INVITE报文之后,方法就使用“From”和“To”报头来访问CNC 127。在本例中,方法用CNC127的Via表中的信息来填充报文中的Via报头的内容。对于报文中的其它报头来说,就用当前的信息来更新CNC 127中的表。
本领域技术人员应当理解,在不背离本发明的范围和精神的情况下,可以对本发明的装置和方法以及这个装置的构造进行各种修改和变化。例如,可以在方法中结合错误检测和处理。方法可以在压缩和向报文的接收设备中的解压缩器发送结果之前对每个报文执行检验和操作。在对报文解压缩之后,对重新构建的报文执行检验和操作并将结果与原始值进行比较。如果发现了错误,就会通知应用层110、124,使用错误处理功能。
此外,可以在报文头中使用位标签(bitwise tag),而不是这里所描述的文本格式。例如,在应用于SIP的时候,各个节点(移动设备100和P-CSCF 102)的TCCB层可以用下列映射进行初始化Via 0x000158From0x000258To 0x000358Call-ID 0x000458Cseq0x000558Contact-length 0x000658当发送压缩的报文时,“Via”将由0x000158代替,依此类推。另外,可以对标签格式进行哈夫曼(Huffman)编码。
如同在INVITE报文的例子中看到的,可以使用多个级别的索引来储存和取出信息。在需要的时候,可以在报文中使用附加的信息来提供更高级别的粒度。所使用的索引级别的数量依赖于依协议的特征而定的最佳压缩率。例如,为了提高方法的效率,三级索引可以提供更进一步的压缩(例如,Fromcontents+Tocontents+Cseqcontents)。
在使用强制报头(mandatory header)方案的系统中可以实现进一步的压缩。强制报头方案是一种必须在每个报文中包含特定的报头的方案。在这样的系统中,可以通过不在经过压缩的报文中包含清空了内容的报头的报头标题来实现进一步的压缩。
权利要求
1.一种在具有存储器的发送装置中压缩具有多个报头的报文的方法,其包含如下步骤判断所述报文的特征;根据所述报文的所述特征,判断所述报文的哪个部分包含第一存储器中的索引信息;对所述报文中的所述多个报头中的每一个,都使用所述存储器中的所述索引信息来判断所述报头的内容是否存储在所述存储器中;和如果所述报头的内容存储在所述存储器中,就清空所述报文中的所述报头的内容。
2.如权利要求1中所述方法,其还包括如果所述报头的内容没有存储在所述存储器中,就在所述存储器中存储所述报头的内容的步骤。
3.如权利要求2中所述方法,其中所述索引信息与所述报文中的至少一个预定义的报头的内容相对应。
4.如权利要求1中所述方法,其中如果所述报头表示报文类型或包含所述索引信息,就不清空所述报文中的所述报头的内容。
5.一种在具有存储器的接收装置中解压缩具有多个报头的报文的方法,其包含如下步骤判断所述报文的特征;根据所述报文的所述特征,判断所述报文的哪个部分包含存储器中的索引信息;对所述报文中的所述多个报头中的每一个,都判断所述报头的内容是否为空;和如果所述报头的内容是空的,就使用所述存储器中的所述索引信息取出信息,填充到所述报头的内容中。
6.如权利要求5中所述方法,其还包括如果所述报头的内容不为空,就使用在所述存储器中的所述索引信息来在所述存储器中的适当位置存储所述报头的内容的步骤。
7.如权利要求5中所述方法,其中所述索引信息与所述报文中的至少一个预定义的报头的内容相对应。
8.一种在通过空中接口发射之前压缩文本报文的装置,所述装置具有包括应用层、基于文本的协议层和物理层的软件结构,所述装置还包括基于文本的压缩/解压缩层,用于判断所述报文的特征;根据所述报文的所述特征,判断所述报文的哪个部分包含第一存储器中的索引信息;对所述报文中的所述多个报头中的每一个,都使用所述存储器中的所述索引信息来判断所述报头的内容是否存储在所述存储器中;和如果所述报头的内容存储在所述存储器中,就清空所述报文中的所述报头的内容。
9.一种用于解压缩文本报文的装置,所述装置具有包括应用层、基于文本的协议层和物理层的软件结构,所述装置还包括基于文本的压缩/解压缩层,用于判断所述报文的特征;根据所述报文的所述特征,判断所述报文的哪个部分包含存储器中的索引信息;对所述报文中的所述多个报头中的每一个,都判断所述报头的内容是否为空;和如果所述报头的内容是空的,就使用所述存储器中的所述索引信息取出信息,填充到所述报头的内容中。
全文摘要
一种用于压缩和解压缩基于文本的报文的装置和方法。在移动设备100和P-CSCF 102中添加TCCB层114、115。在所述发射设备中,调用所述TCCB压缩方法来除去将要发射的报文中所包含的所有冗余的报头信息。当所述TCCB压缩方法检测到对于特定的序列,报头的内容与以前发送或接收的相同,所述TCCB方法就清空所述报头内容。在接收设备中,当所述TCCB层接收到带有空的报头内容的报文的时候,就调用所述TCCB解压缩方法来从它的缓存115、127重新构建所述报头。
文档编号H04L29/08GK1522526SQ02813068
公开日2004年8月18日 申请日期2002年6月28日 优先权日2001年6月29日
发明者约翰·B·奥黑尔, 约翰 B 奥黑尔, M 阿伦, 安德鲁·M·阿伦, D 马吉, 斯蒂芬·D·马吉, 马宗达, 张友领, T 福斯特, 伊希塔·马宗达, 热里·T·福斯特 申请人:摩托罗拉公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1