Proxy for video on-demand system via internet
Abstract
[Task] The purpose is to smoothly execute the request from the client.
Solution.Proxy 1-1 has a cache and is composed of a cache management unit, a network transmission / reception unit, a proxy controller, and an account management unit. As long as VOD data exists in the cache in response to a client request, VOD data is fetched from the cache. Send to client. Request to server 1-2 only if VOD data does not exist in the cache. The proxy records the request from the client 1-3 and the transfer progress of the VOD data from the server, determines whether the corresponding VOD data exists on the proxy, reconfigures the request to the server, and sends it.

Term
Term ended
Projected expiry passed 31 August 2019, 7.1 years ago.
- Priority and filed
- Published
- Projected expiry
- Today
3 claims: 3 independent, 0 dependent
- 1【特許請求の範囲】 【請求項1】 インターネット上に接続されたビデオオンデマンド(VOD)データの配信を行うサーバから、前記インターネット上に接続されたクライアントの要求により、前記クライアントへ前記VODデータを配信する際に経由するプロキシにおいて、 前記プロキシがキャッシュを有し、前記キャッシュを管理するキャッシュ管理部と、 ネットワーク送受信部とプロキシコントローラとアカウント管理部から構成され、 前記クライアントの要求に対して、前記キャッシュに前記VODデータが存在する限り、前記サーバへの要求を出さずに前記キャッシュから前記VODデータを取り出し前記クライアントに送信することを特徴とするプロキシ。
- 2【請求項2】 インターネット上に接続されたビデオオンデマンド(VOD)データの配信を行うサーバから、前記インターネット上に接続されたクライアントの要求により、前記クライアントへ前記VODデータを配信する際に経由するプロキシにおいて、 前記プロキシがキャッシュを有し、前記キャッシュを管理するキャッシュ管理部と、 ネットワーク送受信部とプロキシコントローラとアカウント管理部から構成され、 前記クライアントの要求に対して、前記キャッシュに前記VODデータが存在しない場合に限り、前記サーバへ要求を送信し、前記サーバから受信した前記VODデータを前記クライアントに送信することを特徴とするプロキシ。
- 3【請求項3】 インターネット上に接続されたビデオオンデマンド(VOD)データの配信を行うサーバから、前記インターネット上に接続されたクライアントの要求により前記クライアントへ前記VODデータを配信する際に経由するプロキシにおいて、 前記プロキシが前記クライアントからの要求と前記サーバからの前記VODデータの転送経過を記録するステップを有し、前記クライアントからの要求を満たす前記VODデータが前記プロキシ上に存在するかを判断するステップを有し、前記クライアントからの要求を前記サーバに送信するかを判断するステップを有し、前記サーバへの要求を再構成し送信するステップを有し、前記クライアントの要求した所望のVODデータを前記クライアントに送信することを特徴とするプロキシ。
Independent claims3
99 paragraphs in 1 section, as filed
Description: TECHNICAL FIELD [Detailed description of the invention]
【0001】
[Technical field to which the invention belongs]
The present invention relates to a proxy device that performs communication / data transmission / reception between a server and a client in a video-on-demand system that transmits / receives data via the Internet.
【0002】
[Conventional technology]
A video-on-demand (VOD) system is a system that stores video data in a video server, sends it to the client via a network in response to the client's request, and plays the video on the client. Video data usually uses compressed data such as MPEG, but for example, 1 hour of MPEG2 data at 6 Mbps requires a large capacity of about 3 GB.
【0003】
By using the VOD system built on the LAN, the video on the video server can be viewed from the place where the user wants to see it, and it operates without stress. However, when going through the Internet, it is necessary to pass data on the Internet via a firewall provided by each user (company) for security, so special measures are required for VOD data transfer. It becomes.
【0004】
For example, there is a method of encapsulating VOD data in the HTTP protocol and sending it to the client in order to cross the firewall.
【0005】
[Problems to be Solved by the Invention]
However, the firewall selects data from the outside according to its protocol, address, port, etc., and allows only the permitted data to pass through. As the amount of processing by the firewall increases, the actual transfer will be delayed. It will be. In addition, when a delay occurs, there may be a difference between the data recognized by the server as sent and the data received by the client and actually played. As a result, the playback on the client may differ from the operation desired by the user, or the playback may not be well controlled. Therefore, it is an object of the present invention that reproduction by a client can be performed smoothly.
【0006】
[Means for solving problems]
Without increasing the amount of processing in the firewall, and even when a delay occurs, the recognition difference between the server and the client should be minimized, and the playback on the client should be the behavior desired by the user, and the playback should be controlled. In order to make it correct, make sure to decide in advance how to handle VOD data in the proxy.
【0007】
BEST MODE FOR CARRYING OUT THE INVENTION
An embodiment of the present invention will be described below. The configuration of the proxy according to the first embodiment of the present invention is shown in FIG. Proxy 1-1 is composed of a network transmission / reception unit 1-11, a proxy controller 1-12, a cache management unit 1-13, and an account management unit.
【0008】
In addition, proxy 1-1 is connected to server 1-2 and client 1-3 via the Internet 1-4. The network transmitter / receiver 1-11 receives the request sent from the client 1-3 to the server 1-2 and hands it over to the proxy controller 1-12. Then, the processing result is transmitted to the server 1-2. It also receives the processing result sent from server 1-2 to client 1-4 and hands it over to proxy controller 1-12. The processing result is sent to clients 1-3.
【0009】
Proxy controller 1-12 analyzes the request and processing result received by network transmitter / receiver 1-11, processes the account and cache, and then flows the VOD data between server 1-2 and client 1-3. Perform optimization.
【0010】
The account management unit 1-14 relays the login request sent from the client 1-3 to the server 1-2, and leaves the processing progress in the account table 1-15 in the account management unit 1-14. The cache management unit 1-13 stores the VOD data sent from the server 1-2 in the large-capacity cache 1-5. The processing progress is recorded in the cache table 1-16 in the cache management unit 1-13. The cache table 1-16 is also used when the cache management unit 1-13 determines which part of the VOD data is cached.
【0011】
The data handling method of the proxy 1-1 in the first embodiment will be described below with reference to FIG.
【0012】
Action 1 The client sends a login request to the proxy. Process 2 The proxy records the login request from the client in the account table and sends the login request to the server. Process 3 The server receives the login request. Process 4 The server performs login process. Process 5 The server sends the login process result to the proxy.
【0013】
Process 6 When the login process result is returned, the proxy writes the login process result of the client and server to the account table. Process 7 The proxy sends the login process result to the client at the same time as Process 6. Process 8 The client receives the result of the login request. In case of refusal notification, it ends. For success notification, go to process 9. Process 9 The client sends a video data playback request to the proxy.
【0014】
Process 10 The proxy sends a replay request to the server. If all the requested video data is cached, go to process 14. Process 11 The server receives the playback request from the client relayed to the proxy. Process 12 The server processes the video data playback request. Processing 13 The server sends the processing result of the playback request to the proxy.
【0015】
Processing 14 The proxy passes the processing result of the playback request to the client. In the case of process 10, the proxy itself processes the playback request and sends the result to the client. Processing 15 The client receives the processing result of the playback request. In case of refusal notification, it ends. Process 16 The server sends the video data to the proxy. If there is an area where data is cached by the proxy, the operation is omitted.
【0016】
Process 17 When the proxy receives the video data, it refers to the client information and server information in the account table and confirms that the video data is normal. If there is an area where data is cached by the proxy, the operation is omitted. Process 18 The proxy saves the video data of process 16 in a large cache. If there is an area where data is cached by the proxy, the operation is omitted. Process 19 The proxy sends video data from a large cache. Process 20 The client receives the video data from the proxy and plays it back.
【0017】
Action 21 The proxy manages client replay and caching. When a discontinuity is detected in video data caching due to a jump or the like, a request is made to the server to supplement the continuity. If all the video data is cached, it ends. Process 22 The server receives the complementary part of the video data requested by the proxy. Process 23 The server sends the complementary part of the video data to the proxy at the request of the proxy. Process 24 The proxy receives the video data sent from the server and creates continuous cached data. Finish when all caching is done.
【0018】
As described above, by continuing caching up to the capacity limit of the cache connected to the proxy, the video data transmission from the server is omitted when the same video data playback from multiple clients or frequent jump playback is repeated. It is possible to improve the response between the client and the server. In addition, the traffic load flowing on the Internet can be reduced, and network resources can be used effectively.
【0019】
Next, FIG. 3 shows the configuration of the proxy according to the second embodiment of the present invention. Similar to the first embodiment, there are a proxy 3-1 connected to each other via the Internet 3-4, a server 3-2, and a client 3-3. Proxy 3-1 is the client request receiving unit 3-11 that receives the request sent by the client 3-3, and the client request analysis unit 3- that analyzes the received request and saves the result in the data buffer management information unit 3-18. 12. Client request transmission unit 3-13 that sends a request to server 3-2, data buffer management unit 3-14 that updates the contents of data buffer management information unit 3-18, data buffer management information unit 3 that stores data -18, Server data receiver 3-16 that receives data from server 3-2, Data buffer 3-15 that stores data from server 3-2, Server data transmitter 3-17 that sends data to clients Consists of.
【0020】
The data buffer management information unit 3-18 has the following information. Data write position 3-21, data write position 3-22, data read position 3-23, data read position 3-24, client operation request book 3-25, current client operation state 3-26, data transmission end Flag 3-27.
【0021】
The data handling method of the proxy 3-1 in the second embodiment will be described below based on the operation of the proxy 3-1. The client request receiving unit 3-11 receives the request sent from the client 3-3.
【0022】
The client request analysis unit 3-12 analyzes the request received by the client request reception unit 3-11. The client request analysis unit 3-12 stores the client request in the client operation request list 3-25 of the data buffer management information unit 3-18. The client request transmission unit 3-13 sends the client operation request to the server 3-2. The data buffer management unit 3-14 refers to the client operation request list 3-25 in the data buffer management information unit 3-18 saved by the client request analysis unit 3-12, and the data in the data buffer management information unit 3-18. Update write position 3-22 and data read position 3-23. The server data receiving unit 3-16 receives the data transmitted from the server 3-2, and the data received from the server 3-2 at the position specified by the data writing position 3-21 in the data buffer management information unit 3-18. To write. After receiving the data, the server data receiving unit 3-16 updates the data written position 3-22 in the data buffer management information unit 3-18 to the written position.
【0023】
The server data transmission unit 3-17 reads the data written in the data buffer 3-15 from the position specified by the data reading position 3-23 in the data buffer management information unit 3-18, and transmits the data to the client 3-3. After transmission, the server data transmission unit 3-17 updates the data read position 3-24 in the data buffer management information unit 3-18 to the read position.
【0024】
Further, as shown in FIG. 4, a specific operation will be described in the case where the VOD data is composed of d1 to d99 and EOF.
【0025】
Server 3-2 sends these data to client 3-3 via proxy 3-1. For example, server 3-2 sends VOD data d1 to d5 to proxy 3-1 and proxy 3-1 stores VOD data d1 to d5 in data buffer 3-15. Proxy 3-1 first sends data d1 to client 3-3. At this time, it is assumed that the data d2 to d5 are being transmitted from the server 3-2 to the proxy 3-1 and have not yet been accumulated in the data buffer 3-15.
【0026】
After this, if client 3-3 does not send any request, server 3-2 should send data to proxy 3-1 in sequence. However, at this time, when the client 3-3 sends a jump, fast forward, reverse play, pause, or other stream operation request to the server 3-2, the proxy 3-1 starts the operation process. Proxy 3-1 receives these requests at client request receiver 3-11.
【0027】
The client request analysis unit 3-12 analyzes the received request and saves the client request in the client operation request list 3-25 in the data buffer management information unit 3-18. The data buffer management unit 3-14 refers to the client operation request list 3-25 in the data buffer management information unit 3-18, and updates the data read position 3-23 in the data buffer management information unit 3-18. The client request transmission unit 3-4 refers to the client operation request list 3-25 in the data buffer management information unit 3-18 and transmits the data to the server 3-2. After that, the server data receiving unit 3-16 receives data from the server 3-2, refers to the data writing position 3-21 in the data buffer management information unit 3-18, and writes the data in the data buffer 3-15. Data is written to, and the data written position 3-22 in the data buffer management information unit 3-18 is updated.
【0028】
The data buffer management unit 3-14 refers to the data written position 3-22 in the data buffer management information unit 3-18, and updates the data writing position of the data buffer 3-15. The server data transmission unit 3-17 refers to the data read position 3-23 in the data buffer management information unit 3-18, reads the data in the data buffer, sends it to the client, and updates the data read position 3-23. ..
【0029】
As a result, the proxy 3-1 sends the data desired by the client 3-3 to the client 3-3. The data buffer management unit 3-14 refers to the data read position 3-24 in the data buffer management information unit 3-18, and updates the data read position of the data buffer 3-15.
【0030】
When a jump, fast forward, reverse play, pause, or other stream operation request is sent from client 3-3 to server 3-1 as described above, server 3-2 and proxy 3-1 cooperate. It works so that the data remaining in the buffer of proxy 3-1 does not go against jump, fast forward, reverse play, pause, and other stream operation requests from client 3-3, and it works without discomfort for the user. It becomes.
【0031】
In addition, the VOD data sent from server 3-2 has already been sent to EOF, and the latter half of the data d96 to d99 and EOF remain in the data buffer 3-15 of proxy 3-1 and client 3-3. The specific operation will be described in the case of the non-transmission state. Proxy 3-1 sets the data transmission end flag 3-27 in the data buffer management information unit 3-18 to ON when the data EOF is sent from the server 3-2.
【0032】
When client 3-3 sends a jump, fast forward, reverse play, pause, or other stream operation request to server 3-2, proxy 3-1 starts operation processing. Proxy 3-1 receives these requests at client request receiver 3-11.
【0033】
The client request analysis unit 3-12 analyzes the received request and saves the client request in the client operation request list 3-25 in the data buffer management information unit 3-18. The data buffer management unit 3-14 refers to the client operation request list 3-25 in the data buffer management information unit 3-18, and updates the data read position 3-23 in the data buffer management information unit 3-18. The client request transmission unit 3-4 refers to the client operation request list 3-25 in the data buffer management information unit 3-18 and does not transmit to the server 3-2.
【0034】
The data buffer management unit 3-14 refers to the data transmission end flag 3-27 in the data buffer management information unit 3-18, and when it is ON, the client operation request list 3-25 in the data buffer management information unit 3-18. To clear. The client request transmission unit 3-13 refers to the client operation request list 3-25 in the data buffer management information unit 3-18, and does not transmit the request to the server 3-2. This will prevent unnecessary requests from being sent to server 3-2.
【0035】
If the request of client 3-3 is a jump and the data of the jump destination remains in the data buffer 3-15, the data buffer management unit 3-14 is the data read position in the data buffer management information unit 3-18. Update the jump destination to 3-23.
【0036】
The processing flow of the operation of proxy 3-1 is described below according to the control request from client 3-3. Process 1 A stream control request comes from the client. Process 2 Go to Process 6 if EOF has already arrived from the server Process 3 Send a control request to the server. Process 4 Clear the cache. Process 5 Go to Process 1 Process 6 If the control request jumps to the cache, the next transfer data is sent from the cache and the control request success is returned to the client. Go to process 1.
【0037】
Process 7 When the control request is not in the cache due to a jump, and the control request other than the jump is changed to a playback request from the relevant location and sent to the server. Process 8 Clear the cache. Process 9 When a success notification arrives from the server, save it in the cache and send it to the client. Go to process 1. Process 10 When a refusal notification arrives from the server, the refusal notification is sent to the client and the transfer is completed. Go to process 1.
【0038】
As described above, when a pause, fast forward, reverse play, jump, or other stream operation request is transmitted from the client, the stream operation request is transmitted to the server via the proxy. In this way, when stream data has already been transmitted from the server to EOF, it is possible to prevent inconsistencies between the request from the client and the server.
【0039】
As described above, a typical example in which the operation becomes unstable in the conventional VOD system has been taken up and explained, but it is possible to perform the operation corresponding to other situations. Further, in the second embodiment, there is no particularly large-capacity cache, but the data buffer may be replaced with a large-capacity cache.
【0040】
[Effect of the invention]
The effects of the present invention will be described below. Inconsistency between data transfer and client request can be suppressed by proxy processing operation, and the same video data from multiple clients can be suppressed by continuing caching up to the capacity limit of the cache connected to the proxy. When the playback of the above and the frequent jump playback are repeated, the transmission of video data from the server can be omitted, and the response between the client and the server can be improved.
【0041】
In addition, the traffic load flowing on the Internet can be reduced, and network resources can be used effectively.
[Simple explanation of drawings]
[Figure 1]
It is a figure which shows the structure of the 1st Embodiment.
[Figure 2]
It is a figure explaining the flow of operation in 1st Embodiment.
[Fig. 3]
It is a figure which shows the structure of the 2nd Embodiment.
[Fig. 4]
It is a figure which shows the structure of the VOD data in the 2nd Embodiment.
[Explanation of symbols]
1-1, 2-1, 3-1 ... Proxy 1-2, 2-2, 3-2 ... server 1-3, 2-3, 3-3 ... Client 1-4, 3-4 ... Internet 1-5 ... Large cache 1-11 ... Network transmitter / receiver 1-12 ... Proxy controller 1-14 ... Account Management Department 1-15 ... account table 1-13 ... Cache Management Department 1-16 ... cache table 3-11 ... Client request receiver 3-12 ... Client Requirements Analysis Department 3-13 ... Client request transmitter 3-14 ... Data buffer management department 3-15 ... data buffer 3-16 ... Server data receiver 3-17 ... Server data transmitter 3-18 ... Data buffer management information section 3-21 ... Data writing position 3-22 ... Data written position 3-23 ... Data read position 3-24 ... Data read position 3-25 ... Client operation request book 3-26 ... Current client operating status 3-27 ... Data transmission end flag
5 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| EP2120457A1 | Cited by | European Patent Office (EPO) | Search report |
| WO03083597A2 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| JP2006506738A | Cited by | Japan | Examiner |
| KR100444143B1 | Cited by | Republic of Korea | Search report |
| JP2002335506A | Cited by | Japan | Examiner |
| US7043558B2 | Cited by | United States of America | Applicant |
| WO2009018738A1 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| WO03083597A3 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| CN1305270C | Cited by | China | Search report |
| KR100476781B1 | Cited by | Republic of Korea | Search report |
| EP2120457A4 | Cited by | European Patent Office (EPO) | Search report |
| US7051100B2 | Cited by | United States of America | Applicant |
1 member in 1 office
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 24565299 | Japan | A | |
| JP19990245652 | – | – | – |
Members1
| Document | Office | Kind | |
|---|---|---|---|
| JP2001069485AThis record | Japan | A |
3 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Decision of refusalJAPANESE INTERMEDIATE CODE: A02A02 | A02 | |
| Notification of reasons for refusalJAPANESE INTERMEDIATE CODE: A131A131 | A131 | |
| Report on retrievalJAPANESE INTERMEDIATE CODE: A971007A977 | A977 |
Numbers
- Publication
- 2001-69485
- Publication, DOCDB
- 2001069485
- Publication, EPODOC
- JP2001069485
- Application
- 24565299
- Application, DOCDB
- 24565299
- Application, EPODOC
- JP19990245652
Titles2
- Japanese
- インターネット経由のビデオオンデマンドシステム用プロキシ
- English
- [Title of the Invention] Proxy for video-on-demand system via the Internet
Classification
- IPC, 6
- G06F12 00
- G06F13 00
- H04N7 173
- H04N21 2183
- H04N21 222
- H04N21 262