System, method and computer program product for downloading pushed content
Abstract
Provides a system for downloading and pushing content that contains terminals that can identify downloaded content and load content with a digital signature service. The terminal can authenticate the loaded content of the service according to the digital signature, and if the loaded content of the service is authenticated, the downloaded content is taken out to the terminal. To this end, the terminal can authenticate the loaded content of the service and respond to receive the loaded content of the service and retrieve the downloaded content without being interfered by the terminal user. The terminal can also determine whether to block when receiving download content, so that the terminal receives less than all download content. If it is blocked, the terminal can resume downloading content so that the terminal can receive the plural data packets.
Term
No projected expiry on record.
- Priority
- Filed
- Published
- Today
26 claims: 25 independent, 1 dependent
- 1A system for downloading and pushing content; including:a terminal containing a processor that can identify downloaded content and service loading content with a digital signature;wherein the processor can authenticate the service loading content according to the digital signature, if yes If the content loaded in the service is authenticated, the downloaded content is taken out to the terminal, and the processing machine in it can authenticate the loaded content in the service and respond to receive the loaded content in the service and take out the downloaded content without being interfered by the terminal user . 一種下載推送內容所用之系統;包括:含有能識別下載內容及具有數位簽章之服務載入內容之處理機的一終端機;其中該處理機能根據該數位簽章認證該服務載入內容,若是該服務載入內容被認證,則將該下載內容取出至終端機,及其中該處理機能認證該服務載入內容及回應接收服務載入內容及不受終端機使用者之干擾下取出該下載內容。
- 2For example, the system of item 1 of the scope of patent application, in which the processor of the terminal machine can verify the digital signature with a public key to authenticate the content of the service. 如申請專利範圍第1項之系統,其中該終端機之處理機係能用公鑰查驗該數位簽章,從而認證該服務載入內容。
- 3For example, the system of item 2 of the scope of patent application further includes:a push starter that can digitally sign the service loading content with a private key associated with the public key, and then transfer the service loading content to the terminal. (push initiator). 如申請專利範圍第2項之系統,進一步包括:能用一與該公鑰關連之私鑰數位的簽章該服務載入內容,隨後將該服務載入內容傳送至終端機所用之推送起動器(push initiator)。
- 4For example, the system of item 1 of the scope of patent application further includes:an end server connected to the download content, wherein the service loading content identifies the start end server connected to the download content;wherein the processing function of the terminal machine is When the content loaded by the service is authenticated, the request for downloading the content can be sent to the origin server, and the processing machine can respond to the request to receive the download content from the origin server. 如申請專利範圍第1項之系統,進一步包括:與該下載內容關連之一起端伺服器,其中該服務載入內容識別與該下載內容關連之起端伺服器;其中該終端機之處理機能於該服務載入內容被認證時,能將下載內容之要求傳送至起端伺服器,而該處理機能回應該要求接收來自起端伺服器之下載內容。
- 5For example, the system of item 4 of the scope of patent application, in which the download content includes plural data packets, and the download agent can decide whether to block when receiving the plural data packets so that the download agent receives less than the plural data If the download content of the packet is blocked when the data packet is received, the download content will be resumed so that the download agent can receive the plural data packets. 如申請專利範圍第4項之系統,其中該下載內容包括複數之資料封包,而該下載代理者能決定是否在接收該複數之資料封包時發生阻斷致使下載代理者接收到少於複數之資料封包之下載內容,若是在接收資料封包時發生阻斷,即恢復下載內容,使下載代理者接收到該複數之資料封包。
- 7For example, the system of item 6 of the scope of patent application, wherein the download agent can further determine at least one remaining data packet to be received by the download agent, so as to completely receive the plural data packets of the download content, and can instruct the start The end server sends the at least one residual data packet and receives the at least one residual data packet, so that the download agent receives a plurality of data packets. 如申請專利範圍第6項之系統,其中該下載代理者進一步能決定待由下載代理者接收之至少一個殘留之資料封包,俾完全的接收到該下載內容之複數資料封包,並且能指示該起端伺服器將該至少一個殘留之資料封包送出及接收該至少一個殘留之資料封包,使該下載代理者接收到複數之資料封包。
- 8For example, the system of item 4 of the scope of patent application, wherein the download content contains plural data packets, and the processor of the terminal can operate a data packet that can receive plural data packets and receive at least one of at least one group of at least one of the data packets The download agent of the information package. 如申請專利範圍第4項之系統,其中該下載內容包含複數之資料封包,而該終端機之處理機能操作一能接收複數之資料封包及接收有關該資料封包之至少一個之至少一群之至少一個資訊封包之下載代理者。
- 9Such as the system of item 8 of the scope of patent application;wherein the download agent can monitor the received data packets and determine based on at least one information packet whether it is blocked when receiving plural data packets so that the download agent receives less than If the plural data packets of the downloaded content are blocked while receiving the plural data packets, the download agent can resume the download content, so that the download agent can receive the plural data packets. 如申請專利範圍第8項之系統;其中該下載代理者係能監測接收到之資料封包並根據至少一個資訊封包決定在接收複數之資料封包時是否發生阻斷以致該下載代理者接收到少於下載內容之該複數資料封包,若是在接收該複數資料封包時發生阻斷,該下載代理者能恢復下載內容,使下載代理者接收該複數之資料封包。
- 10A method for downloading and pushing content to a terminal; the method includes:receiving service loading content at the terminal, wherein the service loading content identifies the downloaded content and has a digital signature;authenticating the service loading content according to the digital signature;And after the authentication service loads the content, take out the downloaded content to the terminal, where the terminal authenticates the loaded content of the service, and responds to receive the loaded content of the service and takes out the downloaded content without being interfered by the terminal user . 一種下載推送內容至終端機之方法;該方法包括:於終端機接收服務載入內容,其中該服務載入內容識別下載內容及具有數位簽章;根據該數位簽章認證該服務載入內容;及認證服務載入內容後,取出該下載內容至終端機,其中該終端機認證該服務載入內容,並回應接收服務載入內容及不受終端機之使用者之干擾下將該下載內容取出。
- 11Such as the method of item 10 of the scope of patent application;wherein the authentication of the content of the service includes checking the digital signature with a public key. 如申請專利範圍第10項之方法;其中該服務載入內容之認證包括用公鑰查驗該數位簽章。
- 12For example, the method of item 11 of the scope of the patent application; further includes:using the private key used with the public key to digitally sign the service loading content;and transmitting the service loading content to the terminal. 如申請專利範圍第11項之方法;進一步包括:利用與該公鑰連用之私鑰數位的簽章該服務載入內容;及將該服務載入內容傳輸至終端機。
- 13For example, the method of item 10 in the scope of the patent application; wherein the service loading content identifies the origin server connected with the download content; and the retrieval of the download content includes:after the service loading content is authenticated, the download content will be requested The signal is sent to the origin server;and in response to the request, the terminal receives the downloaded content from the origin server. 如申請專利範圍第10項之方法;其中該服務載入內容識別與該下載內容關連之起端伺服器;而該下載內容之取出包括:於該服務載入內容被認證後,將要求下載內容之信號送至起端伺服器;及回應該要求,在終端機接收來自起端伺服器之下載內容。
- 14Such as the method of item 13 of the scope of the patent application; wherein the receiving of the download content includes:receiving the download descriptor, and then receiving the download content. 如申請專利範圍第13項之方法;其中下載內容之接收包括:接收下載描述符,然後接收下載內容。
- 15Such as the method of item 14 in the scope of the patent application; where the download content contains plural data packets, and the receiving of the download content also includes:deciding whether to block when receiving plural data packets so that the terminal receives less than downloads The plural data packets of the content;and if blocking occurs when the plural data packets are received, resume downloading the content so that the terminal can receive the plural data packets. 如申請專利範圍第14項之方法;其中該下載內容含有複數之資料封包,而其中接收下載內容尚包括:決定在接收複數之資料封包時,是否發生阻斷以致該終端機接收到少於下載內容之該複數資料封包;及若是在接收該複數之資料包時發生阻斷,則恢復下載內容使該終端機接收該複數之資料封包。
- 16Such as the method of item 15 of the scope of patent application; wherein restoring the download content includes:determining at least one residual data packet to be received by the terminal, so that the plural data packets of the downloaded content are completely received;instructing the originating server Sending the at least one residual packet;and receiving the at least one residual packet, so that the terminal receives the plurality of data packets. 如申請專利範圍第15項之方法;其中恢復下載內容包括:決定待由該終端機接收之至少一個殘留之資料封包,俾完全的接收到下載內容之該複數之資料封包;指示起端伺服器發出該至少一個殘留封包;及接收該至少一個殘留封包,使終端機接收到該複數之資料封包。
- 18Such as the method of item 17 in the scope of the patent application; wherein receiving plural data packets includes:monitoring the received data packets and determining whether the receiving of plural data packets is blocked according to at least one information packet, so that the terminal receives less When downloading the plural data packets of the content;and if the receiving of the plural data packets is blocked, the download content is resumed to allow the terminal to receive the plural data packets. 如申請專利範圍第17項之方法;其中接收複數之資料封包係包括:監測接收到之資料封包並根據至少一個資訊封包決定在接收複數之資料封包時是否發生阻斷以致該終端機接收到少於下載內容之該複數資料封包;及若是在接收該複數資料封包時發生阻斷,則恢復下載內容使終端機接收該複數之資料封包。
- 19A computer program product for downloading and pushing content to a terminal; the product contains at least one computer-readable storage medium in which a computer-readable program code is stored, and the program code includes:An executable code, and the content loaded by the service recognizes the downloaded content and has a digital signature;the second executable code used to authenticate the content loaded by the service according to the digital signature;and when the content loaded by the service is At the time of authentication, the third executable code used by the downloaded content is retrieved to the terminal, where the second and third executable code are in response to receiving the content loaded by the service and are not interfered by the user of the terminal. Respectively implement the authentication of the service loading content and take out the downloaded content. 一種下載推送內容至終端機所用之電腦程式產品;該產品含有至少一個在其中儲存有電腦可讀程式碼之電腦可讀儲存媒體,該程式碼包括:供終端機接收服務載入內容所用之第一可執行程式碼,而該服務載入內容識別下載內容並具有一數位簽章;根據該數位簽章認證該服務載入內容所用之第二可執行程式碼;及當該服務載入內容被認證時,取出該下載內容至終端機所用之第三可執行程式碼,其中該第二及第三可執行程式碼係回應接收服務載入內容及不受該終端機之使用者之干擾下,分別實行服務載入內容之認證及取出下載內容。
- 20For example, the computer program product of item 19 of the scope of patent application;the second feasible program code is to confirm the digital signature with the public key to load the content with the authentication service. 如申請專利範圍第19項之電腦程式產品;其中該第二可行程式碼係用公鑰確認該數位簽章,以認證服務載入內容。
- 21For example, the computer program product of item 20 of the scope of patent application; further includes:using the private key connected with the public key to digitally sign the fourth executable code used to load the content of the service;and transmit the content of the service loaded to the terminal The fifth executable code used by the machine. 如申請專利範圍第20項之電腦程式產品;進一步包含:使用與該公鑰關連之私鑰數位的簽署該服務載入內容所用之第四可執行程式碼;及傳輸該服務載入內容至終端機所用之第五可執行程式碼。
- 22For example, the computer program product of item 19 of the scope of patent application;where the service loading content identifies the server connected with the download content, and the third executable code is used when the service loading content is authenticated. The request for downloading content is sent to the origin server, and then the terminal receives the download content from the origin server in response to the request. 如申請專利範圍第19項之電腦程式產品;其中該服務載入內容識別與該下載內容關連之一起端伺服器,而該第三可執行程式碼乃於該服務載入內容被認證時,將下載內容之要求傳送至該起端伺服器,然後應該要求而於該終端機接收來自該起端伺服器之下載內容。
- 23For example, the computer program product of item 22 of the scope of patent application;the third executable program code is used to receive the download descriptor. 如申請專利範圍第22項之電腦程式產品;其中該第三可執行程式碼係用以接收下載描述符。
- 24For example, the computer program product of item 23 of the scope of patent application;where the download content contains plural data packets, and the third executable code can be used to determine whether the terminal is blocked when receiving the plural data packets The terminal receives the data packet that is less than the download content;and if it is blocked when receiving the plurality of data packets, the download content is resumed to allow the terminal to receive the plurality of data packets. 如申請專利範圍第23項之電腦程式產品;其中該下載內容含複數之資料封包,而該第三可執行程式碼更能用以決定在接收該複數之資料封包時是否發生阻斷以致該終端機接收到少於下載內容之該資料封包;及若是在接收該複數之資料封包時發生阻斷,則恢復下載內容使該終端機接收該複數之資料封包。
- 25Such as the computer program product of item 24 of the scope of patent application;wherein the third executable code is used to restore the download content by determining at least one residual data packet to be received by the terminal to complete the plural data of the download content Packet receiving;instructing the origin server to transmit at least one of the residual data packets;and receiving at least one of the residual data packets, so that the terminal receives the plurality of data packets. 如申請專利範圍第24項之電腦程式產品;其中該第三可執行程式碼係用以藉由決定待由終端機接收之至少一個殘留之資料封包恢復下載內容以完成該下載內容之複數之資料封包之接收;指令該起端伺服器傳送該殘留資料封包之至少一個;及接收該殘留資料封包之至少一個,使該終端機接收該複數之資料封包。
- 26For example, the computer program product of item 22 of the scope of patent application;wherein the download content contains plural data packets, and the third executable code is used to receive at least one of the plural data packets and at least one of the data packets At least one information packet in a group. 如申請專利範圍第22項之電腦程式產品;其中該下載內容含有複數之資料封包,其中該第三可執行程式碼係用以接收該複數之資料封包及接收有關該資料封包之至少一個之至少一群之至少一個資訊封包。
- 27For example, the computer program product of item 26 of the scope of patent application;wherein the third executable code is used to monitor the received data packet according to at least one of the information packets to determine whether the received data packet occurs when the plural data packet is received Block so that the terminal receives the plurality of data packets less than the download content, and if blocking occurs when receiving the plurality of information packets, the third executable code is used to restore the download content and make the terminal receive The plural data packets. 如申請專利範圍第26項之電腦程式產品;其中該第三可執行程式碼係更用以根據資訊封包之至少一個監別該接收到之資料封包決定在接收該複數之資料封時,是否發生阻斷以致該終端機接收到少於下載內容之該複數資料封包,及若是在接收該複數之資訊封包時發生阻斷,該第三可執行程式碼乃用以恢復下載內容使該終端機接收該複數之資料封包。
Independent claims25
77 paragraphs, as filed
System, method and computer program product for downloading and pushing content
The present invention generally relates to a system and method for downloading content, and more specifically, to a system, method, and computer program product for downloading content based on signs.
Modern communications have resulted in the rapid expansion of wired and wireless networks. In response to consumer requirements, computer networks, television networks, and telephone technologies are experiencing unprecedented technological development. Wireless and mobile network technologies have provided more flexible and real-time information transmission machines in response to consumer requirements.
In order to make it easy and convenient for users to transmit information, network technology is constantly improving. Due to local, regional and global networks, the rapid expansion has brought huge amounts of information to society. These network technologies have expanded to include wireless and mobile phone technologies. Information can be downloaded to desktop systems, wireless systems, mobile systems, etc. via these networks. For example, it is now possible to download the required information via the Internet to, for example, mobile phones, personal digital assistants (PDAs), and laptop computers. One technology that enables wireless devices to transmit and receive Internet content is the Wireless Application Protocol (WAP), which integrates the Internet and other networks into a wireless network platform. Generally speaking, WAP is a set of protocols that describe the characteristics and functions of the Internet and wireless service specifications. It is independent of wireless network regulations and is an open standard. WAP bridges the gap between the wired Internet domain and the wireless domain, allowing wireless device users to enjoy the benefits of the Internet connecting the two platforms.
The second-generation wireless service (communication technology), commonly known as 2G wireless service, is a wireless service based on one of the circuit switching technologies before the project. Therefore, 2G systems, such as the global communication system for mobile communications (GSM) and personal communications services (PCS), use digital radio technology to improve the quality of the first-generation mobile communications technology and increase the scope of its services. The third-generation wireless service (communication technology) is commonly referred to as 3G wireless service. It is a set of digital technology. It is a technology that uses a new packet-based transmission method between terminals and the network to improve transmission capacity, speed and efficiency. Users of 3G devices and networks can save (file) access multimedia communication services such as video-on-demand, video conferencing, fast web page access, and file transfer. Current and future services will or will continue to be provided by network operators to mobile device (cell phone) users via the Internet.
A special service feature of existing transmission information is a "push" feature (also known as "announcement" or "warning" feature). In a typical user server model, the user sends a service or information request to the server, and then the server sends information in response to the user. This task is generally called pull technology, and users can obtain information from the server. For example, registering a consistent resource addresser (URL) on the client device, that is, sending it to the server to fetch the related data is a pull transaction.
In contrast, "push" technology usually refers to a means of sending information to one or more devices without prior user actions. Therefore, there is no clear request from the user before the server sends its information, and therefore the push technology must include server-induced transactions. Push technology can be used in conjunction with various protocols and communication technologies. For example, some representative push technologies include short message service (SMS), wireless application protocol (WAP) push, multimedia messaging service (MMS), and dialog initiation protocol (SIP).
According to the WAP push architecture, for example, the delivery (transmission) of its content is triggered by a push launcher (server), and then the launcher sends a push message to the client to notify the user that a message has come in. Then, the user starts download processing according to the parameters in the push message and downloads content from the push initiator. More specifically, after the user has started the download communication (download session) between the push initiators, a service instruction can be delivered to the user, so the content of the service instruction can be provided to the user of the user (for example, "you have come in Do you want to receive the ad?") Then the user can make a decision to accept or reject the service according to the service instruction. If the service is received, the content can be downloaded from the push launcher to the client. For details of this kind of WAP push architecture, please refer to "Wireless Application Protocol Forum, WAP Push Architecture Overview WAP-250-PushArchOverview-20010703-a; the contents of these documents are incorporated into this manual as a reference.
Although the traditional push technology is sufficient to push content to the user end, this technology still has some shortcomings. For this reason, such as the traditional push architecture provided by the WAP push architecture, a client (or user of the client) conversation mechanism (interaction) is required to implement the download of content from the push launcher to the client (that is, the end user is in the content transmission Must receive the pushed content before). For a variety of different services and content, it is best to push the content to the user without requiring the end-user to explicitly receive the content when downloading.
One way to solve the shortcomings of requiring end users to receive the pushed content is the WAP-defined service loading technology, which can be used by the client to download content without interference from the end user. Therefore, the push launcher pushes the service loading content to the client, and when the client receives the service loading content, it can automatically download it from the starting server (ie "pull") the service loading Content marked by content. For details of this WAP service loading architecture, please refer to "Wireless Application Protocol Forum, Service Loading, WAP-168-Service Load-20010731-a", the content of which is incorporated into this manual for reference.
Although the service loading technology solves the shortcomings of requiring end users to communicate and receive content, this technology still has shortcomings. In this regard, user/non-user push-type services (such as e-mail) are vulnerable to spamming. As you know, the so-called abuse usually refers to receiving illegal services, such as a large number of e-mails. Therefore, there is an urgent need to develop a system and method that reduces the reception of illegal services or content and pushes the content to the user without the intervention of end users.
As is well-known, many technologies for downloading content through air at least to some extent expect that the content can be downloaded in a transmission or a down load session. For example, the Open Mobile Alliance (OMA) technology currently used for downloading content under the Over the Air (OTA) agreement at least to some extent expects that the content can be downloaded in a download session. However, if the client downloads a large amount of content, it usually takes a lot of time, so the client may encounter certain types of errors or transmission interruption during downloading. For example, an end user can interrupt the transmission of downloaded content if the end user wants to use the client terminal for other purposes such as receiving content. Furthermore, when unexpected events such as user-side errors (such as battery loss, malfunction and rupture, etc.) or network failure (such as non-covered areas) occur, the transmission of downloaded content will be interrupted.
Generally, when the content is downloaded in a single download communication, and if an error occurs in the downloading procedure or the transmission is interrupted, the client must start the download again to completely download the content. For example, when a user end downloads a content with a size of 320 million characters through the General Packet Radio Service (GPRS) and is interrupted by an error or other obstruction, the user end usually has to start downloading and receive the content again, even if it is in error. Or most of the content has been downloaded before the interruption. At present, several technologies such as FTP technology have been developed to regain the download session due to errors or interruptions. However, these technologies can only obtain download conversations that have encountered network connection errors (such as modem failure) and cannot obtain download communication interrupted due to halted or other reasons. Therefore, there is an urgent need to develop a method that not only has no end-user interference and reduces the reception of illegal services or content, but also can additionally or depending on the desire to obtain download dialogues interrupted by the users error or network failure, and push the content to the client. The system and method. Preferably, this system and method can provide fast authentication (authentication) users who wish to receive content and confirm that the user has the right to receive the content or service. In addition, the system preferably enables users to receive paid content conveniently, so as to avoid paying back the paid fee for errors in the download communication of the content.
In view of the above background, the present invention provides an improved system, method, and computer program product for downloading push content. According to the present invention, the content can be pushed to the terminal without terminal user interference and the terminal receiving illegal content can be reduced. At the same time, it can authenticate the push initiator, the origin server and, for example, the identification or Authentication technology pushes the content from the starting server to the terminal, and it can authenticate the pusher, the starting server and the terminal before the content is pushed to the terminal according to the service download technology before it is pushed from the starting server to the terminal. / Or content. When the content is pushed to the terminal through the service download technology, the content can be pushed to the terminal without interference from the end user. In addition, by requiring the terminal to authenticate the pusher, origin server and/or content, the present invention can reduce the possibility of the terminal receiving illegal (ie, unauthorized) content.
In addition to pushing content to the terminal without user interference and reducing the possibility of receiving illegal content, the system, method, and computer program product of the present invention can restore download communications that have encountered terminal errors and network errors. Therefore, the received download content part can be quickly stored in a non-volatile cache together with the download descriptor, information packet or other indication of the download content and the status of the download content. Therefore, when the download of the content is interrupted, the download descriptor and/or the data packet can be used to determine the residual part of the content, so that the residual content can be downloaded and the download of the content is completed.
The first object of the present invention is to provide a system for downloading and pushing content. This system includes a terminal that can receive service loading content. The service loading content is marked with download content and has a digital signature. The terminal can download content according to the digital signature authentication service, and after the authentication of the service download content is completed, the downloaded content can be taken out to the terminal. For example, the terminal can verify the digital signature with a public key to authenticate the service to load the content. Therefore, the system may also include a push initiator for digitally signing the service loading content with a private key used in conjunction with the public key, and then transmitting the loading content to the terminal. However, no matter how the terminal authenticates the content loaded by the service, the terminal can respond to the reception of the loaded content of the service and authenticate the loaded content of the service without interference from the user of the terminal and remove the downloaded content.
In addition to the download content, the service loading content can identify the origin server used in conjunction with the download content. To this end, the system of the present invention may also include an identifying origin server. In this case, after the service loading content is authenticated, the terminal can send a download content request to the origin server to retrieve the download content, and then respond to the request to receive the download content from the origin server. More specifically, the terminal can receive the download descriptor and then receive the download content. Similarly, the download content may contain a majority of data packets. In this case, the terminal can determine whether an interruption occurs when receiving the majority of data packets so that the terminal receives less download content than the majority of data packets. Assuming that an interruption occurs when receiving most of the data packets, the terminal can resume downloading the content, so that the terminal can receive most of the data packets without the need to transmit the data packets that were successfully transmitted before the interruption. The terminal can further determine that at least one remaining data packet is received at the terminal to achieve the complete reception of most of the data packets of the downloaded content. Then the terminal instructs the origin server to transmit the at least one residual data packet, and then receives the at least one residual data packet, and the terminal receives the plurality of data packets.
When the downloaded content contains a plurality of data packets, the economy machine can receive the plurality of data packets and receive one or more information packets related to one or more groups of one or more data packets. In this case, the terminal can monitor the received data packets and determine whether an interruption occurs when receiving the majority of data packets based on at least one information packet, so that the terminal receives less download content than the majority of data packets. Assuming that an interruption occurs when receiving most data packets, the terminal can resume downloading content, so that the terminal does not need to transmit the data packets that have been successfully transmitted before the interruption, and receive most of the data packets.
Another object of the present invention is to provide a method and computer program product for downloading and pushing content. Therefore, the present invention relates to an improved system, method and computer program product for downloading and pushing content. Compared with the prior art technology of pushing content to the terminal, the present invention can push the content to the terminal without interference from the terminal user, and can reduce the possibility of the terminal receiving illegal content such as spamming content. Furthermore, compared with the previous technology of downloading and pushing content, the present invention can recover the download communication that has suffered terminal error or network error. Therefore, the terminal, system and method of the present invention can solve various problems identified in the prior art and provide additional advantages.
The preferred embodiments of the present invention are described in detail below with the accompanying drawings. Since the present invention can be implemented in many different forms, the scope of the present invention should not be limited to the illustrated embodiments. The same symbols shown in the figures represent the same elements or components.
Now, Figure 1 will be described. This figure shows a type of terminal and system provided by the present invention. The system, terminal, and method of the present invention are basically related to mobile communication applications, but it should be understood that they can also be applied to various other applications, including the mobile communication industry and those outside the mobile communication industry, such as wired and/or Application methods such as wireless networks (such as the Internet, etc.).
As shown in the figure, the terminal 10 may include an antenna 12 for transmitting and receiving signals from a base station (BS) 14. The base station 14 is a part of a cellular network, which includes components used to operate the network, such as a mobile switching center (MSC) 16. Those familiar with this technology know that the cellular network is also called base station/MSC/work interface function (BMI). During operation, the MSC can send calls and messages in response to calls made and received by the terminal. When the terminal is doing call processing, the MSC also provides the transmission backbone, and the gateway (GTW) through which the MSC can connect to the server is like a wireless application protocol gateway (WAPGTW). This wireless application gateway includes one or more gateways, such as a push proxy gateway 18 and a method proxy gateway 20.
MSC16 can be connected to data networks, such as local area network (LAN), metropolitan area network (MAN) and/or wide area network (WAN). In addition, the MSC can be directly and/or indirectly connected to the data network via the WAPGTW (for example, the push agent GTW18 and/or the method agent GTW20, etc.). A representative example is that the MSC is connected to WANGTW, and the GTW is connected to a wide area network (WAN) such as the Internet 22. Furthermore, devices such as processing components (such as personal computers, server computers, etc.) can be connected to the terminal 10 via the Internet. For example, as will be described below, the processing element may include one or more processing elements used in conjunction with the push initiator 24, and one or more processing elements used in conjunction with one or more start servers 26, as shown in Figure 1. Shown.
In addition to the MSC 16, a base station (BS) 14 can be connected to a signal processing GPRS (General Packet Radio Service) support node (SG SN) 28. As well known, the SGSN can be used as a packet conversion service in the same way as the MSC16. The SGSN and MSC can also be connected to a data network such as the Internet 22. The SGSN can be directly connected to the data network, but a more representative implementation mode is to connect to a packet conversion type nuclear network such as the GPRS nuclear network 33. This packet conversion core network is then connected to another GTW such as GTW GPRS Support Node (GGSN) 30, and the GGSN is connected to the Internet. In addition to this GGSN, a packet-transformed nuclear network can also be connected to the WAN GTW (such as push agent/GTM 18 and/or method agent/GTW 20).
By connecting the SGSN 28 to the GPRS core network 33 and the GGSN 30, the origin server 26 and other devices can be connected to the terminal 10 via the Internet 22, SGSN and GGSN. In this way, devices such as the origin server can communicate with the terminal through SGSN, GPRS and GGSN. For example, the origin server can provide content to the terminal according to the Multimedia Broadcast Multicast Service (MBMS). For details about MBMS, please refer to the 3rd Generation Partnership Project (3GPP) technical specification 3GPP TS 22.146, titled "Multimedia Broadcast Multicast Service (MBMS).
In addition to being connected to the BS 14, the terminal 10 can be wirelessly connected to one or more wireless access points (APs) 30. The wireless access point 30 may include access points connected by radio frequency (RF), Bluetooth (BT), infrared (IrDA), etc., or a variety of wireless network technologies including WLAN technology. The aforementioned APs 30 can also be connected to the Internet 22. Like MSC 16, APs can be directly connected to the Internet. However, one of the preferred implementation modes is to indirectly connect to the Internet via WAN GTW, including push proxy/GTW and method proxy/GTW. It can be seen from the following that when one or more of the terminal 10, the push initiator 24, the start server 26, and other devices are directly or indirectly connected to the Internet, the terminal can interact with the push initiator to start Servers, etc. communicate with each other to perform various functions of the terminal, such as sending data, content, etc. and/or receiving content, data, etc. from the push starter, the start server, etc.
Furthermore, the terminal 10 may optionally connect it to the digital broadcaster 34 via a digital broadcast network such as a terrestrial digital video broadcast (such as DVB-T, DVB-H, ISDB-T, ATSC, etc.) network. From the following description, it will be known that by connecting the terminal directly or indirectly to the digital broadcaster, the terminal can receive one or most of the TV, radio and/or data channels from the digital broadcaster. For this purpose, the digital broadcaster may contain or be connected to a transmitter (TX, transmitter) 36 such as DVB-T TX. Similarly, the terminal may include a receiver such as a DVB-T receiver (not shown). The terminal can receive content from many different entities in one or many different methods. In terms of implementation, for example, the terminal may include a device capable of transmitting and/or receiving according to DVB (such as DVB-T, DVB-H, etc.) technology or cellular (such as 1G, 2G, 2.5G, 3G, etc.) communication technology One of the materials is terminal 10'. In this embodiment, the terminal 10' may include an antenna 12A for receiving content from TX, and another antenna 12B for sending and receiving signals from BA 14. For details of this type of terminal, please refer to US Patent Application No. 09/894,532, title of invention "Receiver", filed on June 29, 2001, the content of which is incorporated into this specification for reference.
In addition, by directly connecting the terminal 10 to the digital broadcaster 34 through the TX 36, the terminal can be connected to the digital broadcast receiving terminal 38, and the terminal can be connected to the digital broadcaster 34 directly and/or via TX. In this case, the digital broadcast receiving terminal 38 may include a DVB-T receiver such as a DVB-T receiver in a set top box type. The terminal can be locally connected to the digital broadcast receiving terminal, for example, via a personal area network. However, a preferred implementation mode is to indirectly connect the terminal to the digital broadcast receiving terminal via the Internet 22.
According to several digital broadcasting technologies such as DVB-T, Internet Data Communication (IPPC) can be used to provide audio, video and/or other content to the terminal 10. In this way, the digital broadcaster 34 can use the digital broadcast technology to provide Internet data (IP) to the terminal. As those familiar with this technology know, digital broadcasting technologies such as DVB-T are basically a honeycomb type, with transmission sites connected to each cell of different cells. For example, DVB-T uses MPEG-2 transport stream, so that IP data can be encapsulated in a DVB transmission signal sent from a digital broadcaster or more specifically, TX 36. Therefore, the data stream containing the IP datagram can be supplied from several sources and can be encapsulated by an IP encapsulation machine (not shown). Then, the encapsulated IP data stream is supplied to the data broadcasting (such as DVB-T) network from the IP encapsulator.
Then, the encapsulated IP data stream is sent to one or more transmission stations, and cells of the data broadcasting network are formed at the stations. For example, the encapsulated IP data stream can be transmitted to one or more transmission stations in the MPEG-2 transport stream, and then directly transmitted to the terminal through the atmosphere, or a receiving station equipped with one or more terminals. It can be seen from the following description that the MPEG-2 transport stream is uniformly directional from being generated by the IP encapsulator to being received at the terminal or receiving station. Therefore, the IP packet containing the data can be embedded (packed) in the Multi-Protocol Encapsulation (MPE) block and transmitted in the transport stream packet.
In addition to IP packets, MPE blocks can also contain forward error correction (FEC) information and time cut information. By including information such as time cut information, data can be transmitted intermittently (discontinuously) by a receiver (such as a terminal 10), so that when no data is transmitted to the receiver, it can be cut off to save battery power. In other words, if the current default method of continuous digital broadcasting (such as DVB-T) transmission is replaced by time-cutting technology, time-sharing multiplexing configuration technology (refer to DVB-H standard) can be used. . By using this method, services can be provided quickly, so that the receiver stops immediately when not receiving data and restarts to receive data packets when needed.
Now, Figure 2 will be described. Shown is a block diagram of an entity that can operate as a terminal 10, a push agent/GTW 18, a method agent/GTW 20, a push initiator 24, and/or an origin server 26. Although shown as separate entities in the figure, in some embodiments, one or more entities can support one or more terminals, push agents/GTW, method agents/GTW, push initiators and/or start servers The logical separation of the device but the arrangement of one or more entities together. For example, a single entity can support logically separated but configured push agent/GTW and method agent/GTW together. Similarly, for example, a single entity can support a logically separated push initiator and an origin server that are configured together.
As shown in the figure, the entity that can function as the terminal 10, push agent/GTW 18, method agent/GTW 20, push initiator 24, and/or origin server 26 usually includes a connection to the memory 42 and the interface 44.Processor40. Processing machine 40. The above-mentioned memory 42 may include volatile memory and/or non-volatile memory and usually includes software application programs, command programs or similar programs to enable the processor to execute steps connected to the physical operations of the embodiments of the present invention. For example, in the case of a terminal, the memory may include: user or host applications such as a web browser for traditional communication based on the HyperFile Transfer Protocol (HTTP), and file transfer (such as FTP) applications , Remote application (telnet application), inter-layer access application, etc. The memory may also contain a software download agent (download agent) that fully downloads the help content described below to the terminal. In addition, as explained below, the memory may also include a non-volatile cache memory 42A for storing incomplete download content and a non-volatile memory 42B for storing complete download content.
Now, Figure 3 will be described, which shows a functional diagram of a mobile station that can operate as a terminal 10 according to an embodiment of the present invention. It should be understood that the mobile station described above and to be described only exemplifies a terminal that can benefit from the present invention, and therefore should not be used to limit the scope of the present invention. Several implementation aspects of the terminal have been described above, but the present invention can also be applied to, for example, portable digital assistants (PDAs), pagers, laptop computers, and other types of voice and file communication devices.
The mobile station includes a transmitter 44, a receiver 46, and a controller 48 for transmitting signals to and receiving signals from the transmitter and receiver. These signals contain signal processing information according to the interface standards of the cell system, as well as user voice and/or user-generated data. Therefore, the mobile station can be operated with one or more air interface standards, communication protocols, modulation types, and access types. More specifically, the mobile station can operate according to the 1st generation (1G), 2nd generation (2G), 2.5th generation (2.5G) and/or 3rd generation (3G) communication protocols. For example, the mobile station can operate under the 2G wireless communication protocol IS-136 (TDMA), GSM and IS-195 (CDMA). The mobile station can also operate on one or more of various digital broadcasting technologies, such as DVB technology (such as DVB-T, ETSI standard EN 300744). In addition, mobile stations can also operate on various broadcast and/or multicast technologies such as MBMS technology (such as 3GPP TS22.146). Furthermore, the mobile station can operate according to ISDB-T (Japan Terrestrial Integrated Service Digital Broadcasting), DAB (Digital Audio Broadcasting), ATSC (Advanced Television System Committee) technology, etc. Some narrow-band AMPS (namely NAMPS) and TACS, using the teachings of the present invention, can benefit from mobile terminals, as well as dual-band and high-frequency phones (such as digital/analog or TDMA/CDMA/analog phones).
As is well known, the controller 48 contains the circuits required to perform the audio and logic functions of the mobile station. For example, the controller may include a digital signal processor, a microprocessor, various analog-to-digital converters, various digital-to-analog converters, and other supporting circuits. The control and signal processing functions of the mobile station are arranged among the devices according to their respective capabilities. Therefore, the controller has the functions of encoding and interleaving messages and data before modulation and transmission. The controller can additionally include an internal voice encoder (VC) 47A, and can also include an internal data modulator (DM) 48B. In addition, the controller can contain functions for operating one or more software applications (which can be stored in memory).
The mobile station also includes a user interface including a traditional headset or speaker 50, an electric bell 52, a microphone 54, a display 56 and a user input interface, and these components are all connected to the controller 48. The user interface allows the mobile station to receive data, and is composed of one or more such as a keypad 58, a touch display (not shown), or other devices. One embodiment includes a small keyboard. The small keyboard is equipped with traditional number keys (0-9) and related keys (#, ) and other function keys for operation of the mobile station.
Based on various wired and/or wireless technologies, the mobile station may also include regional communication with one or more electronic devices (e.g. another terminal, origin server 26, AP 32, digital broadcast receiving terminal 38, digital broadcaster 34) One or more devices used. For example, the mobile station may include a high-frequency (RF) transceiver 60 and/or an infrared (IR) transceiver 62, so that the mobile station implements area communication based on high-frequency and/or infrared technology. In addition, the mobile station also includes a Bluetooth (BT) transceiver 64 to enable the mobile station to implement regional communications based on the Bluetooth transmission technology. Although not shown in the figure, the mobile station can transmit and/or receive data from various electronic devices equipped with wired and/or wireless network technologies, including LAN and/or WLAN technologies, as needed. To this end, like the terminal 10' shown in Figure 1, the mobile station may include an additional antenna or similar element to transmit and/or receive data from an electronic device (such as a digital broadcaster).
The mobile station may further contain memory such as Subscriber Identity Module (SIM) 66 and Removable User Identity Module (R-UIM) to store information about mobile users. In addition to the SIM, the mobile station can also contain other memory, that is, volatile memory, such as volatile random access memory (RAM) that contains a cache area for temporary storage of data. The mobile station may also contain other non-volatile memory 70, which may be fixed and/or removable. Non-volatile memory can contain EEPROM, flash memory, hard disk, etc. These memories can store a variety of information and data for the mobile station to perform the functions of the mobile station. For example, the memory may contain: user or host applications such as web browsers for traditional communication based on the HyperFile Transfer Protocol (HTTP), file transfer (such as FTP) applications, remote applications and inter-layer access applications, etc. . The memory may also contain the software download agent program that the help content described below is completely downloaded to the terminal. In addition, the non-volatile memory may contain a buffer (not shown) for storing incomplete download content, and may also contain a storage section for storing other content such as complete download content.
According to the implementation aspect of the present invention, the system can operate according to one or more push technologies. As mentioned in the previous section above, the traditional push technology provided by the WAP push framework requires the intervention of the user (or the user of the user) to implement slave push The action of the launcher to download content to the user (that is, the end user needs to receive the pushed content before the content is delivered). Since traditional service loading technology can push content without the intervention of end users, spamming is prone to occur on user/non-user push services (such as email, etc.). In this regard, the present invention can push the content to the terminal 10 without the intervention of the terminal user, and at the same time reduce the possibility of the terminal receiving illegal content. The so-called "content" here refers to one or more of various different contents and contents that can be pushed to or provided to the terminal or accepted by the terminal.
More specifically, the terminal 10 of the present invention can monitor one or more push initiators 24, the origin server 26, and the content pushed from the origin server to the terminal according to the token authentication technology. Preferably, the terminal can authenticate the push initiator, the start server and/or the content before pushing the content from the start server to the terminal, for example, according to the service download technology. Then, if the terminal is authenticated to the push initiator, the origin server and/or the content, the terminal will receive the push content, otherwise the terminal will reject the push content. The terminal is required to perform the above authentication and the terminal has the authentication to the push initiator, the starting server and/or the content, and the content is pushed to the terminal according to the service loading technology, and the terminal can be without the intervention of the terminal user Receiving the pushed content can also reduce the terminal receiving illegal (ie, unauthorized) content.
Referring now to FIG. 4, it shows a control flow chart of each element of the system used to implement the method of pushing content to the terminal 10 for download according to an embodiment of the present invention. The illustrated method is the authentication push launcher 24, but the present invention can also authenticate the origin server 26 that provides data to the terminal and/or the provided content. The method further includes monitoring the push launcher according to a token-based authentication technology. The method can also authenticate and push the initiator, the starting server and/or the provided content according to various public or private key technologies.
As shown in FIG. 4, the method of pushing content to the terminal 10 for downloading includes sending a subscription request to the push initiator 24 and receiving a certification ticket or certificate, or a public key (public key) terminal. The above special request may contain any number of information suitable for requesting the public key. The above-mentioned special request includes, for example, the terminal wishing to authenticate the push initiator so that the terminal receives an indication of the push content originating from the push initiator. In addition to the above instructions, the special request can monitor one or more origin servers 26 and/or terminals that wish to further authenticate the content before receiving the pushed content.
When receiving the special request, the push initiator 24 responds and transmits a public key to the terminal 10 so that the public key is combined with the special request. Then the terminal, for example, stores the public key and the special request in the memory 42 (for example, at the moment when the terminal authorizes more than one push initiator). In addition to combining with the special request (in the push initiator and/or terminal), the above public key also has a combined (connected) private key. To this end, the push initiator maintains the private key in a private but public key (non-secret key) that can be used by the terminal. As described below, the push initiator can use the private key to digitally sign the data transmitted to the terminal. According to the digital signature and public key, the terminal authenticates that the data is sourced (from) the authorized push initiator.
At any time after the push activator 24 transmits the public key to the terminal 10, the push activator can communicate with the terminal according to a service loading architecture such as the WAP service loading architecture to start sending content to the terminal. To this end, the push initiator can transmit the service loading content to the push agent/GTW 18 according to the Push Access Protocol (PAP), and instruct the push agent/GTW to transmit the service loading content to the terminal 10. However, before the push launcher transmits the content loaded by the service to the push agent/GTW, the push launcher loads the content with a private key digital signature service, for example, according to any conventional technology. In addition to the digital signature, the service content usually contains a uniform resource identifier (URI) of the content to be received by the terminal.
It can be seen from the following that in many cases, the push initiator 24, or another device and server, etc. that can control the push initiator can maintain a restricted listing, including one or more authorized The origin server 26 and/or authorized content, and/or one or more blocked origin servers and/or blocked content. In this case, before the push launcher sends the service loading content to the push agent/GTW 18, and before the push launchers digital signature service loads the content, the above list of restrictions can be borrowed from the push launcher or other The device, server, etc. check to maintain the restricted list to ensure that the origin server and/or content is authorized and/or the origin server and/or content is not blocked. By checking the list of restrictions, the push enabler can send the content loaded by the service to the terminal. If the content is loaded by the service, more specifically, the starting server and the content are verified by the content loaded by the service. When the restricted table columns match.
After the push launcher sends the digitally signed service loading content, the terminal 10 will retrieve the content identified by the URI without user interference when receiving the content. However, before the content is retrieved, the terminal may use the service to load the content to verify the digital signature without user interference and automatically authenticate the service to load the content. To this end, the terminal can verify the digital signature using the public key transmitted by the push initiator to the terminal. By verifying the digital signature, the terminal can prove that the service loading content occurred in the authorized push initiator 24 and can prove that the service loading content confirms the authorized content of an authorized origin server 26 (authorized content). content), if it is specified in the special request.
If the terminal cannot confirm the service loading content due to, for example, being unable to verify the digital signature with the service loading content, the terminal 10 can respond in various ways. For example, the terminal stops communicating with the push agent/GTW 18. In addition, the terminal function notifies the push launcher 24, the push agent/GTW and/or the user of the terminal about the terminal being unable to verify the received service loading content. This error may be attributed to the abuse of the terminal.
If the terminal successfully proves that the service has loaded the content by verifying that it has the digital signature of the service loaded content, the terminal can take out or download the content marked on the service loaded content. To this end, the terminal can communicate with the method agent/GTW 20 in accordance with the Wireless Dialogue Protocol (WSP). More specifically, the terminal function instructs the method agent/GTW to request the URI verification content from the origin server 26 or control access to the verification content. The above-mentioned method proxy/GTW can contact the origin server to request the verification content according to the HyperFile Transfer Protocol (HTTP) etc. When the originating server receives the request, it responds and sends the authentication content to the method agent/GTW according to the wireless markup language (WTL), and then it sends the authentication content to the terminal.
As described in the previous technical item, if the terminal 10 downloads a large amount of content through the method proxy/GTW 20, for example, from the origin server, it takes a considerable amount of time. Therefore, the terminal may experience some errors during the download processing. Or the possibility of transmission interruption. In the past, when content was downloaded during a single download communication period, if an error occurred in the download program or the transmission was interrupted, the download process had to be repeated to completely download the content. However, the present invention can not only push the content to the client without terminal user interference, but also reduce the possibility of receiving illegal services or content, and it can even restore the download communication that has suffered terminal errors and network errors.
As mentioned above, the system of the present invention can use the method proxy/GTW 20 to resume the download communication between the origin server 26 and the terminal 10. However, it should be understood that the system can also restore the download communication between any devices that can connect to the terminal, such as the terminal and the server. For example, the system can restore the download communication between the terminal and the origin server, the download server, and the digital broadcaster 34 (refer to Figure 1). In addition, it should be understood that if the download content contains any one or more of point-to-point, unicast, multicast, and broadcast content, the system can restore the download communication between the terminal and any other device.
Now, FIG. 5 will be described, which shows a block diagram of the operation of the terminal 10 for downloading content from the origin server 26, which is one of the preferred embodiments of the present invention. As shown in the figure, the terminal, such as a conventional web browser, can operate an application 72 and receive content 74 via HTTP or the like. The terminal can also operate a download agent 76 to send content to the application 72. To this end, the download agent 76 needs to be able to access the content storage 76 (such as the non-volatile memory 42B in Figure 3) and the incomplete download content storage 80 (such as the non-volatile cache memory 42A in Figure 3). ), and the preferred embodiment of this incomplete download content memory is non-volatile memory.
As further explained below, according to an embodiment of the present invention, an improved Open Mobile Alliance (OMA) is used to resume download through an over-the-air (OTA) download dialog. For details of the OMA OTA architecture, please refer to Open Mobile Alliance, "Generic Content Download Over the Air", OMA-Download-OTA-vl.0-20030221-c, the content of this paper is incorporated into this article for reference.
The control flow chart in Fig. 6 will now be explained. An embodiment of the download recovery method of the present invention includes a terminal 10 that accesses (closes to) the origin server 26 through a method proxy/GTW 20, etc., and downloads content 74 from the origin server. If you want to download, when the terminal is close to the origin server, authenticate the terminal to the origin server in various ways. At the same time, when the terminal is close to the starting server, the terminal can use the application 72 to access the content related to the server or controlled by the server, download the content and identify the content to be downloaded.
In order to download the content 74 from the start server 26, the application 72 can send a content request to the download agent 76, for example, send a GetContent message to the download agent. Then the download agent sends the content request (such as GetContent message) to the start server. The starting server can transmit the download descriptor 82 to the terminal 10 when receiving the content request. The download agent can receive the download descriptor, and then store the download descriptor in the incomplete download memory 80. The above-mentioned download descriptor 82 can contain various information about the requested content that is convenient for the terminal to download, but in one embodiment, the download descriptor contains, for example, the size of the requested content and the uniform resource descriptor (URI) of the location where the content can be obtained, etc. Attributes. In addition, it may also contain information about the best time, place and method for downloading the requested content.
After receiving the download descriptor 82, the download agent 76 instructs the starting server 26 to fetch the requested content 74, for example, sending the instruction of "GetMediaObject" to the URI specified in the download content descriptor 82. When receiving an instruction from the download agent, the starting server will transmit the requested content to the terminal 10, specifically, to the download agent. At this time, the content is packaged with several content data 74<sub>1</sub>,74<sub>2</sub>...74<sub>n</sub>From the starting server to the download agent. When the download agent receives each packet, it will be stored in the incomplete memory 80 respectively. As described below, the origin server can send content across a one-way or two-way network to the download agent (terminal). The origin server can also receive or use the public key to send content that has nothing to do with the public key according to the method described in Figure 4 above and the requirements of the terminal.
When a download dialogue is performed between one or more groups or blocks 84 of packets, as shown in Figure 7, information packets can be added to the packet stream. At this time, the download agent 76 can receive the information packets and store them in, for example, the incomplete download storage 80 to resume the download. Each information packet usually contains information about the number of packets in the packet block that the download agent is expected to receive before receiving subsequent data packets, or the order of one or more cyclic redundancy codes (CRC'S), etc. News. In addition, each information packet may also include data such as the number of packets in the packet block that the download agent should receive after the previous data packet or other information about the packet. In addition to the information about the number of packets in the packet block before or after the information packet, each data packet can include special information describing the packet (such as packet sequence CRC'S) and identifying the terminal before or after the information packet. One or more identifiers of information packet, request content, and/or download communication.
According to the User Data Packet Protocol (UDP), the packets can be delivered to the download agent 76 in a different order from the packets sent by the origin server 26. However, usually packets based on UDP and other protocols do not contain information about the order of the packets or the total number of data packets containing the requested content. Therefore, in addition to the number of packets in the packet block before or after the information packet, each information packet may contain an identifier for identifying the layout of the relevant data packet in accordance with other data packets of the content. In addition, each data packet can contain a table for uniquely identifying the packet block before or after each data packet and the correct order of the packets. Each packet is marked by a separate information packet. For example, each data packet can contain a table containing a packet sequence (CRC'S) or a unique data field describing the packet block before or after the individual data packet. By directly or indirectly identifying the order of the data packets, the download agent can order the packets in the same order in which they were sent by the originating server.
It can be seen from the following description that each of the packet blocks can contain the same number of packets, or the number of packets in each packet block can vary from block to block. It can also be seen from the following description that when the packet block contains the same number of packets, the data packet is OK at the beginning of the download session, but it does not need to be sent only once. In addition, although the origin server 26 can contain data packets between data packet blocks, if the information is included in the data packet, it can be added to one or more of the data packets. Furthermore, as described above, the download agent 76 can receive and store (memorize) each data packet in order to resume the download. However, the download agent does not need to keep all the received data packets in the memory. In other words, the download agent can be formed to only memorize one or more of the data packets received last.
Subsequently, during the download communication, the download agent 76 can use the data packet to monitor the received data packet. Specifically, the download agent can monitor whether the received data packet is the received packet and the number and correctness of the packet block or part of the requested content. Therefore, the number of received packets and the number of packet blocks or parts of the requested content can be compared with the identification number of the requested content packet at any point during the download communication. The correctness of the received packet and the packet block or part of the requested content can be confirmed by any means such as the cyclic redundant cipher (CRC) data of each packet. Similarly, CRC or any other correctness characteristics can be included in each The transmitted packet and the packet block or part of the requested content.
If or when the download communication is blocked, the download agent 76 can identify it by confirming the number and correctness of the received packets. This type of blocking system encountered during download communication can be identified in various ways. For example, if the total number of packet blocks or parts of the received packet request content (this number can usually be identified by the download identifier 73 and/or one or more data packets) is not equal to the total number at the end (termination) of the download communication , The download communication is considered blocked (interrupted). Similarly, if the number of incorrectly received packets exceeds the set number of packets at the end of the download communication, the download communication will be regarded as blocked. The set number of packets can be determined according to the form (absolute number or relative) of the download content at the end of the download communication. In addition, if the user (user) of the terminal 10 ends the download communication, or the terminal terminates the download communication (for example, due to a power failure, etc.), the download communication is also regarded as blocked.
Suppose, for example, that a blockage occurs during the download request content 74 during the transmission of the third packet, after the blockage, the terminal 10, more specifically, the download agent 76, can use the origin server 26 to re-establish communication, and if desired, Practice cognition. Therefore, the blocking signal is transmitted to the origin server 26. If the interruption is due to power failure or other accidents such as the inability of other terminals to re-establish communication with the starting server, there are data such as one or several types of information packets and/or download descriptor 82 that can resume download communication. The complete download memory 80 is available for subsequent re-establishment of communication when the terminal can re-establish communication and the user of the terminal wishes to resume downloading.
After the download is blocked, for example, after the originating server re-establishes communication, the download agent can obtain the download descriptor 82 and one or more information packets from the incomplete download memory 80. From the download descriptor 82 and the list of complete packages stored in the incomplete download memory 80, the packages to be downloaded to satisfy the download of the desired content can be determined. To this end, the application program (software) 72 may request a table of complete packets stored in the incomplete download memory 80, for example, send a "Get Interrpted DLO" message to the download agent. After receiving the request from the application 72, the download agent sends the complete packet list to the application 72.
After determining the completion status (degree) of the download, the download agent 76 is instructed to restore the blocked packet and the remaining packet to be transmitted to the terminal 10 to complete the content download. To this end, the application 72 can issue instructions such as a message to resume downloading to the download agent, so that it can restore blocked packets and download remaining packets. Subsequently, the download agent 76 can issue a command such as a message to resume the download to the originating server 26. To this end, the command can specify a communication identifier that specifies the communication period of the book download, specify the object identifier of the requested content, and/or specify the identifier of the blocked packet. In addition, the command may also include an identifier for identifying the terminal, and/or a descriptor describing the reason for blocking.
From the terminal 10, more specifically, after the download agent 76 receives the instruction, the start server 26 can transmit the blocked packet and the residual packet of the requested content 74 to the download agent. After receiving the packet, the download agent can store the packet in the incomplete download memory 80 as described above. Then, when the download agent receives all the packets of the requested content, the download agent can, but does not necessarily, send the message that the download has been successfully completed to the origin server. The download agent can also send the requested content from the incomplete download agent to the content storage 78, and inform the application 72 that the content has been successfully downloaded. Then, if necessary, the application can use the content to inform the terminal user that the content has been downloaded.
One of the features of the present invention is that all or part of the system of the present invention, such as the terminal 10, the push launcher 24, and/or the start server 26, is usually operated by a computer program product (such as the download agent 76). The computer program product used to operate the method of the present invention contains computer-readable memory such as a volatile memory medium, and computer-readable codes such as a series of computer instructions arranged in the computer-readable memory.
Figures 4 and 6 show the control flow chart of the method, system and program product of the present invention. Each control step (shown in the box) and the combination between the boxes in the flowchart can be implemented according to the instructions of the computer program. The computer program instructions can be loaded into a computer or other programmable device to generate a machine, so that the instructions executed on the computer or other programmable device construct a function (function) that executes each step of the control flow chart. These computer program instructions can also be stored in a computer readable memory that can guide a computer or other programmable devices to operate in a specified manner, whereby the stored instructions generate an instruction device (instruction device) that can be controlled according to the steps specified in the flowchart. means). Computer program instructions can also be loaded into a computer or other programmable device, so that a series of operation steps can be executed on the computer or other programmable device to generate a computer-executable program, which can be executed on the computer or other programmable device. Provides steps to perform the functions specified in each step of the flowchart.
Therefore, each step of the control flowchart supports the combination of means (devices) for performing specific functions, the combination of steps for performing specific functions, and the program command devices for performing specific functions. In addition, it should be understood that each step and combination of the control flow chart can be implemented by a dedicated hardware computer system to execute the specific function or step, or a combination of dedicated hardware and computer instructions.
Those skilled in the art can make various modifications and changes to the implementation of the present invention based on the above description and drawings. However, the present invention is not limited to the illustrated embodiments, and its modifications and alterations should also be included within the scope of the present invention. In addition, the technical terms used in this article are general and descriptive terms, not for the purpose of limitation.
<p>10Terminal</p><p>22Internet</p><p>24Push Launcher</p><p>26Starting server</p><p>30GGSN support node</p><p>36Transmitter (TX)</p><p>38Digital broadcast receiving terminal</p><p>40Processor</p><p>42Memory</p><p>42ACache</p><p>42BStorage</p><p>44Transmitter</p><p>46Receiver</p><p>48Controller</p><p>50Amplifier</p><p>52Electric Bell</p><p>54Microphone. Microphone</p><p>56Display</p><p>58Keyboard</p><p>60High Frequency Transceiver</p><p>62Infrared Transceiver</p><p>64Bluetooth Transceiver</p><p>68volatile memory</p><p>70Non-volatile memory</p><p>72Application (application software)</p><p>74Download content</p><p>76Download Agent</p><p>78Content Storage</p><p>84Packet block</p>
Figure 1 is a schematic block diagram of a wireless communication system according to an embodiment of the present invention; it includes a cellular network and a data network, in which a terminal is bidirectionally connected to the data network via a wireless RF connection.
Figure 2 shows a schematic block diagram of an entity that can operate as a terminal, push agent/GTW, method agent/GTW, push initiator, and/or origin server according to an embodiment of the present invention.
Figure 3 shows a schematic block diagram of a mobile station that can be operated as a terminal according to an embodiment of the present invention.
Fig. 4 shows a control flow chart of system elements operating according to the method of downloading content by pushing content according to an embodiment of the present invention.
Figure 5 shows a functional block diagram of the terminal for downloading content from the origin server.
Figure 6 shows a control flow chart of system components operating according to the method of restoring blocked download communication according to an embodiment of the present invention.
Figure 7 shows a diagram of downloading content divided into several groups or blocks of one or more data packets and adding one or more packets to the packet stream according to the embodiment of the present invention.
14 members in 9 offices
Priority claims5
| Document | Office | Kind | Date |
|---|---|---|---|
| 10689396 | United States of America | – | |
| 68939603 | United States of America | A | |
| 68939603 | United States of America | A | |
| 20030689396 | – | – | – |
| US20030689396 | – | – | – |
Members14
| Document | Office | Kind | |
|---|---|---|---|
| US2005083929A1 | United States of America | A1 | |
| CA2542933A1 | Canada | A1 | |
| WO2005039146A2 | World Intellectual Property Organization (WIPO) | A2 | |
| TW200522629AThis record | Taiwan Province of China | A | |
| WO2005039146A3 | World Intellectual Property Organization (WIPO) | A3 | |
| TWI253824B | Taiwan Province of China | B | |
| EP1676416A2 | European Patent Office (EPO) | A2 | |
| KR20060092264A | Republic of Korea | A | |
| CN1883180A | China | A | |
| BRPI0415982A | Brazil | A | |
| JP2007509565A | Japan | A | |
| KR100812343B1 | Republic of Korea | B1 | |
| CN100559791C | China | C | |
| US7721104B2 | United States of America | B2 |
1 legal event, as the office reported them to INPADOC
Events
| Event | Code | |
|---|---|---|
| Annulment or lapse of patent due to non-payment of feesLapsedMM4A | MM4A |
Numbers
- Publication
- 200522629
- Publication, DOCDB
- 200522629
- Publication, EPODOC
- TW200522629
- Application
- 93131607
- Application, DOCDB
- 93131607
- Application, EPODOC
- TW20040131607
Titles5
- Chinese
- 下載推送內容所用之系統、方法及電腦程式產品
- English
- SYSTEM, METHOD AND COMPUTER PROGRAM PRODUCT FOR DOWNLOADING PUSHED CONTENT
- English
- System, method and computer program product for downloading and pushing content
- Unlabeled
- 下載推送內容所用之系統、方法及電腦程式產品
- Unlabeled
- System, method and computer program product for downloading and pushing content
Classification
- CPC, 3
- H04L63/123
- G06F21/10
- H04L63/0823
- IPC, 2
- G06F21 00
- H04L29 06