在客户机和服务器之间传送消息文件的方法

文档序号:7600722阅读:186来源:国知局
专利名称:在客户机和服务器之间传送消息文件的方法
技术领域
本发明涉及因特网环境中的超文本传送协议(HTTP)技术,并且更具体地,涉及一种使用HTTP传送消息文件的方法。
背景技术
在用户在因特网或者无线因特网环境中传送消息文件时,由于如网络不稳定或者呼叫中断等外部因素,消息文件传送可能失败。可替代地,用户可在完成前停止消息文件传送。
使用现有的超文本传送协议(HTTP)的传统处理操作将参照图1说明。图1是说明使用HTTP传送消息文件的传统处理操作的流程图。参照图1,客户机10在步骤30开始到服务器20的消息文件传送。在步骤32,客户机10完成到服务器20的全部消息文件的传送前,导致文件传送中断的事件发生。在步骤34,在消息文件传送环境变得稳定时,客户机10再次传送消息文件。此时,即使已经传送了部分文件,客户机10也从开头传送消息文件。在步骤36,客户机10确定导致文件传送中断的事件是否发生。如果没有,那么客户机10完成消息传送,并且在步骤40发送文件传送完成信号到服务器20。否则,如果导致文件传送中断的事件发生,那么客户机10在步骤38停止消息文件传送。
根据HTTP,提供在客户机10接收消息文件时用于消息文件的下载恢复功能,但没有定义在客户机10传送消息文件时用于消息文件的上传恢复功能。如果消息文件传送失败,或者用户在开始消息文件传送后取消了消息文件传送,那么客户机10在恢复消息文件传送时从开头传送消息文件。
如上所述,因为传统HTTP技术在客户机恢复消息文件传送时不考虑已经传送的消息文件部分,消息文件被从头传送。在类似于上传恢复功能的算法中,服务器请求消息文件重新传送,而客户机重新传送消息文件,以响应消息文件重新传送请求。
上述传统消息文件传送方法的低效率在于因为已经上传到服务器的数据在停止文件传送后必须重新传送,所以消息文件传送时间增加。在无线因特网环境中,在使用传统消息文件传送方法时,无线带宽可被浪费而增加的无线因特网费用对用户可能是昂贵的。而且,上述传统方法具有另一个问题基于从服务器的消息文件重新传送请求的消息文件传送技术不考虑用户状态,如终端没有上传恢复功能的能力时,例如在正在执行如语音通信的另一个功能时。

发明内容
因此,鉴于上述问题已经做出本发明,并且本发明的目的在于提供一种消息文件传送方法,其可在消息文件传送失败或者开始消息文件传送后被用户取消时,恢复消息文件传送以响应用户的重新传送请求而非服务器的重新传送请求。
因此,本发明可减少在无线环境中的带宽的浪费,并且降低费用,例如由因特网服务提供者向用户收取的因特网使用费。
本发明支持一种有效率的上传恢复功能,其中用户接收已经从相应的服务器传送的部分文件内容的信息,然后在消息文件传送失败或者开始消息文件传送后被用户取消时,从传送停止点而非从头恢复消息文件传送。
换言之,本发明支持上传恢复功能,其中考虑用户便利性,在消息文件传送环境比较好的状态恢复消息文件传送,并且其中从传送停止点执行恢复的消息文件传送,不同于传统方法,在传统方法中,用户终端从服务器接收消息文件重新传送请求,然后对全部消息文件执行消息文件重新传送操作。
结果,根据本发明的上传恢复功能,通过执行消息文件的部分内容的传送而非消息文件中的所有消息的重新传送,可减少消息文件传送时间,减少在无线终端环境中的无线带宽的浪费,并且降低对用户估计的无线因特网使用的费用。


通过下面结合附图的详细描述,将会更加清楚地理解本发明的上述和其他目的、功能和其它优点,其中图1是说明通过超文本传送协议(HTTP)传送消息文件的传统处理操作的流程图;
图2是说明应用本发明的消息文件传送系统的配置的框图;图3是说明根据本发明的一个实施例的客户机的配置的框图;以及图4是根据本发明的一个实施例说明在传送消息文件时客户机和服务器之间的控制流的流程图。
具体实施例方式
现在,将参照附图来详细说明本发明的优选实施例。在附图中,相同或者类似的单元以相同的标号标记,即使它们在不同的附图中描述。在下面的说明中,在这里包含的已知的功能和配置可使本发明的主题不清晰时,将省略其详细描述。
图2是说明应用本发明的消息文件传送系统的配置的框图。参照图2,消息文件传送系统包括客户机100、因特网200和服务器300。客户机100在因特网200上传送消息文件给服务器300。然后,服务器300从客户机100接收消息文件。在传送消息文件前,客户机100发送消息文件给服务器300,以确定服务器300是否支持上传恢复功能。然后,客户机100提供标识符(ID)用于标识消息文件。在预定的消息文件已经从客户机100传送给服务器300时,服务器300接收并引用用于标识消息文件的ID,并且确定对应ID的消息文件在服务器300中是否存在。如果确定对应接收的ID的消息文件存在,服务器300删除存储在服务器300中的消息文件。而且,如果服务器300支持上传恢复功能,在停止消息文件传送时,服务器300在消息文件传送停止点存储消息文件大小和已经传送的消息文件的信息。重新传送传送停止的消息文件后,客户机100请求服务器300检查至少一个传送失败的消息文件的大小。随后,接收到传送停止的文件信息的请求后,服务器300发送传送停止的文件信息到客户机100。然后客户机100根据从服务器300接收的部分消息文件大小的信息,传送剩余部分内容。
现在,参照图3说明上述客户机100的配置。图3是说明根据本发明的一个实施例的客户机100的配置的框图。客户机100包括控制器110、转发器120和存储器130。在开始到服务器300的消息文件传送时,在传送消息文件前,控制器110向服务器300发送消息用于确定服务器300是否支持上传恢复功能。如果服务器300支持上传恢复功能,控制器110经由转发器120向服务器300传送消息文件。转发器120执行与服务器300的文件传输和接收操作。如果在向服务器传送消息文件时发生导致文件传送中断的事件,那么控制器110停止消息文件传送。导致文件传送中断的事件发生在例如消息文件的传输环境恶化或者用户停止消息文件传送的情形。在停止消息文件传送时,控制器110在存储器130中存储对应的消息文件的信息。传送停止的消息文件的信息可以是对应的消息文件的标识符(ID)和消息文件的传送的部分内容的大小的信息。在用户进行消息文件重新传送请求时,控制器110请求服务器300提供传送停止的消息文件的信息。从服务器300接收到信息后,控制器110引用传送停止的消息文件信息,并且确定是否已经改变了消息文件。更具体地,控制器110比较传送的消息文件内容的大小与包括在接收的传送停止的消息文件信息中的由服务器300接收的消息文件内容的大小。如果作为比较的结果大小信息单元(unit)相等,那么控制器110仅仅传送消息文件的传送停止的部分内容。
接着,将参照图4说明传送至少一个消息文件时客户机100和服务器300之间的控制流。参照图4,在步骤402,在传送消息文件前,客户机100向服务器300发送用于确定服务器300是否支持上传恢复功能的消息。客户机100根据超文本传送协议版本1.1(HTTP/1.1)OPTIONS请求统一资源标识符(URI),配置用于确定服务器300是否支持上传恢复功能的消息。预定义的OPTIONS方法用于请求对应请求URI的服务器的信息。为了使用上传恢复功能,客户机100进行OPTIONS请求,以确定服务器300是否支持部分信息(PINFO)方法。
然后服务器300在步骤404发送指示可支持上传恢复功能的消息给客户机100。服务器300在根据HTTP/1.1 200 OK的响应消息中包括信息“允许GET,HEAD,PUT,PINFO”。换言之,服务器300提供可支持信息,以响应来自客户机100的OPTIONS请求。在服务器支持上传恢复功能时,PINFO方法实体必须包括在允许实体中。PINFO方法实体和消息ID实体是根据本发明为上传恢复功能增加的实体。由现有HTTP定义的OPTIONS和POST方法关联于上传恢复功能。供参考,用于关联于上传恢复功能的OPTIONS、POST和PINFO的主机(Host)和用户代理(User-Agent)域是由现有HTTP/1.1定义的实体。范围头域也是由现有HTTP/1.1定义并且根据HTTP方法规范使用的实体。
定义PINFO使得客户机100向服务器300发送对传送停止的消息的大小信息的请求。对PINFO的服务器的响应错误的情形意味着服务器300中不存在对应由客户机100请求的消息ID的消息,或者消息ID的值无效。在对PINFO的服务器的响应200 OK的情形,必须包括对应消息的大小信息。来自客户机100的OPTIONS请求仅仅在PINFO包括在允许实体中的情形是可用的。
客户机100存储对指示服务器300是否支持上传恢复功能的消息的响应。随后,客户机100在步骤406开始消息文件传送。在此点,传送的消息文件根据HTTP/1.1请求URI来配置,并且包括信息,例如“主机主机名称”、“用户代理用户代理名称”、“消息ID消息标识符”和其它信息。消息文件传送符合预定义的HTTP POST方法。为了可支持上传恢复功能,客户机100向消息增加用于标识消息的消息ID实体以及上列的主机和用户代理实体。在停止客户机100的消息文件传送时,服务器300必须保存已经传送的消息文件而不删除它。
在服务器300存储等于从客户机100传送的新消息文件的先前消息文件时,它删除先前消息文件,然后存储新消息文件。随后,在步骤408客户机100确定导致文件传送中断的事件是否发生。即,消息文件传送可由于外部因素失败或者用户可取消消息文件传送而失败。如果导致文件传送中断的事件发生,客户机100停止消息文件传送。在此点,在支持上传恢复功能的情形,在停止客户机100的消息文件传送时,服务器300必须保存当前传送的消息文件的信息,直到根据在客户机100和服务器300之间指定的消息文件存储时间的消息文件存储期满时间。在用户不发送消息文件重新传送请求给客户机100直到消息文件存储期满时间时,服务器300可自动删除对应的消息文件。
例如,在用户进行消息文件重新传送请求时,客户机100在步骤412请求服务器300提供停止传送的消息文件的信息。即,在客户机100上传停止传送的消息文件的情形,在客户机100上传停止传送的消息文件前,客户机100请求服务器300提供指示在服务器300中是否存储停止传送的消息文件的信息以及停止传送的消息文件的大小信息。去往服务器300的停止传送的消息文件的信息的请求基于HTTP/1.1 PINFO请求URI。PINFO请求消息包括“主机客户主机名称”、“用户代理客户用户代理名称”、“消息ID消息标识符”和其它信息。PINFO方法用于客户机100请求服务器300提供停止传送的消息文件的信息时,使得客户机100可执行上传恢复功能。在PINFO方法中,客户机100必须包括主机、用户代理和消息ID实体。
接收停止传送的文件信息请求的服务器300检查在步骤414存储的对应的消息文件的当前接收的消息文件的信息。当前接收的消息文件信息包括指示当前接收的消息文件的内容范围、全部消息文件的大小和块(chunk)模式存在的信息。根据检查结果,服务器300通知客户机100停止传送的文件信息。服务器对请求的响应包括基于HTTP/1.1 200 OK的“内容范围字节”(指示总消息内容的至少一个停止传送的消息/长度的大小)和“消息ID消息标识符”。即,在定位对应来自客户机100的PINFO请求的消息时,服务器300提供存储的消息文件大小信息给客户机100。使用预定义的内容范围实体提供消息文件大小信息。
同时,在关联于来自客户机100的请求的消息ID无效或者在服务器300中不存在对应消息ID的消息文件时,服务器300通知客户机100不能执行消息文件上传恢复功能。对PINFO请求的服务器的错误响应符合关联于现有POST或者OPTIONS请求的服务器的错误响应格式。在此点,客户机100必须使用POST方法从头执行消息文件传送。
在从服务器300接收停止传送的消息文件信息的客户机100在步骤416确定是否已经改变消息文件时,如果消息文件没有改变,客户机100就对要传送的总大小的消息中已经传送的内容之后的部分内容执行上传恢复操作。客户机100根据POST方法对消息文件执行上传恢复操作。在此点,用于上传恢复操作的消息文件根据HTTP/1.1 POST服务器统一资源定位符(URL)配置,并且包括“主机客户主机名称”、“用户代理客户用户代理名称”、“消息ID客户消息标识符”、“范围字节”、“部分内容长度”等。根据本发明的用于上传恢复操作的POST方法将范围实体加入现有POST方法。客户机100通知服务器300用于上传恢复功能的POST方法。消息ID表示经过客户机100的上传恢复操作的消息文件的标识符。范围实体是用于在现有GET方法中支持下载恢复功能的实体,并且还用于在POST方法中支持到服务器300的上传恢复操作。客户机100通知服务器300使用范围实体的上传恢复执行。在此点,包括在范围实体中的值指示在停止传送后要由客户机100传送的部分内容的范围。POST方法符合由请求注解(RFC)2616定义的方法。在范围实体包括在客户机100传送的POST消息文件中时,服务器300识别上传恢复操作,并且必须对通过上传恢复操作传送的部分内容执行存储操作。在进行对上传恢复操作的POST请求时,客户机100必须在请求中包括消息ID域和指示要通过上传恢复操作传送的部分内容的范围的范围域。
此外,消息ID实体指示从客户机100到服务器300传送的消息文件的标识符,并且是通常在消息文件传送或者接收功能中提供的实体,而不管上传恢复功能。等于用户代理和主机的客户机100必须确保消息ID值的唯一性。而且,如果消息文件传送不成功,那么服务器300必须存储客户机100提供的部分内容和消息ID一预定时间段。这里,消息ID是唯一的消息ID。在停止消息文件传送时,服务器300存储停止传送的消息文件信息(关联于用户代理、主机、消息ID、内容长度等)。在客户机100进行消息文件上传恢复信息的请求时,服务器300必须提供对应消息ID的部分内容信息。服务器300通过客户机100的上传恢复操作接收部分内容。在停止传送后,服务器300必须存储从客户机100传送的部分内容。
在以没有定义总消息文件长度的块模式传送的部分内容的情形,客户机100在发送剩余数据时通知服务器300块模式。
随后,在步骤418服务器300通知客户机100从客户机100的消息文件的上传恢复操作已经成功完成。在此点,对上传恢复的POST请求的服务器的响应根据HTTP/1.1 200 OK配置,这意味着客户机100的上传恢复操作已经成功进行。
同时,在从停止传送的消息文件的信息获得的消息文件的内容长度不等于要重新传送的消息文件的内容长度时,即在消息文件已经由用户改变时,客户机100自动传送改变的消息文件,而不执行上传恢复。在由客户机100新传送的消息文件的ID等于先前停止传送的消息文件的ID时,服务器300必须自动删除存储的关联于停止传送的消息文件,同时存储新的消息文件。
换言之,在包括在对PINFO请求的服务器的响应中的全部消息文件大小的信息不同于关联于客户机100的上传恢复操作的全部消息文件大小的信息时,它被认为是客户机100已经改变了对应的消息文件,使得客户机100使用POST方法自动重新传送全部消息文件,而不执行上传恢复功能。
在使用现有POST方法重新传送消息文件的情形,不需要执行上传恢复功能,因为在传送小容量消息文件时,时间差是可忽略的。然而,如果在传送大容量消息文件时传送失败,那么可根据本发明使用上传恢复功能,从而减少传送时间。而且,本发明具有的优点在于通过上传恢复再次利用先前传送的消息文件,因而可避免不必要的网络使用。
换言之,本发明可避免无线因特网环境中的不必要的网络使用,并且降低因特网使用费用。此外,在由于外部因素网络失败或者客户取消消息文件传送时,本发明可执行客户选择的上传恢复功能,而不执行根据服务器一侧的源于网络失败的重新传送请求的操作,从而向用户提供使用基于超文本传送协议(HTTP)的应用时的便利性。
虽然已经为说明目的揭示了本发明的优选实施例,但本领域技术人员将会知道,可以进行不脱离本发明范围的各种修改、增加和替换。
权利要求
1.一种在因特网上从客户机到服务器传送消息文件的方法,该方法包括步骤在客户机开始到服务器的消息文件传送后停止消息文件传送时,向服务器发送对有关停止传送的消息文件的信息的请求;服务器提供停止传送的消息文件信息给客户机,以响应文件信息请求;以及根据由服务器提供的停止传送的消息文件信息,客户机执行上传恢复功能,以上传停止传送的消息文件的部分内容给服务器。
2.根据权利要求1所述的方法,其中停止传送的消息文件信息包括消息文件的标识符(ID)和指示相对全部消息文件大小的停止传送的部分内容的大小的信息。
3.根据权利要求1所述的方法,还包括步骤接收到停止传送的消息文件信息后,客户机确定停止传送的消息文件的全部大小是否已经改变;以及如果停止传送的消息文件的全部大小已经改变,就重新传送全部消息文件。
4.根据权利要求1所述的方法,还包括步骤如果先前存储的消息文件等于从客户机传送的新消息文件,那么服务器删除先前存储的消息文件,并且存储从客户机传送的新消息文件。
5.根据权利要求1所述的方法,还包括步骤在传送消息文件前,客户机发送消息给服务器,以确定服务器是否支持消息文件的上传恢复功能;以及服务器发送响应消息给确定服务器是否支持上传恢复功能的客户机。
全文摘要
本发明公开一种在因特网上从客户机到服务器传送消息文件的方法。在客户机开始到服务器的消息文件传送后停止消息文件传送时,客户机向服务器发送对停止传送的消息文件的信息的请求。服务器提供停止传送的消息文件信息给客户机,以响应文件信息请求。根据由服务器提供的停止传送的消息文件信息,客户机执行上传恢复功能,以上传停止传送的消息文件的部分内容给服务器。
文档编号H04L29/08GK1662002SQ20041010022
公开日2005年8月31日 申请日期2004年12月13日 优先权日2004年2月25日
发明者郑少罗, 申惠英 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1