JP2018121128A - 通信処理装置、通信処理システム、通信処理プログラムおよび通信処理方法 - Google Patents

通信処理装置、通信処理システム、通信処理プログラムおよび通信処理方法 Download PDF

Info

Publication number
JP2018121128A
JP2018121128A JP2017009763A JP2017009763A JP2018121128A JP 2018121128 A JP2018121128 A JP 2018121128A JP 2017009763 A JP2017009763 A JP 2017009763A JP 2017009763 A JP2017009763 A JP 2017009763A JP 2018121128 A JP2018121128 A JP 2018121128A
Authority
JP
Japan
Prior art keywords
data
moving image
packet
unit
transmission
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017009763A
Other languages
English (en)
Inventor
水口 有
Tamotsu Mizuguchi
有 水口
松田 英幸
Hideyuki Matsuda
英幸 松田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017009763A priority Critical patent/JP2018121128A/ja
Publication of JP2018121128A publication Critical patent/JP2018121128A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

【課題】送信先装置毎に異なる内容の送信データを簡易に作成可能な通信処理装置を提供する。【解決手段】本通信処理装置は、記憶部、受信部、作成部および送信部を備える。記憶部は、第1データに係る被置換領域を示す情報を記憶する。受信部は、第1データを受信する。作成部は、送信先に応じたコンテンツを含む第2データを受信すると、被置換領域のデータを第2データで置換した第3データを作成する。送信部は、第3データを第2データの送信先に送信する。【選択図】図1

Description

本発明は、通信処理装置、通信処理システム、通信処理プログラムおよび通信処理方法に関する。
コンピュータによるコンテンツ配信が利用されている(例えば、特許文献1、2参照)。
特開2004−349877号公報 特開平11−306199号公報
複数の送信先に動画、静止画および音声に例示されるコンテンツを配信する場合、例えば、Internet Protocol(IP)マルチキャストが利用される。IPマルチキャストが利
用されることで、コンテンツを配信する配信装置は、一回の送信で複数の送信先に同一のコンテンツを配信できる。一方で近年のコンテンツ配信では、動画の内容の一部を個々の送信先に適した内容に変更し、変更した動画を配信するパーソナライズドビデオも利用されている。
ところで、送信先毎に異なるコンテンツを複数の送信先にそれぞれ送信する場合、送信される各々のコンテンツの大部分は共通している場合であっても、各々の送信先向けのコンテンツが個別に作成され、送信元から個々の送信先にそれぞれ送信されていた。そのため、ネットワークにおけるデータ通信量(転送トラフィック量)が多くなっていた。
そこで、開示の技術の1つの側面は、送信元から複数の送信先へのデータ通信量を低減できる通信処理装置を提供することを課題とする。
開示の技術の1つの側面は、次のような通信処理装置によって例示される。本通信処理装置は、記憶部、受信部、作成部および送信部を備える。記憶部は、第1データに係る被置換領域を示す情報を記憶する。受信部は、第1データを受信する。作成部は、送信先に応じたコンテンツを含む第2データを受信すると、被置換領域のデータを第2データで置換した第3データを作成する。送信部は、第3データを第2データの送信先に送信する。
1つの側面では、本発明は、送信元から複数の送信先へのデータ通信量を低減することができる。
図1は、実施形態に係る動画パケット処理システムの一例を示す図である。 図2は、動画配信システムの処理の概略を示す図である。 図3は、情報処理装置のハードウェア構成の一例を示す図である。 図4は、OpenFlowスイッチのハードウェア構成の一例を示す図である。 図5は、通信先端末の処理ブロックの一例を示す図である。 図6は、ウェブページを表示した通信先端末の一例を示す図である。 図7は、発信者端末の処理ブロックの一例である。 図8は、ベース動画に含まれる1フレームの画像を例示する図である。 図9は、個別ソース動画に含まれる1フレームの画像を例示する図である。 図10は、動画構成情報の一例を示す図である。 図11は、送信先情報の一例を示す図である。 図12は、ベース動画の1フレームから作成したパケットの一例を示す図である。 図13は、合成情報の一例を示す図である。 図14は、通信制御装置の処理ブロックの一例を示す図である。 図15は、経路情報の一例を示す図である。 図16は、OpenFlowコントローラの処理ブロックの一例を示す図である。 図17は、合成指示の一例を示す図である。 図18は、OpenFlowスイッチの処理ブロックの一例を示す図である。 図19は、フローテーブルの一例を示す図である。 図20は、実施形態に係る通信先端末の処理フローの一例を示す図である。 図21は、実施形態に係る発信者端末の処理フローの一例を示す第1の図である。 図22は、実施形態に係る発信者端末の処理フローの一例を示す第2の図である。 図23は、実施形態に係る通信制御装置の処理フローの一例を示す図である。 図24は、実施形態に係るOpenFlowコントローラの処理フローの一例を示す図である。 図25は、図24のL4の処理の詳細の一例を示す図である。 図26は、実施形態に係るOpenFlowスイッチの処理フローの一例を示す図である。 図27は、第1変形例に係るOpenFlowコントローラの処理フローの一例を示す図である。 図28は、第2変形例に係るパケット合成情報の一例を示す図である。 図29は、第2変形例に係る広告動画パケットを作成する処理の一例を示す図である。
以下、図面を参照して、一実施形態に係る動画配信システムについて説明する。以下に示す実施形態の構成は例示であり、開示の技術は実施形態の構成に限定されない。
≪実施形態≫
実施形態では、通信先端末毎に内容を一部変更して広告動画を配信する動画配信システムが例示される。図1は、実施形態に係る動画配信システム1の一例を示す図である。図1では、動画合成システム60、発信者端末20および複数の通信先端末10a、10bが例示されている。通信先端末10a、10bを総称して、通信先端末10とも称する。動画合成システム60は、通信制御装置30、OpenFlowコントローラ40およびOpenFlowスイッチ50を含む。発信者端末20と通信制御装置30との間、通信制御装置30とOpenFlowコントローラ40との間およびOpenFlowコントローラ40とOpenFlowスイッチ50との間は、各々制御経路C1で接続される。制御経路C1は、OpenFlowプロトコルにしたがった制御メッセージおよびデータを伝送するネットワークである。制御経路C1は、コントロールプレーンとも称される。発信者端末20とOpenFlowスイッチ50との間および
OpenFlowスイッチ50と通信先端末10との間は、データ通信経路D1で接続される。データ通信経路D1は、例えば、発信者端末20と通信先端末10との間で送受信されるデータを伝送するネットワークである。データ通信経路D1は、データプレーンとも称される。
発信者端末20は、通信先端末10に広告動画を送信する情報処理装置である。発信者端末20は、例えば、商品を宣伝する広告主によって利用される端末である。発信者端末20は、広告動画に含まれるベース動画および個別ソース動画を記憶する。ベース動画は複数の通信先端末10宛てに作成される広告動画において共通に利用される動画である。ベース動画は、広告動画の背景によって例示される。ベース動画は、複数の通信先端末10で共通に表示されるメッセージを含んでもよい。個別ソース動画は、通信先端末10毎に用意される個別動画の背景によって例示される。個別動画は、個別ソース動画に対して、例えば、通信先端末10のユーザに通知するメッセージ等を追加して作成される。メッセージ等は、通信先端末10のユーザ名、広告主が訴求したい商品の商品名、当該商品の宣伝文句によって例示される。発信者端末20は、通信先端末10から広告動画の配信要求を受信すると、個別ソース動画から個別動画を作成する。発信者端末20は、ベース動画および個別動画をOpenFlowスイッチ50にデータ通信経路D1を介して送信する。発信者端末20は、「送信装置」の一例である。
通信先端末10は、発信者端末20から送信された広告動画を受信する情報処理装置である。通信先端末10は、広告動画配信要求を発信者端末20に送信する。また、通信先端末10は、受信した広告動画を再生する。通信先端末10は、「送信先装置」の一例である。
動画合成システム60は、発信者端末20から受信したベース動画および個別動画を合成して、個々の通信先端末10向けの広告動画を作成する。動画合成システム60は、作成した広告動画をデータ通信経路D1を介して通信先端末10に送信する。動画合成システム60は、「通信処理システム」の一例である。
通信制御装置30は、情報処理装置である。通信制御装置30は、ベース動画と個別動画との合成に用いられる情報をOpenFlowコントローラ40に送信する。
OpenFlowコントローラ40は、情報処理装置である。OpenFlowコントローラ40は、通信制御装置30から受信した情報に基づいて、ベース動画と個別動画とを合成して広告動画を作成する。また、OpenFlowコントローラ40は、例えば、パケットの処理ルールをOpenFlowスイッチ50に送信する。以下、本明細書において、OpenFlowコントローラ40をコントローラとも称する。OpenFlowコントローラ40は、「通信処理装置」の一例である。OpenFlowコントローラ40は、「置換装置」の一例でもある。
OpenFlowスイッチ50は、OpenFlowプロトコルにしたがって制御されるネットワークスイッチである。OpenFlowスイッチ50は、発信者端末20と通信先端末10との間で送受信されるパケットを中継する。OpenFlowスイッチ50は、OpenFlowコントローラ40から受信したパケットの処理ルールにしたがって受信したパケットを処理する。例えば、OpenFlowスイッチ50は、発信者端末20から受信したベース動画および個別動画をOpenFlowコントローラ40に制御経路C1を介して送信する。また、例えば、OpenFlowスイッチ50は、OpenFlowコントローラ40から制御経路C1を介して受信した広告動画を通信先端末10に送信する。以下、本明細書において、OpenFlowスイッチ50をスイッチとも称する。OpenFlowスイッチ50は、「中継装置」の一例である。
<動画配信システム1の処理の概略>
図2は、動画配信システム1の処理の概略を示す図である。以下、図1の構成を有する動画配信システム1の処理の概略を図2を参照して説明する。発信者端末20はベース動画、通信先端末10a向けの個別動画および通信先端末10b向け個別動画を動画合成システム60に送信する。動画合成システム60は、ベース動画と通信先端末10a向けの個別動画とを合成して、通信先端末10a向けの広告動画を作成する。動画合成システム60は、同様に、通信先端末10b向けの広告動画を作成する。動画合成システム60は、作成した広告動画のそれぞれを、通信先端末10a、10bに送信する。通信先端末10a、10bは、自端末向けに作成された広告動画を再生する。通信先端末10aでは、例えば、「UserA様へのオススメ」と表示された広告動画が再生される。
<ハードウェア構成>
図3は、情報処理装置100のハードウェア構成の一例を示す図である。情報処理装置100は、Central Processing Unit(CPU)101、メモリ102、外部記憶装置イ
ンタフェース103、外部記憶装置103a、ネットワークインタフェース104、入出力装置インタフェース105および接続バスB1を含む。CPU101、メモリ102、外部記憶装置インタフェース103、ネットワークインタフェース104および入出力装置インタフェース105は、接続バスB1によって相互に接続されている。情報処理装置100は、通信制御装置30、OpenFlowコントローラ40、発信者端末20および通信先端末10として利用できる。以下、図3を参照して、情報処理装置100のハードウェア構成について説明する。
CPU101は、外部記憶装置103aに記憶されたプログラムをメモリ102の作業領域に実行可能に展開する。CPU101は、展開したプログラムの実行を通じて周辺装置の制御を行う。メモリ102および外部記憶装置103aは、情報処理装置100が読み取り可能な記録媒体である。メモリ102は、CPU101から直接アクセスされる記憶部として例示される。メモリ102は、Random Access Memory(RAM)およびRead Only Memory(ROM)を含む。
外部記憶装置インタフェース103は、外部記憶装置103aとのインタフェースである。外部記憶装置インタフェース103に接続された外部記憶装置103aは、各種のプログラムおよび各種のデータを読み書き自在に記録媒体に格納する。外部記憶装置103aは外部記憶装置とも呼ばれる。外部記憶装置103aには、オペレーティングシステム(Operating System、OS)、各種プログラム、各種テーブル等が格納される。OSは、ネットワークインタフェース104を介して接続される外部装置等とのデータの受け渡しを行う通信インタフェースプログラムを含む。外部装置等には、例えば、コンピュータネットワーク等で接続された、他の情報処理装置および外部記憶装置が含まれる。なお、外部記憶装置103aは、例えば、ネットワーク上のコンピュータ群であるクラウドシステムの一部であってもよい。
外部記憶装置103aは、例えば、Erasable Programmable ROM(EPROM)、ソリ
ッドステートドライブ(Solid State Drive、SSD)、ハードディスクドライブ(Hard Disk Drive、HDD)等である。また、外部記憶装置103aは、例えば、Compact Disc(CD)ドライブ装置、Digital Versatile Disc(DVD)ドライブ装置、Blu-ray(登
録商標) Disc(BD)ドライブ装置等である。また、補助記憶部103は、Network Attached Storage(NAS)あるいはStorage Area Network(SAN)によって提供されて
もよい。
情報処理装置100が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、情報処理装置100から読み取ることができる記録媒体をいう。このような記録媒体のうち情報処理装置10
0から取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、CD−ROM、CD−R/W、DVD、ブルーレイディスク、DAT、8mmテープ、フラッシュメモリなどのメモリカード等がある。また、情報処理装置100に固定された記録媒体としてハードディスク、SSDあるいはROM等がある。
ネットワークインタフェース104は、例えば、データ通信経路D1または制御経路C1とのインタフェースである。ネットワークインタフェース104は、データ通信経路D1または制御経路C1を介して外部の装置と通信を行う。
入出力装置インタフェース105には、例えば、ユーザ等からの操作指示等を受け付ける入出力装置が接続される。このような入出力装置として、キーボード、ポインティングデバイス、タッチパネル、加速度センサー、音声入力装置といった入力デバイスを例示できる。また、このような入出力装置として、Cathode Ray Tube(CRT)ディスプレイ、Liquid Crystal Display(LCD)、Plasma Display Panel(PDP)、Electroluminescence(EL)パネル、有機ELパネルあるいはプリンタといった出力デバイスを例示で
きる。
図4は、OpenFlowスイッチ50のハードウェア構成の一例を示す図である。OpenFlowスイッチ50は、CPU101、メモリ102、パケット転送装置203、ネットワークインタフェース204および接続バスB2を含む。CPU201、メモリ202、パケット転送装置203およびネットワークインタフェース204は、接続バスB2によって相互に接続されている。図3に例示された構成要素と同様の構成要素については同一の符号を付し、その説明を省略する。以下、図4を参照して、OpenFlowスイッチ50のハードウェア構成について説明する。
パケット転送装置203は、メモリ202に記憶されたパケット転送に係るルールにしたがってネットワークインタフェース204を介して授受するパケットの転送を処理する。パケット転送装置203は、例えば、Field-Programmable Gate Array(FPGA)で
ある。「パケット転送装置」は、「ネットワークプロセッサ」という場合がある。
ネットワークインタフェース204は、データ通信経路D1または制御経路C1とのインタフェースである。ネットワークインタフェース204は、データ通信経路D1または制御経路C1を介して外部の装置と通信を行う。
<処理ブロック>
図5、図7、図14、図16および図18は、それぞれ通信先端末10、発信者端末20、通信制御装置30、OpenFlowコントローラ40およびOpenFlowスイッチ50の一例を示す図である。通信先端末10、発信者端末20、通信制御装置30、OpenFlowコントローラ40およびOpenFlowスイッチ50は、図3または図4に例示されるように、CPU101と、メモリ102とを有する。通信先端末10、発信者端末20、通信制御装置30、OpenFlowコントローラ40およびOpenFlowスイッチ50のCPU101は、このメモリ102に実行可能に展開されたコンピュータプログラムにしたがって、図5、図7、図14、図16および図18に例示される処理ブロックとしての処理を実行する。CPU101は、Microprocessor(MPU)、プロセッサとも呼ばれる。CPU101は、単一のプロセッサに限定される訳ではなく、マルチプロセッサ構成であってもよい。また、単一のソケットで接続される単一のCPU101がマルチコア構成を有していても良い。上記処理ブロックの少なくとも一部の処理は、CPU101以外のプロセッサ、例えば、Digital Signal Processor(DSP)、Graphics Processing Unit(GPU)、数値演算プロセッサ、ベクトルプロセッサ、画像処理プロセッサ等の専用プロセッサで行われても良い。また、図5、図7、図14、図16および図18の処理ブロックの少なくとも一部の処理は、集
積回路(IC)、その他のディジタル回路であっても良い。また、上記処理ブロックの少なくとも一部にアナログ回路が含まれても良い。集積回路は、LSI、Application Specific Integrated Circuit(ASIC)、Programmable Logic Device(PLD)を含む。PLDは、例えば、FPGAを含む。上記処理ブロックは、プロセッサと集積回路との組み合わせであっても良い。組み合わせは、例えば、マイクロコントローラ(MCU)、System-on-a-chip(SoC)、システムLSI、チップセットなどと呼ばれる。
<通信先端末10の処理ブロック>
図5は、通信先端末10の処理ブロックの一例を示す図である。図5には、Webブラウザ部11、動画再生表示部12および通信部13の各処理ブロックが例示されている。以下、図5を参照して、通信先端末10の処理ブロックについて説明する。
Webブラウザ部11は、コンピュータネットワーク上に公開されているウェブサイトにアクセスする。ウェブサイトは、例えば、ユーザ名およびパスワードによってログイン可能である。Webブラウザ部11は、ログインすることにより、ウェブサイトで公開されているウェブページを取得可能となる。ウェブブラウザ部Xは、取得したウェブページを、例えば、入出力装置インタフェース105に接続されたディスプレイに出力する。ウェブページは、例えばHyper Text Markup Language(HTML)によって記載される。
図6は、ウェブページを表示した通信先端末10の一例を示す図である。図6では、通信先端末10のディスプレイ上にWebブラウザ部11によって出力されたウェブページが表示されている。ウェブページは、図6に例示されるように、広告動画を表示する広告表示領域11aを含む。広告表示領域11aには、表示する広告動画の指定がHTMLによって記載されている。広告動画の指定は、例えば、広告動画の種別を指定する広告種別および広告動画の配信元を示す配信元情報を含む。Webブラウザ部11は、ウェブページから広告種別および配信元情報を取得する。Webブラウザ部11は、取得した広告種別および通信先端末10を特定する端末特定情報を含む広告動画配信要求を配信元情報で指定された配信元に対して送信する。端末特定情報は、例えば、ログインに使用したユーザ名、通信先端末10の端末名およびアドレスを含む。本実施形態では、配信元情報によって発信者端末20が指定されるため、Webブラウザ部11は、発信者端末20に向けて広告動画配信要求を送信する。
図5に戻り、動画再生表示部12は、通信部13を介して受信した広告動画の再生処理を行う。再生される広告動画は、例えば、広告表示領域11a上に表示される。
通信部13は、データ通信経路D1とのインタフェースである。通信部13は、例えば、図3のネットワークインタフェース104である。
<発信者端末20の処理ブロック>
図7は、発信者端末20の処理ブロックの一例である。図7では、動画構成決定部21、個別動画作成部22、動画パケット作成部23、合成情報作成部24、通信部25、ベース動画記憶部26、個別ソース動画記憶部27、動画構成情報記憶部28、送信先情報記憶部29およびパケットIDカウンタ2Aが例示されている。以下、図7を参照して、発信者端末20の処理ブロックについて説明する。
ベース動画記憶部26は、広告種別毎に用意されたベース動画を、ベース動画を特定するベース動画IDに対応付けて記憶する。ベース動画記憶部26は、例えば、発信者端末20のメモリ102または外部記憶装置103a上に構築される。図8は、ベース動画に含まれる1フレームの画像を例示する図である。ベース動画に含まれる1フレームの画像は、図8の左上から右下にかけて第1ピクセルから第550ピクセルまでの550個のピ
クセルによって描画される。ベース動画はこのような画像が所定周期で繰り返し再生されることで、動画として表現される。ベース動画に含まれる1フレームの画像上の位置の指定は、ピクセルの指定によって可能である。
図7に戻り、個別ソース動画記憶部27は、個別ソース動画を記憶する。個別ソース動画は、個別動画の背景によって例示される。個別ソース動画記憶部27は、例えば、発信者端末20のメモリ102または外部記憶装置103a上に構築される。図9は、個別ソース動画に含まれる1フレームの画像を例示する図である。図9に例示される個別ソース動画は、図9の左上から右下にかけて第1ピクセルから第300ピクセルまでの300個のピクセルによって描画される。個別ソース動画は、このような画像が連続して再生されることで、動画として表現される。個別ソース動画は、名称表示領域22aを含む。名称表示領域22aは、例えば、第101ピクセルから第250ピクセルまでの領域である。個別ソース動画に含まれる1フレームの画像上の位置の指定は、ピクセルの指定によって可能である。
図7に戻り、動画構成情報記憶部28には、広告種別毎にベース動画と個別ソース動画とを対応付ける動画構成情報が記憶される。動画構成情報記憶部28は、例えば、発信者端末20のメモリ102または外部記憶装置103a上に構築される。図10は、動画構成情報28aの一例を示す図である。動画構成情報28aは、広告種別、広告内容、ベース動画ID、個別ソース動画IDおよび合成情報の各情報を含む。広告種別は、広告の種別を特定する情報である。広告内容には、広告種別毎の広告の概要が記憶される。ベース動画IDおよび個別ソース動画IDには、広告種別毎に使用されるベース動画および個別ソース動画を特定するIDがそれぞれ記憶される。合成情報は、ベース動画に個別動画を挿入する位置を示す情報が記憶される。合成情報は、ベース動画上先頭および合成サイズを含む。ベース動画上先頭には、個別動画が挿入される先頭の位置が、ベース動画の各フレームにおけるピクセル位置によって示される。合成サイズは、ベース動画に挿入される個別動画のサイズが示される。図10では、個別動画を挿入する位置として、ベース動画の各フレーム上の第101ピクセルの位置から300ピクセル分の領域が指定されている。動画構成情報28aは、例えば、システムの初期設定時等に記憶されればよい。
送信先情報記憶部29には、広告動画の送信先を示す送信先情報29aが記憶される。送信先情報記憶部29は、例えば、発信者端末20のメモリ102または外部記憶装置103a上に構築される。図11は、送信先情報29aの一例を示す図である。送信先情報29aは、端末名、通信先アドレス、ユーザ名および広告種別の各情報を含む。端末名には、広告動画を送信する宛先となる通信先端末10の端末名が記憶される。通信先アドレスには、通信先端末10のアドレスが記憶される。ユーザ名には、通信先端末10がウェブサイトへのログインに使用したユーザ名が記憶される。広告種別は、送信される広告を示す広告種別が記憶される。
動画構成決定部21は、通信先端末10から広告動画配信要求を受信する。動画構成決定部21は、受信した広告動画配信要求から広告種別および端末特定情報を取得する。動画構成決定部21は、端末特定情報に含まれる通信先端末10の端末名、アドレスおよびユーザ名を取得する。動画構成決定部21は、端末名、アドレス、ユーザ名および広告種別を送信先情報29aに記憶する。動画構成決定部21は、動画構成情報28aを参照して、広告種別に対応付けられたベース動画IDを取得する。動画構成決定部21は、取得したベース動画IDで示されるベース動画をベース動画記憶部26から取得する。動画構成決定部21は、取得したベース動画を動画パケット作成部23に渡す。また、動画構成決定部21は、取得した広告種別およびユーザ名を個別動画作成部22に渡す。
個別動画作成部22は、動画構成決定部21から渡された広告種別およびユーザ名を基
に個別動画を作成する。個別動画作成部22は、動画構成情報28aを参照して、広告種別に対応付けられた個別ソース動画IDを取得する。個別動画作成部22は、取得した個別ソース動画IDで示される個別ソース動画を個別ソース動画記憶部27から取得する。個別動画作成部22は、取得した個別ソース動画の名称表示領域22aにユーザ名を書き込む。名称表示領域22aにユーザ名を書き込む方法に限定は無い。個別動画作成部22は、例えば、名称表示領域22aに該当する各フレームにおけるピクセル位置の画像データのビット列をユーザ名の文字列を示す画像データのビット列に置き換えてもよい。名称表示領域22aにユーザ名を表示する方法には、その他様々な公知の技術を採用可能である。個別動画作成部22は、作成した個別動画を動画パケット作成部23に渡す。
動画パケット作成部23は、動画構成決定部21から渡されたベース動画を基に、ベース動画の各フレームについて、当該フレームのデータを含むベース動画パケットを作成する。また、動画パケット作成部23は、個別動画作成部22から渡された個別動画を基に、個別動画の各フレームについて、当該フレームのデータを含む個別動画パケットを作成する。図12は、ベース動画の1フレーム分のデータから作成したパケットP1の一例を示す図である。図12に例示されるパケットP1は、例えば、図8に例示されるベース動画の1フレーム分のデータから作成されたベース動画パケットである。図12に例示されるパケットP1は、ヘッダ部P1aおよびデータ部(ペイロード部とも言う)P1bを含む。ヘッダ部P1aは、発信元(送信元とも言う)、通信先(宛先とも言う)およびパケットIDの各情報を含む。発信元には、パケットの発信元となる情報処理装置を示す情報が格納される。図12の例では、発信元を示す情報として「100」が格納されている。通信先には、パケットの宛先になる情報処理装置を示す情報が格納される。図12の例では、通信先を示す情報としてとして「50」が格納されている。パケットIDには、個々のパケットを一意に識別するIDが格納される。図12の例では、パケットIDとして「10」が格納されている。データ部P1bには、ベース動画の1フレーム分のデータが格納される。本実施形態では、動画データからパケットを作成する際に圧縮を行わない。そのため、データ部P1bには、ベース動画の1フレームにおける第1ピクセルから第550ピクセルまでを示す情報がピクセルの並び順にしたがって格納される。個別動画から作成されるパケットの構造については、データ部P1bに個別動画の1フレーム分のデータが格納される点を除いて、図12に例示されるベース動画から作成されるパケットP1と同様である。動画パケット作成部23は、「第2送信部」の一例である。ベース動画パケットは、「第1データ」の一例である。ベース動画パケットに含まれる動画データは「第1動画データ」の一例である。個別動画パケットは、「第2データ」の一例である。個別動画パケットに含まれる動画データは「第2動画データ」の一例である。
図7に戻り、パケットIDカウンタ2Aには、ベース動画パケットおよび個別動画パケットを含む各パケットを一意に識別するパケットIDが記憶される。パケットIDカウンタ2Aは、例えば、発信者端末20のメモリ102または外部記憶装置103a上に構築される。パケットIDは、例えば、数字である。パケットIDカウンタ2Aには、動画配信システム1の構築時にはパケットIDの初期値が記憶される。パケットIDの初期値は、例えば、「10」である。パケットIDカウンタ2Aに記憶されるIDは、例えば、動画パケット作成部23がベース動画パケットまたは個別動画パケットを作成する際に、カウントアップされる。パケットIDは、データの「特定情報」の一例である。
合成情報作成部24は、各通信先端末10向けのベース動画と個別動画との組み合わせを示す情報を合成情報として作成する。合成情報は、ベース動画と個別動画の組合わせによって作成される広告動画の1フレーム毎に作成される。合成情報作成部24は、作成した合成情報を通信制御装置30に送信する。合成情報作成部24は、「通知部」の一例である。
図13は、パケット合成情報24aの一例を示す図である。パケット合成情報24aは、発信元アドレス、通信先アドレス、合成パケット数、ベース動画パケットおよび個別動画パケットの各情報を含む。発信元アドレスには、パケットの送信元である発信者端末20を示す情報が格納される。通信先アドレスには、パケットの送信先である通信先端末10を示す情報が格納される。合成パケット数には、1フレームの広告動画を作成する際に用いられるベース動画パケットおよび個別動画パケットのパケット数の合計数が格納される。ベース動画パケットの項目には、ベース動画パケットを示す情報が格納される。ベース動画パケットの項目は、パケットID、入替開始位置および入替終了位置の各情報を含む。パケットIDは、1フレームの広告動画を作成する際に用いられるベース動画パケットのパケットIDが格納される。入替開始位置には、個別動画パケットのデータを挿入する領域の開始位置がピクセル値で示される。入替終了位置には、個別動画パケットのデータを挿入する領域の終了位置がピクセル値で示される。個別動画パケットの項目には、個別動画パケットを示す情報が格納される。個別動画パケットの項目は、パケットID、入替開始位置および入替終了位置の各情報を含む。パケットIDは、1フレームの広告動画を作成する際に用いられる個別動画パケットのパケットIDが格納される。入替開始位置には、個別動画パケットのうちベース動画パケットに挿入する領域の開始位置がピクセル値で示される。入替終了位置には、個別動画パケットのうちベース動画に挿入する領域の終了位置がピクセル値で示される。図13の例では、個別動画パケットのパケットID「20」の列では、パケットID「20」で特定される個別動画パケットの第1ピクセルから第300ピクセルまでの領域が、パケットID「10」で特定されるベース動画パケットの第101ピクセルから第400ピクセルまでの領域に挿入される。同様に、個別動画パケットのパケットID「30」の列では、パケットID「30」で特定される個別動画パケットの第1ピクセルから第300ピクセルまでの領域が、パケットID「10」で特定されるベース動画パケットの第101ピクセルから第400ピクセルまでの領域に挿入される。パケット合成情報24aは、「被置換領域を示す情報」、「置換領域を示す情報」および「前記第1データを特定する特定情報と前記第2データを特定する特定情報との組合わせを示す情報」の一例である。
図7に戻り、通信部25は、制御経路C1およびデータ通信経路D1とのインタフェースである。通信部25は、例えば、図3のネットワークインタフェース104である。
<通信制御装置30の処理ブロック>
図14は、通信制御装置30の処理ブロックの一例を示す図である。図14には、コントローラ判定部31、通信部32および経路情報記憶部33が例示されている。以下、図14を参照して、通信制御装置30の処理ブロックについて説明する。
経路情報記憶部33は、動画配信システム1の経路情報が記憶される。経路情報は、例えば、通信経路上に存在するOpenFlowスイッチ50および当該OpenFlowスイッチ50を管理するOpenFlowコントローラ40を示す情報を含む。経路情報記憶部33は、例えば、通信制御装置30のメモリ102または外部記憶装置103a上に構築される。
図15は、経路情報33aの一例を示す図である。経路情報33aは、発信元アドレス、通信先アドレス、対応スイッチ名、対応コントローラ名および対応コントローラアドレスの各情報を含む。発信元アドレスには、パケットの発信元となる情報処理装置を示すアドレスが格納される。通信先アドレスには、パケットの送信先となる情報処理装置を示すアドレスが格納される。対応スイッチ名には、対応スイッチに割り当てられたスイッチ名が格納される。対応スイッチは、例えば、発信元アドレスで示される情報処理装置から通信先アドレスで示される情報処理装置へ伝送されるパケットが経由するOpenFlowスイッチ50である。対応コントローラ名および対応コントローラアドレスには、対応コントローラを示す情報が格納される。対応コントローラは、例えば、対応スイッチを管理するOpen
Flowコントローラ40である。対応コントローラ名には、対応コントローラに割り当てられたコントローラ名が格納される。対応コントローラアドレスには、対応コントローラに割り当てられたアドレスが格納される。
図14に戻り、コントローラ判定部31は、発信者端末20からパケット合成情報24aを受信する。コントローラ判定部31は、受信したパケット合成情報24aに含まれる発信元アドレスおよび通信先アドレスを取得する。コントローラ判定部31は、取得した発信元アドレスおよび通信先アドレスに対応付けられた対応スイッチおよび対応コントローラを示す情報を経路情報33aから取得する。コントローラ判定部31は、パケット合成情報24aおよび取得した対応スイッチを示す情報を含む合成指示を対応コントローラに送信する。
通信部32は、制御経路C1とのインタフェースである。通信部32は、例えば、図3のネットワークインタフェース104である。
<OpenFlowコントローラ40の処理ブロック>
図16は、OpenFlowコントローラ40の処理ブロックの一例を示す図である。図16では、合成指示受付部41、スイッチ制御部42、パケット操作部43、通信部44および合成指示記憶部45が例示されている。以下、図16を参照して、OpenFlowコントローラ40の処理ブロックについて説明する。
合成指示記憶部45には、合成指示情報が記憶される。合成指示記憶部45は、例えば、OpenFlowコントローラ40のメモリ102または外部記憶装置103a上に構築される。図17は、合成指示情報45aの一例を示す図である。図17のNo.は、説明の便宜上各行に付した番号である。発信元アドレス、発信元アドレス、合成パケット数、ベース動画パケットおよび個別動画パケットの各項目は、パケット合成情報24aと同様であるため、その説明を省略する。対応スイッチ名には、通信制御装置30から受信した合成指示で示されるOpenFlowスイッチ50のスイッチ名が格納される。合成指示記憶部45は、「記憶部」および「第1記憶部」の一例である。
図16に戻り、合成指示受付部41は、通信制御装置30から合成指示を受け付ける。合成指示受付部41は、受け付けた合成指示を合成指示記憶部45に合成指示情報45aとして記憶させる。
スイッチ制御部42は、OpenFlowスイッチ50にパケット処理の指示を送信する。スイッチ制御部42は、例えば、広告動画の作成に用いられるベース動画パケットおよび個別動画パケットをOpenFlowコントローラ40に転送するようにOpenFlowスイッチ50に指示する。スイッチ制御部42は、「通知部」の一例である。
パケット操作部43は、合成指示情報45aにしたがって、ベース動画パケットと個別動画パケットとを合成して広告動画の1フレーム分のデータを含む広告動画パケットを作成する。パケット操作部43は、作成した広告動画パケットのヘッダ部分に宛先として合成指示情報45aの通信先アドレスに格納されたアドレスを格納する。パケット操作部43は、作成した広告動画パケットを合成指示情報45aの対応スイッチ名に格納された情報で示されるOpenFlowスイッチ50に送信する。パケット操作部43は、「作成部」、「送信部」、「第1送信部」および「返送部」の一例である。広告動画パケットは、「第3データ」の一例である。
通信部44は、制御経路C1とのインタフェースである。通信部44は、例えば、図3のネットワークインタフェース104である。通信部44は、「受信部」の一例である。
<OpenFlowスイッチ50の処理ブロック>
図18は、OpenFlowスイッチ50の処理ブロックの一例を示す図である。図18には、転送先設定部51、パケット転送部52、通信部53およびフローテーブル記憶部54が例示されている。以下、図18を参照して、OpenFlowスイッチ50の処理ブロックについて説明する。
フローテーブル記憶部54は、パケットの処理ルールを含むフローテーブル54aを記憶する。フローテーブル記憶部54は、例えば、OpenFlowスイッチ50のメモリ102または外部記憶装置103a上に構築される。図19は、フローテーブル54aの一例を示す図である。図19のNoは、説明の便宜上各行に付した番号である。フローテーブル54aは、発信元アドレス(マッチ条件)およびアクションを含む。発信元アドレス(マッチ条件)には、OpenFlowスイッチ50が受信したパケットに関するマッチ条件が記載される。本実施形態では、マッチ条件は、パケットの発信元アドレスが100であるパケットとなる。アクションには、マッチ条件に対応したパケットについて行うアクション(処理)が記載される。本実施形態においては、発信元アドレスが100であるパケットを受信したときの処理を示す情報が格納される。図19では、アクションとして「Packet-In」
が例示されている。「Packet-In」は、条件と一致するパケットをOpenFlowコントローラ
40に転送する処理の例示である。つまり、フローテーブル54aの一行目のエントリは、OpenFlowスイッチ50が発信元アドレス「100」のパケットを受信すると、このフローテーブル54aのエントリに従い、このパケットをOpenFlow コントローラ40に転送
する処理を行うことを示している。フローテーブル記憶部54は、「第2記憶部」の一例である。
転送先設定部51は、OpenFlowコントローラ40から受信したパケット処理に係る指示をフローテーブル54aに記憶させる。また、転送先設定部51は、OpenFlowコントローラ40からの指示に応じて、指示された情報をフローテーブル54aから削除する。
パケット転送部52は、例えば、図4のパケット転送装置203によって実現される処理部である。パケット転送部52は、フローテーブル54aにしたがって、パケットの転送処理を行う。パケット転送部52は、「第1送信部」、「第2送信部」および「第3送信部」の一例である。
<処理フロー>
以上で構成を説明した動画配信システム1の処理フローについて、図面を参照して説明する。以下の説明では、通信先端末10aの端末名を「A」、アドレスを「200」と仮定し、通信先端末10bの端末名を「B」、アドレスを「300」と仮定する。また、OpenFlowコントローラ40のアドレスを「50」と仮定し、発信者端末20のアドレスを「100」と仮定する。なお、本実施形態においてアドレスは十進数で記載されるが、アドレスはIPアドレスを採用する事も出来る。
<通信先端末10の処理フロー>
図20は、実施形態に係る通信先端末10の処理フローの一例を示す図である。以下、図20を参照して、通信先端末10の処理フローの一例について説明する。
K1では、通信先端末10aおよび10bのWebブラウザ部11は、図示しないウェブサイトにログインする。通信先端末10aはユーザ名「UserA」でログインし、通信先
端末10bはユーザ名「UserB」でログインしたものとする。通信先端末10aおよび1
0bのWebブラウザ部11は、ログインしたウェブサイトのウェブページを取得する。
K2では、通信先端末10aおよび10bのWebブラウザ部11は、取得したウェブページ上の広告表示領域11aから広告種別および広告動画の配信元を示す配信元情報を含む広告動画の指定を取得する。本実施形態では、広告種別として「1」が指定されたものと仮定する。
K3では、通信先端末10aおよび10bのWebブラウザ部11は、K2で取得した広告動画の配信元である発信者端末20に対して、広告種別および自端末を特定する情報を含む広告動画配信要求を送信する。自端末を特定する情報は、例えば、自端末の端末名、アドレスおよびウェブサイトのログインに使用したユーザ名である。
K4では、通信先端末10a、10bは、発信者端末20から受信した広告動画を広告動画表示領域11aに表示する。K3における広告動画配信要求の送信およびK4における広告動画の受信には、データ通信経路D1が利用される。
<発信者端末20の処理フロー>
図21および図22は、実施形態に係る発信者端末20の処理フローの一例を示す図である。図21の「W」は、図22の「W」に接続する。以下、図21および図22を参照して、発信者端末20の処理フローの一例について説明する。
H1では、動画構成決定部21は、通信先端末10から広告動画配信要求を受信する。動画構成決定部21は、所定時間内に受信した広告動画配信要求をまとめて処理する。本実施形態では、所定時間を1秒と仮定し、1秒間に通信先端末10aおよび10bから広告動画配信要求を受信したものと仮定する。そのため、本実施形態では、動画構成決定部21は、通信先端末10aおよび通信先端末10b向けの広告動画の構成を決定する。
H2では、動画構成決定部21は、受信した広告動画配信要求から広告種別および端末特定情報を取得する。動画構成決定部21は、取得した広告種別および端末特定情報を送信先情報29aに記憶させる。すなわち、送信先情報29aには、図11に例示されるように、通信先端末10aに係る情報として、端末名として「A」、通信先アドレスとして「200」、ユーザ名として「UserA」、広告種別として「1」が記憶される。送信先情
報29aには、通信先端末10bに係る情報も同様に記憶される。
H3では、動画構成決定部21は、広告動画配信要求から取得した広告種別を基に、広告動画の作成に用いるベース動画および個別ソース動画を決定する。動画構成決定部21は、動画構成情報28aを参照して、広告種別に対応付けられたベース動画IDと個別ソース動画IDを取得する。動画構成決定部21は、ベース動画IDに対応するベース動画をベース動画記憶部26から取得する。動画構成決定部21は、取得したベース動画を動画パケット作成部23に渡す。動画構成決定部21は、個別ソース動画IDに対応する個別ソース動画を個別ソース動画記憶部27から取得する。動画構成決定部21は、取得した個別ソース動画を個別動画作成部22に渡す。
H4では、個別動画作成部22は、動画構成決定部21から受け取った個別ソース動画から個別動画を作成する。個別動画作成部22は、通信先端末10aおよび通信先端末10bのユーザ名を送信先情報29aから取得する。個別動画作成部22は、通信先端末10a向けの個別動画として、送信先情報29aから取得した通信先端末10aのユーザ名「UserA」を名称表示領域22aに表示する個別動画を作成する。個別動画作成部22は
、同様に、通信先端末10b向けの個別動画も作成する。
H5では、動画パケット作成部23は、ベース動画の各フレーム毎にフレームのデータをデータ部P1bに含むベース動画パケットを作成する。ベース動画パケットのヘッダ部
P1aの発信元には発信者端末20のアドレス「100」が格納される。ベース動画パケットのヘッダ部P1aのパケットIDには、パケットIDカウンタ2Aから取得した値が格納される。ここでは、パケットIDとして初期値の「10」が格納されたものとする。さらに、動画パケット作成部23は、パケットIDカウンタ2Aに格納された値に所定の値を加算してパケットIDカウンタ2Aに格納された値を更新する。本実施形態では、市パケットIDに加算される所定の値として「10」が仮定される。なお、この段階では、ベース動画パケットのヘッダ部P1aの通信先には有効な値は格納されない。
H6では、動画パケット作成部23は、個別動画の各フレーム毎にフレームのデータをデータ部P1bに含む個別動画パケットを作成する。動画パケット作成部23は、通信先端末10aおよび10b向けの個別動画パケットを作成する。個別動画パケットのヘッダ部P1aの発信元には発信者端末20のアドレス「100」を格納する。個別動画パケットのヘッダ部P1aのパケットIDには、パケットIDカウンタ2Aから取得した値が格納される。さらに、動画パケット作成部23は、パケットIDカウンタ2Aに格納された値に所定の値を加算してパケットIDカウンタ2Aに格納された値を更新する。ここでは、個別動画パケットのヘッダ部P1aのパケットIDには、通信先端末10a向けの個別動画パケットでは「20」が格納され、通信先端末10b向けの個別動画パケットでは「30」が格納される。個別動画パケットのヘッダ部P1aの通信先には、通信先端末10a向けの個別動画パケットでは通信先端末10aのアドレスである「200」が格納され、通信先端末10b向けの個別動画のパケットでは通信先端末10bのアドレスである「300」が格納される。
H7では、合成情報作成部24は、各通信先端末10向けのベース動画パケットと個別動画パケットとの組み合わせを図13に例示されるようなパケット合成情報24aとして作成する。合成情報作成部24は、作成したパケット合成情報24aを通信制御装置30に制御経路C1を介して送信する。
H8では、合成情報作成部24には、対応コントローラのアドレス「50」が制御経路C1を介して通信制御装置30から通知される。合成情報作成部24は、通知されたOpenFlowコントローラ40のアドレスを動画パケット作成部23に渡す。
H9では、動画パケット作成部23は、ベース動画パケットのヘッダ部P1aの通信先に合成情報作成部24から渡された対応コントローラのアドレス「50」を格納する。
H10では、動画パケット作成部23は、ベース動画パケットおよび通信先端末10a向けの個別動画パケットおよび通信先端末10b向けの個別動画パケットを送信する。ベース動画パケットおよび個別動画パケットは、対応スイッチを経由して送信される。ベース動画および個別動画の送信には、データ通信経路D1が利用される。
H11では、動画パケット作成部23は、広告動画配信要求で要求された広告動画の作成に用いられる全てのベース動画パケットおよび個別動画パケットの送信を終えると、送信終了を合成情報作成部24に通知する。合成情報作成部24は、発信元アドレス「100」の発信者端末20から通信先アドレス「200」の通信先端末10aおよび通信先アドレス「300」の通信先端末10bへの送信終了を通知する送信終了通知を通信制御装置30へ送信する。終了通知は、発信者端末20、通信先端末10aおよび10bのアドレスを含む。送信終了通知の送信には、制御経路C1が利用される。
H12では、合成情報作成部24は、送信終了したベース動画パケットおよび個別動画パケットに係る情報をパケット合成情報24aから削除する。H13では、動画パケット作成部23は、通信先端末10aおよび通信先端末10bに係る情報を送信先情報29a
から削除する。
<通信制御装置30の処理フロー>
図23は、実施形態に係る通信制御装置30の処理フローの一例を示す図である。以下、図23を参照して、通信制御装置30の処理フローの一例について説明する。
Z1では、コントローラ判定部31は、発信者端末20から図13に例示されるパケット合成情報24aを受信する。コントローラ判定部31は、パケット合成情報24aから発信元アドレスおよび通信先アドレスを取得する。ここでは、発信元アドレスとして発信者端末20のアドレス「100」が取得され、通信先アドレスとして通信先端末10aのアドレス「200」および通信先端末10bのアドレス「300」が取得される。
Z2では、コントローラ判定部31は、図15に例示される経路情報33aを参照して、発信元アドレスおよび通信先アドレスを基に対応スイッチ名、対応コントローラ名および対応コントローラアドレスを取得する。ここでは、アドレス「100」の発信者端末20からアドレス「200」の通信先端末10aへの経路に対応する対応スイッチ名「SW1」、対応コントローラ名「CNT1」、対応コントローラアドレス「50」が取得される。アドレス「100」の発信者端末20からアドレス「300」の通信先端末10bへの経路についても、同様に、対応スイッチ名「SW1」、対応コントローラ名「CNT1」および対応コントローラアドレス「50」が取得される。
Z3では、コントローラ判定部31は、パケット合成情報24aおよびZ2で取得した対応スイッチ名をアドレス「50」で示される対応コントローラへ送信する。Z4では、コントローラ判定部31は、Z2で取得した対応コントローラアドレス「50」を発信者端末20へ送信する。
Z5では、コントローラ判定部31は、発信者端末20から送信終了通知を受信すると、送信終了通知に含まれる発信者端末20、通信先端末10aおよび10bのアドレスを取得する。コントローラ判定部31は、図15に例示される経路情報33aを参照して、取得した発信元アドレスおよび通信先アドレスを基に、対応コントローラを特定する。コントローラ判定部31は、特定した対応コントローラに対して、発信元アドレス「100」の発信者端末20から通信先アドレス「200」の通信先端末10aおよび通信先アドレス「300」の通信先端末10bへの送信終了を通知する。
<OpenFlowコントローラ40の処理フロー>
図24は、実施形態に係るOpenFlowコントローラ40の処理フローの一例を示す図である。以下、図24を参照して、OpenFlowコントローラ40の処理フローの一例について説明する。
L1では、合成指示受付部41は、通信制御装置30からパケット合成情報24aおよび対応スイッチ50のスイッチ名「SW1」を受信する。合成指示受付部41は、受信したパケット合成情報24aから発信元アドレス「100」を取得する。
L2では、スイッチ制御部42は、スイッチ名「SW1」の対応スイッチに対して、パケットの処理ルールを通知する。本実施形態の場合、パケットの処理ルールは、発信元アドレスが「100」となっているパケットを対応コントローラにPacket-Inするルールを
含む。
L3では、パケット操作部43は、スイッチ名「SW1」の対応スイッチからベース動画パケット、通信先端末10a向けの個別動画パケットおよび通信先端末10b向けの個
別動画パケットを受信する。
L4では、パケット操作部43は、ベース動画パケットと通信先端末10a向けの個別動画パケットとを合成して通信先端末10a向けの広告動画パケットを作成する。図25は、図24のL4の処理の詳細の一例を示す図である。以下、図25を参照して、図24のL4の処理の詳細の一例について説明する。
M1では、パケット操作部43は、合成指示情報45aを参照して、通信先端末10a向けの広告動画パケット作成に用いられるベース動画パケットと個別動画パケットとを選択する。本実施形態では、パケット操作部43は、図17に例示される合成指示情報45aを参照して、パケットID「10」のベース動画パケットとパケットID「20」の個別動画パケットを選択する。M1の処理は、「前記組合わせの指定に基づいて前記第3データの作成に用いる前記第1データおよび前記第2データを決定」する処理の一例である。
M2では、パケット操作部43は、M1で選択したベース動画パケットの数が通信先端末10の数になるようにベース動画パケットをコピーする。本実施形態では、2台の通信先端末10a、10b向けに広告動画パケットを作成するため、ベース動画パケットのコピーを1つ作成する。M2の処理は、「受信した前記第2データの数以上となるように前記第1データを複製」する処理の一例である。
M3では、パケット操作部43は、個別動画パケットを挿入するベース動画パケットの領域を決定する。パケット操作部43は、合成指示情報45aにおける「ベース動画パケット」の「入替開始位置」および「入替終了位置」を参照して、ベース動画パケットに個別動画パケットを挿入する領域を決定する。本実施形態では、ベース動画パケットの第101ピクセルから第400ピクセルまでの領域に個別動画パケットが挿入される。
M4では、パケット操作部43は、ベース動画パケットに挿入する個別動画パケットの領域を決定する。パケット操作部43は、合成指示情報45aにおける「個別動画パケット」の「入替開始位置」および「入替終了位置」を参照して、ベース動画パケットに挿入する個別動画パケットの領域を決定する。本実施形態では、個別動画の第1ピクセルから第300ピクセルまでの領域がベース動画に挿入される。
M5では、パケット操作部43は、ベース動画パケットと個別動画パケットを合成して広告動画パケットを作成する。パケット操作部43は、ベース動画パケットのデータ部P1bに含まれるデータのうち第101ピクセルから第400ピクセルまでのデータを個別動画パケットのデータ部P1bに含まれる第1ピクセルから第300ピクセルまでのデータで上書きする。
M6では、パケット操作部43は、M5で作成した広告動画パケットのヘッダP1aの「通信先アドレス」を通信先端末10aのアドレスである「200」に変更する。パケット操作部43は、M3〜M6の処理によって、通信先端末10b向けの広告動画パケットも作成する。各通信先端末10向けに実行されるM5の処理は、「前記第2データの各々による前記置換を相異なる第1データに対して行う」処理の一例である。M3〜M5の処理は、「前記第1データの前記被置換領域のデータを前記第2データの前記置換領域のデータで置換して前記第3データを作成」する処理の一例である。
図24に戻り、L5では、パケット操作部43は、作成した広告動画パケットを対応スイッチにPacket-Outする。「Packet-Out」は、Packet-InでOpenFlowスイッチ50から転
送されたパケットをOpenFlowスイッチ50に返送する処理の例示である。
<OpenFlowスイッチ50の処理フロー>
図26は、実施形態に係るOpenFlowスイッチ50の処理フローの一例を示す図である。以下、図26を参照して、OpenFlowスイッチ50の処理フローの一例について説明する。
O1では、転送先設定部51は、対応コントローラからパケットの処理ルールを受信する。本実施形態の場合、受信したパケットの処理ルールは、上述の通り、発信元アドレスが「100」となっているパケットを対応コントローラにPacket-Inするルールを含む。
すなわち、転送先設定部51は、パケットのヘッダ部P1aの発信元に「100」が格納されているパケットを対象としてPacket-Inを行う。
O2では、転送先設定部51は、受信したパケットの処理ルールをフローテーブル54aに記憶させる。パケットの処理ルールが登録されたフローテーブル54aは、例えば、図19によって例示される。
O3では、パケット転送部52は、発信者端末20からベース動画パケットおよび個別動画パケットを受信する。O4では、パケット転送部52は、受信したベース動画パケットおよび個別動画パケットをフローテーブル54aにしたがって処理する。ベース動画パケットおよび個別動画パケットは、パケットのヘッダ部P1aの発信元にアドレス「100」が格納されたパケットであるため、フローテーブル54aに設定されたアクションにしたがって対応コントローラにPacket-Inされる。
O5では、パケット転送部52は、対応コントローラからPacket-Outされた通信先端末10a向けの広告動画パケットと通信先端末10b向けの広告動画パケットを受信する。パケット転送部52は、受信した広告動画パケットを各々のパケットのヘッダ部P1aの発信元に格納されたアドレスにしたがって、通信先端末10a、10bへ転送する。なお、Packet-Outされたパケットは、OpenFlowコントローラ40との制御経路C1において受信される。フローテーブル54aの処理はデータ通信経路D1において受信されたパケットに対する処理であるため、Packet-Outされたパケットにフローテーブル54aの処理は適用されない。
実施形態において、発信者端末20は、個別動画パケットをベース動画パケットに先んじて送信するようにしても良い。こうすることで、OpenFlowコントローラ40がベース動画パケットを受信してから、広告動画パケットを送信するまでの時間を短縮できる。この結果、通信先端末10a、10bの動画要求から広告動画の再生までの時間が短縮できる。
<実施形態の作用効果>
実施形態では、複数の通信先端末10宛てに広告動画を配信する場合、ベース動画と各々の通信先端末10向けの個別動画が発信者端末20から動画合成システム60に送信される。ベース動画は共通で、一度の送信であるため、通信先端末10毎に用意した広告動画を発信者端末20から動画合成システム60に送信する場合と比較して、発信者端末20から動画合成システム60までのデータ通信量を抑制できる。
実施形態では、広告動画の背景に例示されるベース動画と通信先端末10毎に異なる表示を行う箇所を含む個別動画とに分割した。そのため、広告動画の配信対象となる通信先端末10が増加しても、ベース動画を増やさなくとも個別動画を増やすことで対応可能となる。そのため、各通信先端末10毎に広告動画を用意する場合と比較して、発信者端末20における動画を保存する容量を低減できる。
実施形態では、個別ソース動画に送信先となる通信先端末10のユーザ名を追加して個別動画が作成された。そのため、個別動画を通信先端末10毎に用意する場合と比較して、発信者端末20における個別動画を保存する容量を低減できる。
実施形態では、通信先端末10で再生される広告動画は、背景によって例示されるベース動画とユーザ名等によって例示される個別動画とを含む。個別動画は、通信先端末10のユーザ名、広告主が訴求したい商品の商品名、当該商品の宣伝文句を含む。そのため、動画配信システム1は、「UserA様の場合、毎月の保険料はX,XXX円です」といった各ユーザ毎にメッセージの内容を変えた広告動画を配信できる。すなわち、実施形態によれば、動画配信システム1は、ユーザ毎に適したメッセージを含む広告動画を配信できる。
実施形態では、OpenFlowコントローラ40は送信先が異なる複数の個別動画パケットを受信した場合、ベース動画パケットを複製した。OpenFlowコントローラ40は、受信した個別動画パケットの各々を相異なるベース動画パケットと合成した。そのため、実施形態では、それぞれの送信先向けの広告動画パケットを作成できる。
実施形態では、個別動画パケットが合成されるベース動画パケットの領域がパケット合成情報24aによって指定された。そのため、実施形態によれば、ベース動画パケットの指定された領域に個別動画パケットのデータを合成することができる。さらに、実施形態では、ベース動画パケットに合成させる個別動画パケットの領域がパケット合成情報24aによって指定される。そのため、実施形態によれば、個別動画パケットの指定された領域をベース動画パケットに合成することができる。
実施形態では、広告動画パケットを作成するベース動画パケットのパケットIDと個別動画パケットのパケットIDの組合わせがパケット合成情報24aに記憶された。そのため、実施形態によれば、OpenFlowコントローラ40が複数のベース動画パケットおよび個別動画パケットを受信した場合でも、広告動画パケットの作成に用いるベース動画パケットおよび個別動画パケットの組合わせを決定できる。
実施形態では、発信者端末20から送信されたベース動画および個別動画がOpenFlowスイッチ50からOpenFlowコントローラ40にPacket-Inされた。OpenFlowコントローラ4
0は、Packet-Inされたベース動画と個別動画とを合成して広告動画パケットを作成した
。作成された広告動画パケットは、OpenFlowコントローラ40によってPacket-Outされることで、OpenFlowコントローラ40を介して通信先端末10に送信した。すなわち、実施形態によれば、OpenFlowを利用してベース動画パケットと個別動画とを合成し、広告動画パケットを作成できる。
<第1変形例>
実施形態では、ベース動画および個別動画は圧縮されていなかった。第1変形例では、ベース動画および個別動画が、例えば、Moving Picture Experts Group(MPEG)2に例示される動画エンコード方式によって圧縮される場合について説明する。なお、以下の説明では、実施形態と異なる点について説明し、共通する部分については説明を省略する。
第1変形例では、発信者端末20は、図21および図22と異なる処理として、H10において、MPEG2に例示される動画エンコード方式によって、ベース動画パケットおよび個別動画パケットを送信する。
図27は、第1変形例に係るOpenFlowコントローラ40の処理フローの一例を示す図である。図24と同様の処理については同一の符号を付してその説明を省略する。以下、図
27を参照して、第1変形例に係るOpenFlowコントローラ40について説明する。
L3aでは、パケット操作部43は、受信したベース動画パケットおよび個別動画パケットをデコードする。ベース動画パケットおよび個別動画パケットは、デコードされることで、圧縮されていない状態となる。L4aでは、広告動画パケットをMoving Picture Experts Group(MPEG)2に例示される動画エンコード方式によってエンコードする。MPEG2は、「所定の圧縮方式」の一例である。
第1変形例における通信先端末10およびOpenFlowスイッチ50の処理は、実施形態と同様であるため、その説明を省略する。
第1変形例では、ベース動画パケット、個別動画パケットおよび広告動画パケットはMPEG2によって例示される動画エンコード方式によって圧縮される。そのため、第1変形例によれば、実施形態よりも発信者端末20から通信先端末10への通信量を低減できる。
<第2変形例>
実施形態では、ベース動画に対してひとつの個別動画を合成した。第2変形例では、ベース動画に対して2つ以上の個別動画が合成される場合について説明する。図28は、第2変形例に係るパケット合成情報24bの一例を示す図である。図28は、複数の個別動画の情報が列挙されている点で、パケット合成情報24aと異なる。パケット合成情報24bでは、複数の個別動画の情報が、ベース動画に合成される順番にしたがって並んでいる。すなわち、パケット合成情報24bは、個別動画をベース動画に合成する順番を規定しているという事もできる。パケット合成情報24bは、「第3データの作成に用いられる複数の第2データ各々を特定する特定情報が所定の順番にしたがって並」んだ組合わせの指定の一例である。
図29は、第2変形例に係る広告動画パケットを作成する処理の一例を示す図である。また、実施形態と同一の構成要素については同一の符号を付し、その説明を省略する。以下、図29を参照して、第2変形例に係る広告動画パケットを作成する処理について説明する。
R1では、OpenFlowコントローラ40のパケット操作部43は、パケット合成情報24bを参照して、広告動画パケットの作成に用いるベース動画パケットおよび個別動画パケットを選択する。第2変形例では、複数の個別動画パケットが選択される点で、実施形態と異なる。R1では、パケットID「10」のパケットがベース動画パケットとして選択される。また、パケットID「20」、「40」および「50」の3つのパケットが個別動画パケットとして選択される。
R2では、パケット操作部43は、ベース動画パケットに対してパケットID「20」の個別動画パケットを合成して新たなベース動画パケットを作成する。R3では、全ての個別動画パケットの合成を終えた場合、処理はM6に進められる。まだ合成していない個別動画パケットが存在する場合、処理はM3に進められる。図29のM3、R2、M5およびR3の処理は、「同一の送信先に対する複数の第2データを受信すると、前記所定の順番にしたがって前記置換を行う」処理の一例である。
第2変形例における通信先端末10、発信者端末20およびOpenFlowスイッチ50の処理は、実施形態と同様であるため、その説明を省略する。
第2変形例では、ベース動画パケットに複数の個別動画パケットを合成する事ができる
。そのため、第2変形例によれば、相異なるメッセージを含む複数の個別動画を用いることで、広告動画のメッセージのバリエーションを容易に増やすことが可能となる。
実施形態、第1変形例および第2変形例では、動画合成システム60は、通信制御装置30、OpenFlowコントローラ40およびOpenFlowスイッチ50の複数の装置によって実現された。しかしながら、動画合成システム60は、例えば、パケットを処理する1台の情報処理装置によって実現されてもよい。
実施形態、第1変形例および第2変形例では、個別ソース動画にユーザ名が追加されたが、個別ソース動画にはユーザ名以外の情報が追加されてもよい。個別ソース動画には、例えば、通信先端末10のホスト名またはIPアドレス等が追加されてもよい。また、個別ソース動画には、個別動画を作成する時期に応じた時候の挨拶等を含めてもよい。
実施形態、第1変形例および第2変形例では、個別ソース動画に追加されるユーザ名は、ウェブサイトへのログインに使用したユーザ名が使用された。しかしながら、個別ソース動画に追加されるユーザ名は、ウェブサイトへのログインに使用されるユーザ名に限定されるわけではない。例えば、発信者端末20が通信先端末10の特定情報とユーザ名とを対応付けてあらかじめ記憶しておいてもよい。発信者端末20は、受信した広告動画配信要求に含まれる通信先端末10の特定情報に対応付けられたユーザ名を個別ソース動画に追加してもよい。
実施形態、第1変形例および第2変形例に係る動画配信システム1では、OpenFlowを利用してベース動画と個別動画との合成を実現した。しかしながら、動画配信システム1によるベース動画と個別動画との合成は、OpenFlowを用いなくともよい。例えば、動画合成システム60がベース動画と個別動画を合成するルールを保持しておき、保持したルールにしたがってベース動画と個別動画を合成してもよい。
実施形態、第1変形例および第2変形例では、発信者端末20は、広告動画配信要を受信してから、ベース動画をOpenFlowコントローラ40に送信した。しかしながら、ベース動画は、あらかじめOpenFlowコントローラ40に記憶されていてもよい。OpenFlowコントローラ40は、例えば、あらかじめ記憶したベース動画からベース動画パケットを作成し、作成したベース動画パケットと発信者端末20から送信された個別動画パケットとを合成して広告動画パケットを作成すればよい。
実施形態、第1変形例および第2変形例では、動画を合成する処理が例示された。しかしながら、開示の技術は動画を合成する処理に限定されるわけではなく、静止画を合成する処理に対して適用してもよい。
以上で開示した実施形態や変形例はそれぞれ組み合わせる事ができる。
1・・・動画配信システム
60・・・動画合成システム
10・・・通信先端末
11・・・Webブラウザ部
11a・・・広告表示領域
12・・・動画再生表示部
20・・・発信者端末
21・・・動画構成決定部
22・・・個別動画作成部
23・・・動画パケット作成部
24・・・合成情報作成部
24a、24b・・・パケット合成情報
26・・・ベース動画記憶部
27・・・個別ソース動画記憶部
28・・・動画構成情報記憶部
28a・・・動画構成情報
29・・・送信先情報記憶部
29a・・・送信先情報
30・・・通信制御装置
31・・・コントローラ判定部
33・・・経路情報記憶部
33a・・・経路情報
40・・・OpenFlowコントローラ
41・・・合成指示受付部
42・・・スイッチ制御部
43・・・パケット操作部
45・・・合成指示記憶部
50・・・OpenFlowスイッチ
51・・・転送先設定部
52・・・パケット転送部
54・・・フローテーブル記憶部
54a・・・フローテーブル
100・・・情報処理装置
101・・・CPU
102・・・メモリ
103・・・外部記憶装置インタフェース
103a・・・外部記憶装置
104、204・・・ネットワークインタフェース
105・・・入出力装置インタフェース
203・・・パケット転送装置
13、25、32、44、53・・・通信部
D1・・・データ通信経路
C1・・・制御経路
P1・・・パケット
P1a・・・ヘッダ部
P1b・・・データ部

Claims (11)

  1. 第1データに係る被置換領域を示す情報を記憶する記憶部と、
    前記第1データを受信する受信部と、
    送信先に応じたコンテンツを含む第2データを受信すると、前記被置換領域のデータを前記第2データで置換した第3データを作成する作成部と、
    前記第3データを前記第2データの送信先に送信する送信部と、を備える、
    通信処理装置。
  2. 前記作成部は、送信先が相異なる複数の前記第2データを受信すると、受信した前記第2データの数以上となるように前記第1データを複製し、前記第2データの各々による前記置換を相異なる第1データに対して行う、
    請求項1に記載の通信処理装置。
  3. 前記記憶部は前記第2データに係る置換領域を示す情報を更に記憶し、
    前記作成部は前記第1データの前記被置換領域のデータを前記第2データの前記置換領域のデータで置換して前記第3データを作成する、
    請求項1または2に記載の通信処理装置。
  4. 前記第1データおよび前記第2データはデータを特定する特定情報を含み、
    前記記憶部は前記第3データの作成に用いられる前記第1データを特定する特定情報と前記第2データを特定する特定情報との組合わせを示す情報をさらに記憶し、
    前記作成部は、前記組合わせの指定に基づいて前記第3データの作成に用いる前記第1データおよび前記第2データを決定する、
    請求項1から3のいずれか一項に記載の通信処理装置。
  5. 前記組合わせの指定では、第3データの作成に用いられる複数の第2データ各々を特定する特定情報が所定の順番にしたがって並び、
    前記作成部は、同一の送信先に対する複数の第2データを受信すると、前記所定の順番にしたがって前記置換を行う、
    請求項4に記載の通信処理装置。
  6. 前記第1データおよび前記第2データは、所定の圧縮方式で圧縮され、
    前記作成部は、圧縮された前記第1データおよび圧縮された前記第2データをそれぞれ伸長してから前記置換を行い、作成された前記第3データを前記所定の圧縮方式で圧縮する処理をさらに実行する、
    請求項1から5のいずれか一項に記載の通信処理装置。
  7. 前記第1データは複数の送信先で共通に使用される第1動画データを含み、
    前記第2データは送信先毎に異なる動画を含む第2動画データを含む、
    請求項1から6のいずれか一項に記載の通信処理装置。
  8. 送信装置および前記送信装置と送信先装置との通信経路上に設けられた通信処理装置を含む通信処理システムであって、
    前記送信装置は、
    前記送信先装置から送信要求を受信すると、送信先に応じたコンテンツを含む第2データの送信先を前記送信先装置とし、第1データと前記第2データとを送信する第2送信部、を備え、
    前記通信処理装置は、
    前記第1データに係る被置換領域を示す情報を記憶する記憶部と、
    前記第1データを受信する受信部と、
    前記第1データおよび前記第2データを受信すると、前記第1データの前記被置換領域のデータを前記第2データで置換した第3データを作成する作成部と、
    前記第3データを前記第2データの送信先に送信する第1送信部と、を備える、
    通信処理システム。
  9. 送信装置、中継装置および置換装置を含み、前記中継装置は前記送信装置と送信先装置との通信経路上に設けられ、前記置換装置は前記中継装置と通信可能に接続される通信処理システムであって、
    前記送信装置は、
    前記送信先装置から送信要求を受信すると、送信先に応じたコンテンツを含む第2データの送信先を前記送信先装置とし、第1データと前記第2データとを送信する第1送信部を有し、
    前記置換装置は、
    前記第1データに係る被置換領域を示す情報を記憶する第1記憶部と、
    前記第1データを受信する受信部と、
    前記第2データを受信すると、前記第1データの前記被置換領域のデータを前記第2データで置換し、送信先を前記第2データの送信先とする第3データを作成する作成部と、
    前記第3データを前記中継装置に返送する返送部と、
    前記置換の対象となる前記第2データを特定する条件を前記中継装置に通知する通知部と、を有し、
    前記中継装置は、
    通知された前記条件を記憶する第2記憶部と、
    受信した前記第2データが前記第2記憶部に記憶された前記条件を満たす場合、受信した前記第2データを前記置換装置に送信する第2送信部と、
    前記置換装置から返送された前記第3データを前記第3データの送信先に送信する第3送信部と、を有する、
    通信処理システム。
  10. コンピュータに、
    第1データに係る被置換領域を示す情報を記憶させ、
    前記第1データを受信させ、
    送信先に応じたコンテンツを含む第2データを受信すると、前記第1データの前記被置換領域のデータを前記第2データで置換した第3データを作成させ、
    前記第3データを前記第2データの送信先に送信させる、
    通信処理プログラム。
  11. コンピュータが、
    第1データに係る被置換領域を示す情報を記憶し、
    前記第1データを受信し、
    送信先に応じたコンテンツを含む第2データを受信すると、前記第1データの前記被置換領域のデータを前記第2データで置換した第3データを作成し、
    前記第3データを前記第2データの送信先に送信する、
    通信処理方法。
JP2017009763A 2017-01-23 2017-01-23 通信処理装置、通信処理システム、通信処理プログラムおよび通信処理方法 Pending JP2018121128A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017009763A JP2018121128A (ja) 2017-01-23 2017-01-23 通信処理装置、通信処理システム、通信処理プログラムおよび通信処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017009763A JP2018121128A (ja) 2017-01-23 2017-01-23 通信処理装置、通信処理システム、通信処理プログラムおよび通信処理方法

Publications (1)

Publication Number Publication Date
JP2018121128A true JP2018121128A (ja) 2018-08-02

Family

ID=63045455

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017009763A Pending JP2018121128A (ja) 2017-01-23 2017-01-23 通信処理装置、通信処理システム、通信処理プログラムおよび通信処理方法

Country Status (1)

Country Link
JP (1) JP2018121128A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020053854A (ja) * 2018-09-27 2020-04-02 株式会社リコー ネットワークシステム、通信制御装置、通信制御方法およびプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020053854A (ja) * 2018-09-27 2020-04-02 株式会社リコー ネットワークシステム、通信制御装置、通信制御方法およびプログラム
JP7251085B2 (ja) 2018-09-27 2023-04-04 株式会社リコー ネットワークシステム、通信制御装置、通信制御方法およびプログラム

Similar Documents

Publication Publication Date Title
JP6570646B2 (ja) オーディオビデオファイルのライブストリーミング方法、システム及びサーバー
JP5730884B2 (ja) クラウドベースのメディアプレーヤ及びオフラインメディアアクセス
CN107592551B (zh) 用于云流服务的方法和设备
WO2017080168A1 (zh) 视频审核的方法及系统
JP2007173987A (ja) マルチメディアデータ送受信システム、及び装置、又はプログラム
WO2017080175A1 (zh) 用于多机位的视频播放器、播放系统及播放方法
JP2022525366A (ja) メディアデータを受信するための方法、装置、およびプログラム
CN115398924A (zh) 用于媒体流传输的方法和设备
JP2016143236A (ja) 配信制御装置、配信制御方法、及びプログラム
JP2018121128A (ja) 通信処理装置、通信処理システム、通信処理プログラムおよび通信処理方法
CN111835994B (zh) 多通道视频处理方法与系统
WO2018008076A1 (ja) リアルタイム編集システム
JP2010211724A (ja) クライアント装置、サーバベース・コンピューティング・システム、およびクライアント制御プログラム
CN116438803A (zh) 用于动态dash画中画流的方法和装置
KR20190032100A (ko) 전자 장치에서의 광고 영상 제공 방법 및 그 전자 장치
US11849173B1 (en) Computer-implemented methods for quality of service optimization using a content adaptive slate image
US11776502B1 (en) Using variable refresh rate to seamlessly adapt to arbitrary and variable video frame rates
US11689598B1 (en) Synchronized out-of-order live video encoding for reduced latency
JP2019129540A (ja) 情報処理装置、データ生成方法およびプログラム
WO2017082303A1 (ja) サーバ、システム、方法、プログラム、表示装置、および記録媒体
JP7477645B2 (ja) Process@appendおよびprocess@playモードを使用してメディアと共にdashおよびcmafインバンドイベントを処理するためのw3cメディア拡張
JP6510108B2 (ja) 再生装置、再生プログラムおよび再生システム
JP7373531B2 (ja) 情報処理装置、通信システム、情報処理方法及びプログラム
WO2024161558A1 (ja) 映像処理システム、映像処理装置、方法、及びプログラム
US12047650B1 (en) Machine learning model to determine a proper subset of a multimedia file for a viewer based on their interest