(57)【要約】      （修正有）【課題】性能及びサービスの品質を最適化し、データの安全性を保証し、システムの稼働時間及びネットワークの安定性を最大化し、プライバシー及びセキュリティを維持すべく設計された方法及び装置を含む通信ネットワークを提供する。【解決手段】デジタルデータのパケットを伝送するためのセキュアクラウド内では、パケットは、クラウド内のメディアノードを通過するときに、スクランブル化（すなわち、パケット内のデータセグメントの配列順番の変更）及びその後のアンスクランブル化、分割及びその後の混合及び／又は暗号化及びその後の復号を繰り返し施される。パケットをスクランブル化、分割、混合及び暗号化するのに使用される方法は、例えば時間などのステートに従って変更される。【効果】ハッカーによるハッキングが事実上不可能となる。ハッカーは、パケットの断片しか見ることができず、データの偽装に用いられる方法は頻繁に変更されるからである。【選択図】図１００Ｂ
2020195141.tif 000002
【特許請求の範囲】
【請求項１】
デジタルデータを含むパケットを、クラウドを通じて伝送する方法であって、
前記クラウドが、複数のサーバにそれぞれホストされた複数のメディアノードを含み、
前記パケットが、複数のデータセグメントを含み、
当該方法が、前記パケットが前記メディアノードを通過するときに、前記パケット内の前記データセグメントの順番を変更することにより前記パケットをスクランブル化するステップを有することを特徴とする方法。
【請求項２】
前記スクランブル化が、前記パケットが前記クラウドに入るときに通る第１のゲートウェイメディアノードで実施され、
当該方法が、前記パケット内の前記データセグメントの順番が前記スクランブル化前の順番に戻るように前記パケットをアンスクランブル化するステップをさらに有することを特徴とする請求項１に記載の方法。
【請求項３】
前記アンスクランブル化が、前記パケットが前記クラウドから出るときに通る第２のゲートウェイメディアノードで実施されることを特徴とする請求項２に記載の方法。
【請求項４】
前記クラウド内の第１のメディアノードで前記パケットを再スクランブル化するステップをさらに有し、
前記再スクランブル化が、前記パケットをアンスクランブル化した後に再びスクランブル化することを含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記パケットを、前記クラウド内の前記第１のメディアノードから、前記クラウド内の第２のメディアノードに送信するステップと、
前記パケットをアンスクランブル化した後に再びスクランブル化することにより、前記第２のメディアノードで前記パケットを再スクランブル化するステップと
をさらに有することを含むことを特徴とする請求項４に記載の方法。
【請求項６】
前記パケットを前記第２のメディアノードでスクランブル化するのに用いられるスクランブル化方法が、前記パケットを前記第１のメディアノードでスクランブル化するのに使用されるスクランブル化方法とは異なることを特徴とする請求項５に記載の方法。
【請求項７】
前記パケットに関連するステートを前記第１のメディアノードから前記第２のメディアノードに送信するステップをさらに有することを特徴とする請求項６に記載の方法。
【請求項８】
前記ステートが、前記パケットが前記第１のメディアノードでスクランブル化された時間に基づいていることを特徴とする請求項７に記載の方法。
【請求項９】
前記第２のメディアノードにセレクタを提供するステップをさらに有し、
前記セレクタが、スクランブル化方法のリストを含んでおり、
前記各スクランブル化方法が前記ステートに関連付けられていることを特徴とする請求項７に記載の方法。
【請求項１０】
前記第２のメディアノードが、前記ステートを使用して、前記セレクタ内の前記スクランブル化方法のリストから特定のスクランブル化方法を選択することを特徴とする請求項９に記載の方法。
【請求項１１】
前記第２のメディアノードが、前記スクランブル化方法のリストから選択された前記特定のスクランブル化方法を用いて、前記パケットをスクランブル化することを特徴とする請求項１０に記載の方法。
【請求項１２】
デジタルデータを含むパケットを、クラウドを通じて送信する方法であって、
前記クラウドが、複数のサーバにそれぞれホストされた複数のメディアノードを含み、
当該方法が、前記クラウド内の第１のメディアノードで前記パケットを再暗号化するステップを有し、
前記再暗号化が、前記パケットを復号した後に再び暗号化することを含むことを特徴とする方法。
【請求項１３】
前記パケットを前記クラウド内の前記第１のメディアノードから、前記クラウド内の第２のメディアノードに送信するステップと、
前記パケットを復号した後に再び暗号化することにより、前記第２のメディアノードで前記パケットを再暗号化するステップと
をさらに有することを含むことを特徴とする請求項１２に記載の方法。
【請求項１４】
前記第１のメディアノードでの前記パケットの暗号化が、前記第２のメディアノードでの前記パケットの暗号化に用いられる暗号化方法とは異なる暗号化方法を用いて実施されることを特徴とする請求項１３に記載の方法。
【請求項１５】
前記パケットに関連するステートを前記第１のメディアノードから前記第２のメディアノードに送信するステップをさらに有することを特徴とする請求項１４に記載の方法。
【請求項１６】
前記ステートが、前記パケットが前記第１のメディアノードで暗号化された時間に基づいていることを特徴とする請求項１５に記載の方法。
【請求項１７】
前記第２のメディアノードにセレクタを提供するステップをさらに有し、
前記セレクタが、暗号化方法のリストを含んでおり、
前記各暗号化方法が前記ステートに関連付けられていることを特徴とする請求項１６に記載の方法。
【請求項１８】
前記第２のメディアノードが、前記ステートを使用して、前記セレクタ内の前記暗号方法のリストから特定の暗号化方法を選択することを特徴とする請求項１７に記載の方法。
【請求項１９】
前記第２のメディアノードが、前記暗号化方法のリストから選択された前記特定の暗号化方法を用いて、前記パケットを暗号化することを特徴とする請求項１８に記載の方法。
【請求項２０】
デジタルデータを含むパケットを、クラウドを通じて送信する方法であって、
前記クラウドが、複数のサーバにそれぞれホストされた複数のメディアノードを含み、
当該方法が、前記クラウド内の第１のメディアノードで第１のパケットを複数のより小さいパケットに分割するステップと、
前記クラウド内の第２のメディアノードで第２のパケットを第３のパケットと混合するステップとを有することを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、性能及びサービスの品質を最適化し、データの安全性を保証し、システムの稼働時間及びネットワークの安定性を最大化し、プライバシー及びセキュリティを維持すべく設計された方法及び装置を含む通信ネットワークに関する。
【背景技術】
【０００２】
通信の手段を改善することにより、人類の初期の始まりから文明は進歩してきた。徒歩で、または馬に乗って移動する宅配便や配達員の使用から、電車、トラック、及び飛行機による郵便配達を経て、電信、電話、無線、テレビ、コンピュータ、携帯電話、そしてインターネット、電子メール、及びワールド・ワイド・ウェブ（ＷＷＷ）の出現に至り、より最近では、ソーシャルメディア、ボイスオーバーインターネット、マシン・ツー・マシン（Ｍ２Ｍ）接続、ＩｏＴ（Internet of Thing）、及びＩｏＥ（Internet of Everything）を通して、通信は常に当代の最新技術の活用において先駆けとなっている。それぞれの新しい時代の電気通信技術が採用されるとともに、接続される人々の数、及びそれらの人々の間で情報が運ばれる速度も増加している。
【０００３】
この傾向の影響は、歴史上のいかなるときと比較しても、人類がより接続されており、通信技術によって、私的、個人的、家族的、及び財政的情報が、接続することを意図された対象にのみ、安全かつ確実に配信されることを、人々が信頼、及び依存しているということである。知識、及び情報は数百万人の人々に数秒で配信されるようになり、友人や家族は、ボタンを押すだけで地球の反対側の人と連絡を取ることができる。「世界は非常に狭い場所になっている」と、しばしば言われている。
【０００４】
このような進歩は誰にとっても非常に有益であるが、我々が技術に対し重度に依存していることの皺寄せも存在する。例えば、地震、または荒天のときに通信システムが実行に失敗した場合、たとえ一時的であっても、「接続されていない」ことによって人々は混乱、またはパニックに陥りさえする。通信システム、またはメディアのサービス品質（ＱｏＳ）は、通信ネットワークの性能の重要な測定値である。人々の心の平和、金融資産、アイデンティティ、及びまさにその人生さえも、信頼でき、かつ安全な通信に依存している。
【０００５】
通信ネットワークのもう１つの検討ポイントは、プライバシー、安全性、及びセキュリティを、使用するクライアントに保証する能力である。通信技術が進化するにつれて、悪戯を起こし、システムを混乱させ、金銭を盗み、偶発的または悪意を持って他者に害を及ぼすことを意図する犯罪者及び「ハッカー」の知識も高度化している。クレジットカード詐欺、パスワード盗難、なりすまし、及び秘密情報、私的写真、ファイル、電子メール、テキストメッセージ、私的つぶやき（困らせるために盗まれたもの、または恐喝の犠牲）の無断公表は、現代のサイバー犯罪のいくつかの例にすぎない。
【０００６】
この特許出願時の、プライバシー侵害及びサイバー犯罪の注目すべき例を以下に列挙し、現代のオープン通信ネットワークにおけるセキュリティ問題の大流行を時系列に並べて示す。
・「ターゲット：少なくとも７千万人が巻き込まれた盗難情報」、ＣＮＢＣ、２０１４年１月１０日
・「ハッカーが高性能の冷蔵庫とテレビで悪意のある電子メールを送信」、ＢＧＲ、２０１４年１月２０日
・「サーモスタットがハッキングされ、Ｎｅｓｔ社とＧｏｏｇｌｅ社の秘密の論争が再開」、Ｓｌａｓｈ  Ｇｅａｒ、２０１４年６月２４日
・「アカウントのハイジャックはＬＩＮＥのデータセキュリティを疑問視する。無料の通話及びメッセージアプリケーションであるＬＩＮＥは、最近多発するデータセキュリティ侵害によって揺らいでいる。このアプリケーションでは、数百のユーザアカウントがアカウントのユーザ以外の人間によって不正にアクセスされたことがわかった。」、日経アジアレビュー、２０１４年７月２日
・「ＮＳＡのデータスイープに一般のアメリカ人が巻き込まれる、報告クレーム」ＡＰ、２０１４年７月６日
・「スマートＬＥＤ電球がＷｉＦｉパスワードを流出させる」、ＢＢＣ  Ｎｅｗｓ、２０１４年７月８日
・「６人がＳｔｕｂＨｕｂ上でプライムチケット購入の詐欺にあった。ＳｔｕｂＨｕｂは、盗まれたパスワード及びクレジットカードの番号を使用して、ポップミュージックコンサート及びヤンキースの試合の何千ものチケットを売買するハッカーのターゲットになった、とニューヨーク州当局は語った。」、Ｂｌｏｏｍｂｅｒｇ、２０１４年７月２４日
・「「インターネットのもの」は非常にハッキングを受けやすい、と研究が示す」、Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｂｕｓｉｎｅｓｓ  Ｔｉｍｅｓ（www.ibtimes.com）
・「ロシアのハッカーが１０億以上のインターネットパスワードを収集する」、Ｎｅｗ  Ｙｏｒｋ  Ｔｉｍｅｓ、２０１４年８月５日
・「アメリカの秘密を暴露する新しい情報漏洩者、政府の結論」、ＣＮＮ、２０１４年８月６日
・「Ｇｏｏｇｌｅ社に買収されたＮｅｓｔ社のサーモスタットを、ハッカーは１５秒でルート化する」、Ｔｈｅ  Ｅｎｑｕｉｒｅｒ（www.theinquirer.net）、２０１４年８月１１日
・「標的を狙う同じマルウェアによってハッキングされたＤａｉｒｙ  Ｑｕｅｅｎ社」、Ｃｈｒｉｓｔｉａｎ  Ｓｃｉｅｎｃｅ  Ｍｏｎｉｔｏｒ、２０１４年８月２９日
・「ヌード写真漏洩の被害者となった有名人―ｉＣｌｏｕｄアカウントのセキュリティ脆弱性」、ＣＢＳ  Ｎｅｗｓ、２０１４年９月１日
・「Ｈｏｍｅ  Ｄｅｐｏｔ社は、クレジットカード侵害の最新のターゲットになり得る。Ｈｏｍｅ  Ｄｅｐｏｔ社の侵害は、ターゲットよりはるかに大規模である可能性がある（４，０００万枚のカードが３週間にわたって盗まれていた）。」、Ｆｏｒｔｕｎｅ、２０１４年９月２日
・「ミステリアスな模造携帯電話のタワーが全米でコールを傍受している」、Ｂｕｓｉｎｅｓｓ  Ｉｎｓｉｄｅｒ、２０１４年９月３日
・「ハッキング攻撃：銀行から小売へ、サイバー戦争の兆候は？」、Ｙａｈｏｏ  Ｆｉｎａｎｃｅ、２０１４年９月３日
・「Ｈｏｍｅ  Ｄｅｐｏｔ社が、アメリカとカナダの店舗で支払いシステムがハッキングされたことを認める」、Ｆｏｘ  Ｎｅｗｓ、２０１４年９月９日
・「Ｙａｈｏｏは、監視に関してアメリカ政府と法廷闘争を行った」、ＣＢＳ／ＡＰ、２０１４年９月１１日
・「ハッカーにとって、あなたの医療記録はクレジットカードより価値が高い」、Ｒｅｕｔｅｒｓ、２０１４年９月２４日
・「赤警報：ＨＴＴＰがハッキングされた。何億もの人々が毎日依存するブラウザ接続を含むため、ＳＳＬ／ＴＬＳ（ＢＥＡＳＴ）攻撃に対するブラウザクラッシャは、最悪のハッキングにランク付けされる。」、ＩｎｆｏＷｏｒｌｄ、２０１４年９月２６日
・「Ｓｏｎｙ社のサイバー攻撃、最初の妨害行為は速やかに炎上した」、Ｎｅｗ  Ｙｏｒｋ  Ｔｉｍｅｓ、２０１４年１２月３０日
【０００７】
サイバー犯罪、セキュリティ違反、なりすまし、及びプライバシー侵害のペースが次第に上がっているように思われる中で、「これら全てのサイバー攻撃はどのようにして可能であり、サイバー攻撃を止めるためには何ができるのか」という疑問を投げかける。社会がより多くのプライバシー及びセキュリティを求めると同時に、消費者は、より高い接続性、より安価で高品質な通信、及び金融取引行為における更なる利便性も求めている。
【０００８】
最新の通信ネットワーク、データストレージ、及び、接続されたデバイスの性能及び脆弱性を理解するためには、現代の電子通信、無線通信、及び光通信が、ファイル、電子メール、テキスト、オーディオ、及びビデオ画像を含むデータをどのように操作、転送、及び記憶しているか理解することが、まず重要である。
【０００９】
回線交換電話ネットワーク操作
【００１０】
電子通信は、ワイヤ、無線、マイクロ波、または光ファイバ回線のネットワークに接続された様々なハードウェア構成要素、またはデバイスを含む。データストリームに情報の「コンテンツ」を埋め込むため、またはエンコードするための様々な方法を使用し、このネットワークを通じて電気エネルギー、または電磁気エネルギーを送信することによって、情報は、あるデバイスから他のデバイスに渡される。理論的には、これらのネットワークの最大データレートは、物理法則によって光速で設定されるが、ほとんどの場合、データエンコーディング、ルーティング及びトラヒックコントロール、シグナル対雑音品質、及び、電気ノイズ、電磁的ノイズ、光学ノイズ、及び望ましくない電子寄生を克服する際の実用上の制限が、情報の流れを乱し、または妨げて、通信ネットワークの能力を理想的な性能のわずかな一部に制限する。
【００１１】
歴史的に、電子データ通信は、２つ以上の電気的に接続されたデバイスの間に通信の「回路」を形成する、専用の「配線による」電気的接続を使用し、最初に達成された。電信の場合、機械的なスイッチを使用して直流（ＤＣ）電気回路を手作業で作製し、電流を断ち、金属製のレバーを回転させ動かしたソレノイドを磁化し、送信者が押したスイッチのパターンと同様のパターンで、リスニングデバイス、または「中継機」をクリックする。送信者は、次に、制定された言語、すなわちモールスシグナルを使用して情報をパルス列にエンコードする。受信者は同様に、メッセージを理解するため、ドット、及びダッシュと呼ばれる一連の長短パルスであるモールスシグナルを理解する必要がある。
【００１２】
その後、アレクサンダー・グラハム・ベルは、電気的接続を介して音を伝えるために、現在は交流（ＡＣ）と呼ばれる「波動電流」の概念を用いて最初の電話を開発した。電話ネットワークは、電気回路によって接続された２つの電磁トランスデューサを含み、各電磁トランスデューサは、固定された永久磁石エンクロージャによって囲まれた可動振動版、及びコイル、すなわち「ボイスコイル」を含んでいた。トランスデューサに向かって話すと、音からの空気圧の変化により、ボイスコイルは、コイル内のＡＣ電流を誘導する周囲の磁界内で前後に移動する。聴取者側では、ボイスコイル内で流れる、経時変化する電流は、周囲の磁界に対面する同一の波形、及び経時変化する磁界を誘導し、音を捉えるトランスデューサと同じ方法で、ボイスコイルを前後に動かす。結果として生じる動きは、音を捉えるデバイスと同じ方法で音を再生する。現代の言葉では、トランスデューサが音を電流に変換するとき、マイクロホンとして操作し、トランスデューサが電流を音に変換するとき、スピーカとして操作する。また、伝道された電気シグナルは、空気中の自然気圧波、すなわち音として運ばれるオーディオ波形に類似しているため、現代では、このような電気シグナルは、アナログシグナル、またはアナログ波形と呼ばれる。
【００１３】
説明したように、トランスデューサは話すこと、及び聞くことの両方に使われるため、会話では両者が話すときと聞くときとを知る必要がある。このようなシステムでは、糸で接続された２つの空き缶、すなわち糸電話と同様に、発信者は話すこと、及び聞くことを同時にはできない。「半二重」方式と呼ばれるこのような一方向動作は古典的であるように聞こえ得るが、トランシーバでの現代の無線通信において、及び「プッシュツートーク」すなわちＰＴＴと名付けられた現代の電話法において、実際に今でも一般に使われている。
【００１４】
のちの全二重（すなわち、双方向または送受信）電話は、別個のマイクロホンとスピーカとを備えており、話すこと、及び聞くことを同時にできることが当たり前になった。しかし、現代でさえ、全二重電話通信を操作する場合には、フィートバック、つまり受信者の音声がマイクロホンによって拾い上げられ、発信者にフィードバックされ、紛らわしいエコー、ときには耳障りな異音が生じることになるという、長距離電話通信を特に悩ませる問題を防ぐために注意が必要である。
【００１５】
初期の電信システム、及び電話システムは、別の問題であるプライバシー問題に悩まされていた。これらの初期の通信ネットワークでは、ネットワークに接続される全ての人が、望んでいないとしても、回路上で通信される全ての情報を耳にする。非都市部の電話ネットワークでは、これらの共有回路は「共同回線（party lines）」として知られていた。その後、電話システムは急速にマルチ回線ネットワークに発展し、専用回線によって、電話局の支店個々の顧客の電話に直接接続された。支社の交換局内では、システムオペレータは、ジャンパケーブルを使用した交換機を介して発信者を相互に手動で接続し、また、ある支店を別の支店へ接続して最初の「長距離」電話サービスを形成する機能を有していた。電話「スイッチ」ネットワークを形成する大きな中継機の列は、次第に人間のオペレータに取って代わり、続いて真空管を含む電子スイッチに置き換えられた。
【００１６】
ベル研究所が１９５０年代後半にトランジスタを開発した後、電話と支店の交換機においては、壊れやすく高温の真空管は、トランジスタと最終的に集積回路とを含む低温稼動ソリッドステートデバイスに置き換えられた。ネットワークが成長するにつれて、電話番号は７桁のプレフィックス番号及びプライベート番号から桁を増やして拡大され、市外局番及び最終的には国際電話を扱うための国コードが含まれていた。音声通話を伝える銅ケーブルは、すぐに世界を覆い、海を渡った。ネットワークの規模に関わらず、操作の原理は一定であり、コールは、アナログシグナルによって伝えられる音声を伴う発信者と、電話スイッチによって決定されるコールの経路指定との間の直接的かつ電気的な接続、すなわち「回路」を表した。このような電話システムは、最終的には「回路交換電話ネットワーク」として知られることになったか、または基本電話システム、すなわちＰＯＴＳとして知られることになった。回線交換電話の採用は、１９８０年代にピークに達し、以後、次のセクションで説明する「パケット交換電話」に置き換えられた。
【００１７】
電話ネットワークとほぼ並行して進化し、１９２０年代には無線放送での定期的な無線通信が開始された。放送は一方向性であり、特定の政府認可周波数で無線放送局から発せられ、その特定の放送周波数、または無線局に同調した任意の数の無線受信機によって受信された。放送されたシグナルは、認可された無線スペクトルの専用部分に、それぞれ振幅変調（ＡＭ）方式、または、より後の周波数変調（ＦＭ）方式のいずれかを使用してアナログシグナルを搬送した。米国では、連邦通信委員会、すなわちＦＣＣが、このような認可された帯域の割り当て、及び規制の管理のために発展した。放送の概念は、無線伝送を使用したテレビ番組の放映へ拡大された。テレビ番組は、最初は白黒のコンテンツを含んでいたが、その後はカラーで放映された。その後、テレビシグナルも、マイクロ波衛星テレビ受信用アンテナによって、または同軸ケーブルを介してのどちらかで、人々の家に搬送されることができた。特定の放送周波数に同調した任意の視聴者が放送を受信することができるため、「マルチキャスト」という用語が、現在ではこのような一方向性のマルチリスナ通信のために使用されている。
【００１８】
無線放送の出現と同時に、最初の双方向通信が商用、及び軍用の海上船で始まった。第２次世界大戦の時代までには、無線は、送信機及び受信機を単一のユニットに結合させた携帯用無線トランシーバへ発展した。電話と同様に、初期の双方向無線送信は、「単信」方式で操作され、１つの無線チャンネルでは１つの無線のみ放送することができ、その間他の無線チャンネルは放送できなかった。異なる周波数の送信機及び受信機を結合させることによって、無線回線の両端で同時に送受信することが可能になり、２者間で全二重方式の通信が可能になった。
【００１９】
しかし、複数の相手からの重複送信を防ぐために、半二重、すなわちプッシュツートークと呼ばれるプロトコルがチャネル管理のために一般的に使用されており、先着順に特定のチャネルで、任意の者が独占的に送信することができる。アナログ変調を使用する業界標準の無線タイプには、アマチュア（ハム、またはＣＢ）無線、マリンＶＨＦ無線、航空交通管制用のＵＮＩＣＯＭ、及び個人トランシーバ通信用のＦＲＳが含まれる。これらの双方向無線ネットワークでは、無線機は特定の周波数の「チャンネル」を介してデータを中央無線タワーへ送信し、タワーはそのシグナルを増幅して反復し、無線ネットワーク全体に送信する。放送地域に情報を伝える利用可能な周波数の数により、システムの総帯域幅、及び一度に無線ネットワーク上で独立して通信することができるユーザの数が設定される。
【００２０】
無線ネットワークの総容量を拡大して、より多くの発信者を処理するように、大きな領域をより小さな部分、すなわち無線「セル」に分割したセルラーネットワークの概念が１９７０年代に論証され、その後１０年以内に普及した。セルラーの概念は、無線タワーの放送圏をより狭い範囲、すなわちより短い距離に制限することであり、したがって、同じ周波数帯域を再利用して、異なるセルに存在する異なる発信者を同時に処理することができる。そのために、通信を「遮断する」、及び突然切断することなく、あるセルから隣接するセルに発信する人のハンドオフを管理するソフトウェアが作成された。ＰＯＴＳ、双方向性無線、無線及びテレビ放送のように、最初のセルラーネットワークは本質的にアナログであった。コールルーティングを制御するために、電話番号システムが採用され、適切な無線電気接続が決定された。この選択には、新しい無線セルラーネットワークを「有線の」従来型の電話システムに継ぎ目なく接続し、２つのシステム間の相互接続、及び相互運用性を提供するという利点も存在した。
【００２１】
１９８０年代には、無線放送及びテレビ放送に加えて、電話通信及び無線通信が、消費電力の削減及びバッテリ寿命の向上のため、シグナル対雑音品質の改善のため、データ及び音声付きのテキストを伝える必要性の問題に取り組み始めるために、アナログからデジタルへの通信方法及び通信フォーマットの避け難い移行を始めた。ＥＤＡＣＳ及びＴＥＴＲＡなどの無線フォーマットの出現と同時に、１対１、１対多、及び多対多の通信方式が可能になった。セルラー通信は、テレビ放送と同様に、ＧＰＲＳなどのデジタルフォーマットへも急速に移行した。
【００２２】
２０１０年までには、ほとんどの国が全てのアナログテレビ放送を中止したか、または中止の手続き中になった。放送テレビとは異なり、ケーブルテレビ事業者は、デジタルフォーマットに切り替える必要はなく、２０１３年まではアナログ及びデジタルシグナルのハイブリッド複合体を維持していた。ケーブルテレビのデジタルへの最終的な移行は、政府の基準ではなく商用の理由からであり、ネットワークの利用可能なチャンネルの数を拡大し、ＨＤ及びＵＨＤコンテンツを配信できるようにし、より多くのペイ・パー・ビュー（ＰＰＶ、（「ユニキャスト」としても知られている））プログラミングを可能にし、高速デジタル接続サービスを顧客に提供するためであった。
【００２３】
アナログフォーマットからデジタルフォーマットへのグローバル通信ネットワークの移行を、インターネットの出現、より具体的にはインターネットプロトコル（ＩＰ）の普及と同一視することは一般的であるが、推進されていなければ、デジタルフォーマットへの転換は電話でのＩＰの商用的受諾に先行し、ＩＰ及び「パケット交換ネットワーク」（次のセクションで説明される）への通信の全世界的な移行を可能にする。
【００２４】
その結果生じる回線交換電話の進化は、各々が異なる技術を含む無線、セルラー、ＰＢＸ、及びＰＯＴＳ接続の融合とサブネットワークを含む「公衆交換電話ネットワーク」、すなわちＰＳＴＮとして、図１に概略的に示される。例えば、ネットワークは、高帯域幅の幹線２によって接続されて、ＰＯＴＳゲートウェイ３、回線交換セルラーネットワーク１７、ＰＢＸ８、及び双方向無線ネットワーク１４への有線接続４を介して接続されるＰＳＴＮゲートウェイ１Ａと、ＰＳＴＮゲートウェイ１Ｂとを含む。各サブネットワークは独立して操作でき、同様のデバイスを駆動する。例えば、ＰＯＴＳゲートウェイ３は、非都市部では依然として一般的であり、ツイストペア銅線７によって従来型のアナログ電話６、またはコードレス電話５のいずれかへ接続している。コードレス電話５は一般的に、デジタルコードレス電話規格、すなわちＤＥＣＴ、その超低電力変形ＤＥＣＴ−ＵＬＥ、またはその前身のＣＴ２を採用し、全て０．９、１．９、２．４、及び５．８ＧＨｚのキャリア周波数を有するクローズドシステムであるＲＦシステム専用である。純粋なＤＥＣＴ電話機は、ワイヤレスＲＦに基づいたデバイスであるにも関わらず、セルラーネットワークに直接アクセスすることはできない。
【００２５】
ＰＢＸ８は、有線のデスクトップ電話機９、会議通話用のスピーカ電話機１０、及びワイヤレス接続１２によって、コードレスまたはワイヤレスローミング電話機１３に接続された私設無線ネットワーク基地局１１を含む、会社のオフィス内で使用される任意の数のデバイスを制御する。ワイヤレスローミング電話機１３は、従来型のコードレス電話のビジネス中心強化の象徴であり、電話機をＷｉＦｉ接続に提供するか、日本のＰＨＳ（Personal Handphone System）の場合には、東京都新宿区などの交通量の多い地域、または人口密度の高いビジネス地域において、企業の外に位置する公衆マイクロセルラーネットワークにアクセスする。ＰＨＳ製品では、帯域幅、伝達範囲、及びバッテリ寿命は極端に制限される。
【００２６】
ＰＳＴＮはまた、ＡＭＰＳ、ＣＤＭＡ、及びＧＳＭ（登録商標）のアナロク及びデジタルプロトコルを実行する回線交換セルラーネットワーク１７に接続する。セルラー無線タワー１８を介し、回線交換セルラーネットワーク１７は、標準化されたセルラー無線２８を使用して、携帯電話１９Ａなどのモバイルデバイスに接続する。ＧＳＭ（登録商標）の拡張であるＧＰＲＳネットワークの場合には、回線交換セルラーネットワーク１７は、タブレット１９Ｂにも接続することができ、同時に低速のデータ及び音声を伝える。ＴＥＴＲＡ及びＥＤＡＣＳなどの双方向無線ネットワーク１４は、高出力の無線タワー１５及びＲＦ接続を介し、ＰＳＴＮをハンドヘルドの無線１６Ａ、及び、より大きいダッシュボード内のデスクトップの無線１６Ｂに接続する。警察官、救急車、救急救命士、消防署、さらには湾岸当局でも一般的に使用されているこのような双方向無線ネットワークは、プロフェッショナル通信ネットワーク及びサービスとも呼ばれており、消費者よりもむしろ、政府、地方自治体、及び緊急対応者を対象としている。（注：本明細書で使用されるように、「デスクトップ」、「タブレット」及び「ノートブック」という用語は、それらの名前を有するコンピュータの略語として使用される。）
【００２７】
コールルーティングを完了するために従来の電話番号を使用するＰＯＴＳゲートウェイ３、回線交換セルラーネットワーク１７、及びＰＢＸ８とは異なり、双方向無線ネットワーク１４は、専用ＲＦ無線チャンネル（電話番号ではなく）を使用して、無線タワー１５及び都合のよいモバイルデバイスの間の無線接続を築く。このように、プロフェッショナル無線通信サービスは、消費者の携帯電話ネットワークとは性質が異なり、独特のものである。
【００２８】
図１は、多様な技術のサブネットワークを相互接続するためのＰＳＴＮネットワークのフレキシビリティをグラフで示している。まさにこの多様性によって、現在の回路交換ネットワークの本質的な弱点、つまりサブネットワーク間の相互運用性が定義される。様々なサブネットワークが任意の共通制御プロトコル及び言語と通信しないため、また各技術がデータ及び音声の伝達を異なる方法で処理するため、様々なシステムは、ＰＳＴＮのバックボーンまたは幹線を通じて電話をかける能力が限られていることを除いて、本質的に互換性がない。例えば、ニューヨーク市の世界貿易センターへの９月１１日のテロ攻撃の間、アメリカ全土から多くの緊急対応者がマンハッタンに集まって大惨事との戦いを支援しようと試みたが、無線通信システム及びトランシーバは他の州、及び都市からのボランティアとは互換性がないことを学んだだけであり、救援への努力を、集中化させて命令及び統制するよう管理することは不可能であった。無線の通信プロトコルで標準化が行われていないため、無線は相互に接続することが単純にできなかった。
【００２９】
さらに、回路交換電話ネットワークの直接的かつ電気的接続及びＲＦ接続、特にアナログまたは安全でないデジタルプロトコルを使用する場合、ＲＦスキャナを有するハッカーが、アクティブな通信チャンネルを見つけて、そのとき発生している会話に気付き、サンプリングし、聴き、傍受することは簡単である。ＰＳＴＮは、通信している当事者間の「継続的な」繋がり、すなわち回線を形成するため、ハッカーが接続を見極めて「盗聴」する時間は十分存在し、連邦裁判所の下で機能している政府によって合法的に盗聴を命じられるか、または非合法的な、禁じられた、または不認可の監視を実行するサイバー犯罪者または政府によって法律に反して盗聴される。合法的な、及び違法なスパイ及び監視の定義と、ネットワークオペレータによる協力遵守の義務とは、国によって大きく異なり、多数の国境を越えて経営しているＧｏｏｇｌｅ、Ｙａｈｏｏ、Ａｐｐｌｅなどのグローバル企業の間で激しい争点となっている。通信ネットワーク及びインターネットはグローバルであり、国境または境界は認識しないが、電子情報などを管理する法律はその土地特有であり、その時の国内及び国際的な通信、及び商業を管理する政府の監督官庁の対象である。
【００３０】
その合法性や倫理に関わらず、現在の電子スヌーピング及び監視は一般的であり、全ての道路や地下鉄の全ての道路の曲がり角、及び頭上に設置されたユビキタスセキュリティカメラの監視から、様々な国の国家安全保障課及び組織によって行われる巧みなハッキング及びコードクラッキングにまで及んでいる。全てのネットワークは脆弱であるが、ＰＳＴＮの古さ、及び不十分なセキュリティ対策のために、ハッキングすることが特に容易である。このように、安全な最新ネットワークに接続されたＰＳＴＮでも、システム全体の弱点になり、セキュリティ違反及びサイバー犯罪に対する脆弱性を生み出す。それにもかかわらず、グローバルなＰＳＴＮネットワークを廃止し、ＩＰベースのパケット交換通信に完全に置き換えるには、数十年ではないにしても、やはり数年がかかる。パケットベースのネットワーク（以下に説明する）は、ＰＳＴＮネットワークより近代的であるが、それでも安全でなく、セキュリティ破壊、ハッキング、サービス拒否攻撃、及びプライバシー侵害の対象となる。
【００３１】
パケット交換通信ネットワーク操作
【００３２】
糸で接続された２つの空き缶、つまり糸電話が現代の回線交換電話の操作のメタファを象徴する場合、郵便局は、パケット交換通信ネットワークの同様なメタファを象徴する。テキスト、データ、音声、及びビデオは、ファイル及びデジタルデータのストリームに変換され、その後、ネットワークを介して配信されるデータの量子化された「パケット」に解析される。配信メカニズムは、データパケットの宛先及び送信元を一意に識別する電子アドレスに基づいている。フォーマット、及び通信プロトコルはまた、パケットに含まれるデータの性質に関する情報を含むよう設計され、パケットは、それが使用されるプログラムまたはアプリケーションに固有のコンテンツと、パケットを伝える物理的連結、及び電気的接続または無線接続を容易にするハードウェアとを含む。
【００３３】
１９６０年代に誕生したパケット交換ネットワークの概念は、ポスト・スプートニクの冷戦後のパラノイア時代に作られた。当時、米国国防総省（ＤｏＤ）は、間隔を置いた核ミサイル攻撃により米国の通信基盤全体が壊滅し、ソビエト連邦の先制攻撃に対応する能力が無効化される可能性があるという懸念、及び、攻撃などに対する脆弱性が実際に攻撃を引き起こす可能性があるという懸念を表明した。そのため、国防総省は、軍事施設間で情報を配信するネットワークの能力が、特定のデータリンク及びネットワーク内の多数のリンクの破壊によって妨げられない過剰な通信システム、すなわち格子状の「ネットワーク」の創設を支援した。アーパネット（ARPANET）として知られるそのシステムは、インターネットの親、及び近代的なデジタル通信のイヴとなった。
【００３４】
パケット交換ネットワークの創設にも関わらず、最初の利用し易いウェブブラウザであるＭｏｓａｉｃ、ハイパーテキストによって定義されたウェブページの出現、ＷＷＷの急速な普及、及び電子メールの普及により、インターネットプラットフォームに世界的な支持が集まった１９９０年代になるまで、インターネットの爆発的な成長は発生しなかった。その基本的な考え方の１つである中央制御の欠如、すなわち中央メインフレームの必要性は、インターネットをある程度普遍的に推進したが、これは国や政府に止めることができなかった（または、グローバルな影響を十分に理解してさえいなかった）ため、また、ユーザベースが、新たに購入したパーソナルコンピュータを使用して消費者を含有したためである。
【００３５】
インターネットの成長によるもう１つの大きな影響は、ネットワークを介してデータパケットをルーティングするために使用されるインターネットプロトコル（ＩＰ）の標準化であった。１９９０年代半ばまでに、インターネットユーザは、データを伝達する同じパケット交換ネットワークが、音声を運ぶためにも使用され得ることを理解し、その後間もなく「ボイスオーバーインターネットプロトコル」、すなわちＶｏＩＰが誕生した。この概念は、インターネットにアクセスする任意の者がＶｏＩＰによって無料で通信することを理論的には可能にしたが、ネットワーク全体にわたって伝播に手間がかかる。すなわち待ち時間が生じ、音声品質が低下し、度々わかりにくくなる。「ラストマイル」での接続品質を改善するための、高速イーサネット（登録商標）リンク、高速ＷｉＦｉ接続、及び４Ｇデータの採用により遅延時間は改善されたが、インターネット自体は、データパケットの正確な配信を確実にするために創設されたものであり、パケットを配信するために必要な時間を保証するものではなく、すなわちリアルタイムネットワークとして操作されるべく作成されていない。
【００３６】
そのため、高価な長距離通信事業者、すなわち「電話会社」の代わりにインターネットを使用するという夢は、スカイプ、ライン、カカオトーク、バイバーなどの「期待された」（ＯＴＴ）プロバイダの可用性にも関わらず、ほとんど果たされなかった。ＯＴＴ電話は、無制御の待ち時間、劣悪な音質、発信の停止、エコー、残響、フィードバック、不安定な音、及びしばしば発信を開始することさえできないことに起因する劣悪なサービス品質（ＱｏＳ）に悩まされている。ＯＴＴ通信の劣悪なパフォーマンスは、本質的にはＶｏＩＰベースのプロトコルの欠点ではなく、データが通る経路、または通信が直面する遅延をＯＴＴキャリアが管理できないネットワーク自体の欠点である。本質的に、ＯＴＴ通信はインターネットヒッチハイカーとして機能するため、ＯＴＴキャリアは性能またはＱｏＳを保証することができない。現在のＶｏＩＰベースの通信を最大限に活用できる企業は、待ち時間の少ないハードウェアベースの専用ネットワークを有する長距離電話事業者であり、皮肉にも、そのような動機が最も少ないのが、まさにその電話会社である。
【００３７】
固有のネットワーク余剰は別として、パケット交換通信の最大の長所の１つは、データがインターネットプロトコルと一致したパケットで配置され、インターネットに接続及びリンクされた通信デバイスが提供される限り、任意の送信元から任意の宛先へ情報を伝達する能力である。インターネットプロトコルは、どの情報が伝達されているか、またはどのアプリケーションがその情報を使用するかに注意または関心を示すことなく、宛先へペイロードを配信するネットワークの能力を管理し、カスタマイズされたソフトウェアインターフェース及び高価な専用ハードウェアの必要性を完全に回避する。多くの場合、アプリケーションに関連したペイロードでさえ、予め定義されたフォーマットを確立している。例えば、電子メールを読むため、ブラウザ上でウェブページを開くため、写真やビデオを見るため、フラッシュファイルを見るため、またはＰＤＦドキュメントを読むためなどである。
【００３８】
その汎用的なファイル形式は、専用または企業固有のソフトウェアに依存しないため、インターネットは「オープンソース」の通信プラットフォームと見なすことができ、コンピュータから携帯電話、車から家電製品まで、これまでに接続された最も幅広いデバイスと通信することが可能である。この普遍的な接続を説明する最新のフレーズは、「Internet of Everything」、すなわちＩｏＥである。
【００３９】
図２は、デバイスに接続されたインターネットなどのいくつかの例である。図示されているように、第１高速クラウドのサーバ２１Ａ、第２高速クラウドのサーバ２１Ｂ、及び第３高速クラウドのサーバ２１Ｃ、クラウドデータストレージを含むコンピュータの大規模アレイは、インターネットのクラウド２２を形成する無数の他のサーバ（図示せず）の間の高帯域幅接続、一般的には光ファイバによって相互接続される。クラウドのメタファは、どのサーバがクラウドの一部と見なされ、どのサーバがそうでないかを明確に定義する境界がないため、適切である。毎日、及び分単位でさえ、サーバはオンラインになり、
メンテナンスのためにオフラインになることはあるが、インターネットの機能または性能への影響は何もない。これは、正しく重複した分散システムのメリットである。つまり、単一の制御点は存在せず、したがって単一の障害点も存在しない。
【００４０】
クラウドは、様々な有線、ＷｉＦｉ、またはワイヤレスリンクを介してユーザまたはデバイスに接続され得る。図示のように、第１高速クラウドのサーバ２１Ａは、有線または光ファイバ接続２４を介して、ワイヤレスタワー２５、ＷｉＦｉアクセスポイント２６、または電子メールサーバ２７に接続する。これらの「ラストマイル」リンクは、任意の数の通信デバイスまたは接続デバイスに順番に接続する。例えば、ワイヤレスタワー２５は、セルラー無線２８によってスマートフォン３２、タブレット３３、または自動車３１に接続することができ、例えば、歩行者、個人用の車の運転手、法執行官、及び運送業及び配送業のプロの運転手などを含むモバイルユーザ４０にサービスを提供するために使用されてもよい。ワイヤレスパケット交換が可能な電話通信は、４Ｇ／ＬＴＥと同様にＨＳＵＰＡ及びＨＳＤＰＡを含むセルラープロトコル３Ｇを含む。ＬＴＥ、すなわちロングタームエボリューションは、セルが異なるプロトコルで動作している場合でさえ、あるセルから別のセルへの通話を継ぎ目なく引き渡す機能を含む、様々なセルラープロトコルの相互運用性を保証するネットワーク規格を指す。（注：定義の問題として、本明細書で使用される「ラストマイル」は、タブレット、デスクトップ、または携帯電話などの任意のタイプのクライアントデバイスとクラウドサーバとの間のリンクを指す。）方向性として、「ファーストマイル」という用語は、データ送信元のデバイスとクラウドサーバとの間のリンクを特定するために使用されることもある。そのような場合、「ラストマイル」リンクも「ファーストマイル」である。
【００４１】
より短距離の通信のために、ＷｉＦｉアクセスポイント２６は、ＷｉＦｉ無線２９によってスマートフォン３２、タブレット３３、ノートブック３５、デスクトップ３６、または家電製品３４に接続し、家庭、カフェ、レストラン、及びオフィス内のローカライズされたワイヤレスアプリケーションで使用され得る。ＷｉＦｉは、シングルキャリア周波数仕様８０２．１１ａ、８０２．１１ｂ、８０２．１１ｇ、８０２．１１ｎ、及び最近では二重周波数帯８０２．１１ａｃフォーマット用のＩＥＥＥ定義規格に従って動作する通信を含む。単純な静的ログインキーに基づくＷｉＦｉセキュリティは、接続の不正アクセスを防ぐために主に使用されるが、データを盗聴またはハッキングから無期限に守ることを意図したものではない。
【００４２】
電子メールサーバ２７は、ファイバ、同軸ケーブル、またはイーサネット（登録商標）３０Ａにより、ノートブック３５、デスクトップ３６、電話機３７、テレビ３９に接続されるか、ツイストペア銅線３０Ｂの電話線により、ホテル、工場、オフィス、サービスセンター、銀行、及び家庭を含む、動かない、すなわち固定された、有線接続の市場４２へサービスを提供する販売時点端末３７に接続される。ファイバまたはケーブルが利用できない遠隔地域では、デジタル加入者線（ＤＳＬ）接続は今でも使用されるが、データ速度及び接続信頼性は劇的に損なわれる。全体として、ワイヤレス、ＷｉＦｉ、及び有線接続を介したアクセスを集計すると、インターネットに接続されたオブジェクトの数は、２０２０年までに世界中で２００億に達すると予測されている。
【００４３】
デバイス間の直接接続を確立及び維持する回路交換ネットワークとは対照的に、パレット交換通信は、アドレスを使用して、インターネットを介してパケットを宛先に「ルーティング」する。このように、パケット交換通信ネットワークでは、通信デバイス間の接続を維持する単一の専用回路はなく、またインターネットを介して伝わるデータも単一の一貫した経路を伝わることはない。各パケットは、相互接続されたコンピュータの迷路を通って、宛先に到達しなければならない。
【００４４】
図３は、パケット交換ネットワーク通信を使用した、ノートブック６０からデスクトップ６１へのＩＰパケットのルーティングの仮想例を示している。操作中、ワイヤレス接続６３Ａを介してノートブック６０からＷｉＦｉルータ６２Ａに送信される第１データパケットは、ＤＮＳサーバ７０のアレイに向けられる。ＤＮＳは、ドメインネームサーバ（Domain Name Server）の頭字語である。ＤＮＳサーバ７０のアレイの目的は、宛先デバイス、この場合ではデスクトップ６１、のテキスト名または電話番号をＩＰアドレスに変換することである。パケットをルーティングする前に、ＤＮＳルートサーバ７２は、大きなアドレステーブルをＤＮＳセカンダリサーバ７１にダウンロードした。ノートブック６０からの照会が到達すると、ＤＮＳセカンダリサーバ７１は、宛先、すなわちデスクトップ６１のＩＰアドレスで応答する。ＤＮＳセカンダリサーバ７１が宛先デバイスのアドレスを知らない場合には、ＤＮＳセカンダリサーバ７１は、欠落した情報をＤＮＳルートサーバ７２に要求することが可能である。最終的に、ＩＰアドレスは、ＤＮＳサーバ７０のアレイからソースアドレス、すなわちノートブック６０に戻される。
【００４５】
その後、ノートブック６０は、ＩＰデータパケットを組み立て、組み立てたＩＰデータパケットを宛先に順次送信し始め、まずＷｉＦｉ無線のワイヤレス接続６３Ａを介してＷｉＦｉルータ６２Ａへ届き、その後、宛先への中間ルータとして機能するルータ及びサーバのネットワークを横断する。例えば、図示のような一連の専用ルータは、６５Ａ、６５Ｂ、及び６５Ｃを含み、ルータとして機能するコンピュータサーバは６６Ａ〜６６Ｅを含み、インターネット内のノードとして、またはポイント・オブ・プレゼンス（ＰＯＰ）、すなわちインターネットにアクセス可能な限られた接続性のゲートウェイとして機能するルータネットワークを共に形成する。ＰＯＰとして動作するいくつかのルータまたはサーバは、少数の隣接デバイスのみを介してインターネットに接続するが、図示のように、サーバ６６Ａは多数のデバイスに相互接続され、「スーパーＰＯＰ」と呼ばれることもある。明快にするため、ネットワーク用語でのＰＯＰという用語は、電子メールアプリケーションで使用されるアプリケーション名のＰＯＰ、または普通の古い郵便局と混同されないよう注意する必要がある。
【００４６】
各ルータ、またはルータとして機能するサーバは、アドレス指定可能なＩＰアドレスと、可能であれば、より上位のルータがアドレス指定可能なアドレスとを識別するルーティングテーブルをメモリファイル内に含む。これらのルーティングテーブルは、インターネットに最初に接続されたときに自動的にダウンロードされ、全てのルータにインストールされる。通常、ネットワーク経由でパケットをルーティングする際にはダウンロードされない。ＩＰパケットが、ルータ、ＰＯＰ、またはスーパーＰＯＰに入ると、ルータはＩＰアドレスを十分に読み取り、一般的にはアドレスの最上位桁の数字で、パケットを宛先に届けるために、次に向ける場所がわかる。例えば、ニューヨークから東京に向かうパケットは、まずシカゴを経由し、その後サンフランシスコ、ロサンゼルス、またはシアトルのサーバを経由して東京に到着することができる。
【００４７】
図３の例では、ノートブック６０からＷｉＦｉルータ６２Ａへのパケットは、経路６４Ａを介してルータ６５Ａに転送され、経路６４Ａは、多数の選択肢を有するが、経路６７Ａを介してスーパーＰＯＰ６６Ａにパケットを転送することを決定する。スーパーＰＯＰ６６Ａもまた多くの選択肢を有するが、特定の瞬間に、最良の経路がサーバ‐ルータ６６Ｄへの経路６８であると決定し、経路６７Ｂを介してローカルルータ６５Ｃに転送して、次に経路６４Ｂを介して、ＷｉＦｉ無線６３Ｂによってデスクトップ６１に通信するＷｉＦｉルータ及びアクセスポイント６２Ｂに接続する。したがって、通過した経路がスーパーＰＯＰ６６Ａからローカルルータ６５Ｃへ至る途中のサーバ‐ルータ６６Ｄに移動する間に、経路はスーパーＰＯＰ６６Ａからローカルルータ６５Ｃへ至るまでのルータ６５Ｂに、またはスーパーＰＯＰ６６Ａからローカルルータ６５Ｃへ至るまでのサーバ‐ルータ６６Ｅへの途中のサーバ‐ルータ６６Ｄに移動した可能性がある。また、パケットが通過するルータの数、及びルータ間の各接続の利用可能なデータ速度は、インフラストラクチャによって、及びネットワークトラヒックとネットワーク負荷とによって変化するため、どの経路が最速、すなわち最良であるかを事前に決定する方法は存在しない。
【００４８】
パケット交換データを用いて、クライアント間の直接接続を確立及び維持する回路交換電話通信とは異なり、インターネットを俯瞰する普遍的な情報は存在せず、どの経路がパケットをルーティングするために最良、最適、または最速の経路であるかを決定することはできず、また、２つの連続するパケットが同じ経路をとるという保証さえ存在しない。このように、パケットは、パケットが通過するルータ及びサーバを操作する企業の優先順位に基づき、インターネットを介して経路を「発見」する。本質的に、各ルータには、ネットワークの状態に基づいて優先経路を定義する特定のルーティングテーブル及びルーティングアルゴリズムが含まれている。例えば、ルータの選択は、同じ企業が所有する他のルータへパケットを送ること、隣接するルータへの接続間のトラヒックのバランスをとること、次のルータへの最短遅延を探すこと、取引を戦略的なビジネスパートナーに向けること、または可能な限り多くの中間ルータを飛び越えることでＶＩＰクライアント向けの高速経路を作成することを優先させてもよい。パケットがルータに入ると、特定のＰＯＰによって行われたルーティング選択が、送信者またはネットワークサーバオペレータの最善の利益のために行われたか否かを知る方法は存在しない。
【００４９】
そのため、ある意味では、パケットが辿る経路はタイミング及び運の問題である。前述のニューヨークから東京へのルーティングの例では、ルーティング、及び結果的に生じるＱｏＳは、経路における小さな摂動、すなわち、いわゆる「バタフライ効果」と言われる非線型方程式であっても、実質的に変化させることができる。カリフォルニアで一時的にトラヒック量が多いため、ニューヨークからのパケットがシカゴの「ルータＡ」を通過し、カリフォルニアではなくメキシコシティに転送される場合を考察されたい。メキシコシティのルータは、その後ＩＰパケットをシンガポールに転送し、最終的に東京に送信する。送信された正に次のパケットは、シカゴの「ルータＢ」を経由してルーティングされるが、これはその時点でのトラヒックが少ないため、パケットをサンフランシスコに送信し、その後２回の経由のみで東京に直接送信するためである。このような場合、２番目のパケットは、最初の経路がより長い迂回経路を経由する前に、東京に到着する可能性がある。この例では、ライブビデオストリーミング、またはＶｏＩＰなどのリアルタイム通信のためにインターネットを使用する際の問題点を強調している。すなわち、インターネットは、送信時間を保証する、またはネットワークの送信遅延を制御するようには設計されていない。パケットが２台のサーバのみを経由するのか、または１５台のサーバを経由するのかにより、待ち時間は５０ミリ秒から１秒以上まで変化し得る。
【００５０】
インターネットのルーティング制御が不十分であることは、リアルタイムアプリケーションにとって問題であり、特にＯＴＴ通信事業者にとっては劣悪なＱｏＳの問題である。つまりＯＴＴ事業者は、インターネットのインフラストラクチャ上に便乗することで、インターネットベースの電話を提供しようと試みている。ＯＴＴ事業者はルーティングを制御しないため、遅延またはネットワークの待ち時間を制御することができない。パケット交換通信のもう１つの問題は、検出されることなくデータを乗っ取ることが容易である点である。略奪者がパケットを傍受し、その送信元または宛先のＩＰアドレスを特定した場合、間に存在するルータからデータを傍受するために様々な方法を使用し、自身の非合法ネットワークを介してトラヒックを傍受またはリダイレクトして会話を見張り、暗号化されたファイルを壊すことさえできる。
【００５１】
パケットのルーティングに使用される（及び、略奪者がパケットを乗っ取るためにも使用される）送信元のＩＰアドレスと宛先のＩＰアドレス、及び他の重要な情報は、図４に示される一連のデジタルデータとして明示される。ＩＰパケットは、デバイス間の物理的接続、デバイスを共に繋ぐためにデータが編成される方法、パケットのネットワークルーティング、有用なデータ（ペイロード）が正確に配信されたことを保証する手段、及びペイロードに含まれるデータの種類を定義するデジタル情報を含み、ペイロードデータそのものは様々なアプリケーションプログラムによって使用される。
【００５２】
ＩＰパケットは、左から右へ流れる時間８６に示される一連のシリアルデジタルビットとして順序通り送受信され、インターネットエンジニアリングタスクフォース、すなわちＩＥＴＦなどを含む様々な標準委員会によって確立された、インターネットプロトコルと呼ばれる特定の方法で編成されている。この標準規格は、予め定められたプロトコルに従う任意のＩＰパケットが、同じＩＰ規格に準拠する任意の接続されたデバイスと通信し、理解されることを保証する。インターネットに接続されたデバイス及びアプリケーションの通信及び相互運用性を保証することは、インターネットの品質証明であり、オープンソースイニシアチブ、すなわちＯＳＩの指針を表し、任意の企業、政府、または個人がインターネットを制御することや、アクセシビリティまたはその機能性を制限することを防ぐ。
【００５３】
ＯＳＩモデルは、７つの機能レイヤを含む抽象概念であり、ＩＰパケットのフォーマット、及びパケットの各セグメントがどのような用途に使用されているかを正確に規定している。ＩＰパケットの各部分、すなわち「セグメント」は、図４の表８７に要約された特定のＯＳＩレイヤの機能に適用されるデータに対応する。７つのＯＳＩの役割は以下の通りである。
【００５４】
物理レイヤ、すなわちＰＨＹレイヤであるレイヤ１は、電気シグナル、ＲＦシグナル、及び光シグナルとしての通信の物理的性質を明確にするハードウェア固有の情報と、これらのシグナルを、通信システムを使用するためのビットに変換する方法とを含む。ＷｉＦｉ無線、イーサネット（登録商標）、シリアルポート、光ファイバ、３Ｇまたは４Ｇセルラー無線、ツイストペア銅線上のＤＳＬ、ＵＳＢ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ケーブルまたは衛星テレビ、またはオーディオ、ビデオ、またはマルチメディアコンテンツのデジタル放送などの特定の通信メディアをビットストリームに変換することは、ＰＨＹレイヤのタスクである。ＩＰパケットにおいて、プリアンブルは、レイヤ１データを表し、レイヤ１データを送受信するハードウェアにデータパケット、またはフレーム全体を同期させるために使用される。
【００５５】
データリンクレイヤであるレイヤ２は、フレームとして配置されるビットを含み、ＰＨＹレイヤ１から配信されるビットストリームを解釈可能なデータに変換するルール及び手段を定義する。例えば、ＷｉＦｉ無線ベースのビットストリームは、８０２．１１ａ、８０２．１１ｂ、８０２．１１ｇ、８０２．１１ｎ、及び８０２．１１ａｃを含む任意の数のＩＥＥＥ定義規格に従うことができる。３Ｇ無線通信は、高速パケットアクセス方法ＨＳＤＰＡまたはＨＳＵＰＡを使用して変調されてもよい。光ファイバ内の変調光、または同軸ケーブル上の電気シグナルは、ＤＯＣＳＩＳ  ３規格などに従ってデータにデコードされることができる。ＩＰパケットにおいて、レイヤ２データは、先頭の「データリンクヘッダー」８１と、後端の「データリンクトレーラ」８５とで、パケットの残り部分であるセグメントのヘッダー８２、セグメントのヘッダー８３、及びセグメント８４をカプセル化し、カプセル化されたペイロードの配信の開始時及び終了時を定義するとともに、伝達プロセスにおいて何も失われていないことを保証する。レイヤ２データの重要な要素は、特定のイーサネット（登録商標）アドレス、ＲＦリンク、またはハードウェア固有のトランシーバリンクとの間でデータトラヒックを誘導するために使用されるＭＡＣ、すなわちメディアアクセスアドレスである。
【００５６】
ネットワークまたはインターネットレイヤであるレイヤ３は、ＩＰパケットをルーティングするために使用されるＩＰ情報を含む「データグラム」と呼ばれるパケットを含み、該パケットは、パケット内に含まれるペイロードの性質に関する情報と同様に、ＩＰｖ４またはＩＰｖ６データ、及び対応するソースと宛先ＩＰアドレスとを含む。すなわち、使用されるトランスポートプロトコルのタイプは、トランスミッションコントロールプロトコル（ＴＣＰ）、ユーザデータグラムプロトコル（ＵＤＰ）、または他の何らかのものを含む。レイヤ３は、ループを防止する機能も含む。つまり、ＩＰパケットは決して転送されないが、消えることもない。レイヤ３パケットの特定のタイプであるＩＣＭＰは、ネットワークの状態を診断するために使用され、周知の「ピン（ｐｉｎｇ）」機能を含む。ＩＰパケットでは、レイヤ３は「ＩＰ」のヘッダー８２を含み、トランスポートセグメントのヘッダー８３、及び上位レイヤのセグメント８４を含むペイロードをカプセル化する。
【００５７】
トランスポートレイヤであるレイヤ４は、通信デバイス間の接続の性質を定義するデータのセグメントを含み、ＵＤＰによってコネクションレス通信のためのペイロードの最小限の記述要素、すなわちペイロードの大きさ、損失ビットの大きさ、及びどのアプリケーションサービス（ポート）が配信されたデータを使用するか、が定義される。ＵＤＰは、ペイロードの配信を確認せず、代わりにアプリケーションでエラーまたは消失データを確認するため、コネクションレスであると見なされる。ＵＤＰは通常、ブロードキャスト、マルチキャスト、ストリーミングなどの時間的制約のある通信のために使用され、パケットの再送信は選択肢にない。対照的に、ＴＣＰはパケットを確認することによって仮想接続を保証し、次のパケットが送信される前にペイロードが確実に配信され、破棄されたパケットは再送信される。ＴＣＰは、チェックサムを使用して配信されたパケットのデータ保全性も確認し、順序が狂ったパケットを元の順序で再構成するための規定を含む。ＴＣＰ及びＵＤＰの両方が、送信元ポート及び宛先ポート、上位レイヤサービスまたはアプリケーションの記述要素、例えばレイヤ４ペイロード内に含まれる情報に関連したウェブサーバ、または電子メールサーバを定義する。ＩＰパケットにおいて、レイヤ４はＴＣＰ／ＵＤＰのヘッダー８３を含み、上位ＯＳＩレイヤ５、レイヤ６、及びレイヤ７によって使用されるコンテンツを含むデータ／ペイロードのセグメント８４をカプセル化する。
【００５８】
上位レイヤまたはアプリケーションレイヤであるレイヤ５、レイヤ６、レイヤ７は、データ／ペイロードのセグメント８４としてインターネットによって配信されるコンテンツを記述する。「アプリケーション」レイヤであるレイヤ７は、ＯＳＩモデルにおいて最高レベルを表し、オープンソース及び独自のアプリケーションソフトウェアの両方をサポートするために、６つの基礎となるＯＳＩレイヤに依存している。一般的に使用されるレベル７アプリケーションには、ＳＭＴＰ、ＰＯＰ、またはＩＭＡＰを使用した電子メール、ＨＴＴＰ（Ｃｈｒｏｍｅ、Ｓａｆａｒｉ、Ｅｘｐｌｏｒｅｒ、Ｆｉｒｅｆｏｘ）、ＦＴＰを使用したファイル転送、及びＴｅｌｎｅｔを使用したターミナルエミュレーションが含まれる。独自のアプリケーションには、Ｍｉｃｒｏｓｏｆｔ  Ｏｆｆｉｃｅ製品（Ｗｏｒｄ、Ｅｘｃｅｌ、ＰｏｗｅｒＰｏｉｎｔ）、Ａｄｏｂｅ  Ｉｌｌｕｓｔｒａｔｏｒ及びＰｈｏｔｏｓｈｏｐ、Ｏｒａｃｌｅ及びＳＡＰのデータベースアプリケーション、Ｑｕｉｃｋｅｎ、Ｍｉｃｒｏｓｏｆｔ  Ｍｏｎｅｙ、及びＱｕｉｃｋＢｏｏｋｓの財務ソフトウェア、プラスオーディオ（plus audio）及びビデオプレイヤ（ｉＴｕｎｅｓ（登録商標）、ＱｕｉｃｋＴｉｍｅ、Ｒｅａｌ  Ｍｅｄｉａ  Ｐｌａｙｅｒ、Ｗｉｎｄｏｗ（登録商標）  Ｍｅｄｉａ  Ｐｌａｙｅｒ、Ｆｌａｓｈなど）、及びＡｄｏｂｅ  Ａｃｒｏｂａｔ  Ｒｅａｄｅｒ、Ａｐｐｌｅ  Ｐｒｅｖｉｅｗなどのドキュメントリーダが含まれる。レベル７のアプリケーションは、一般的に、テキスト、グラフィック＆ピクチャ、サウンド及びビデオ、ＸＭＬまたはＰＤＦなどのドキュメントプレゼンテーション、暗号化などのセキュリティ機能を含むレベル６の「プレゼンテーション」レイヤによって構文的に定義された埋め込みオブジェクトも利用する。レベル５の「セッション」レイヤは、１つのオブジェクトを他のプログラムファイルにインポートするなど、アプリケーション間の接続を確立し、セッションの開始及び終了を制御する。
【００５９】
前述のように、ＯＳＩの７レイヤモデルは各レイヤの機能を定義し、対応するＩＰパケットは各レイヤに関連するデータをカプセル化する。木の人形の中に別の人形が入っており、その人形の中にさらに別の人形が入っている、バブシュカ（babushka）、すなわちロシアの入れ子人形に類似した方法で、１つのレイヤの中に他のレイヤが入っている。外部パケット、すなわちレイヤ１であるＰＨＹレイヤは、全ての上位レベルに関する情報を含むＩＰフレーム全体を定義する。
【００６０】
下位の物理レイヤ及びデータリンクレイヤはハードウェア固有であるが、ネットワーク情報及び転送情報を記述するＩＰパケット内でカプセル化された中間ＯＳＩレイヤは、ＩＰパケットの通信及び配信に使用されるハードウェアには完全に関知しない。さらに、トランスポートレイヤのペイロードとしてカプセル化された上位レイヤは、パケットがインターネット経由でルーティングまたは配信された方法とは完全に独立して適用及び操作するアプリケーションにのみ固有である。この分割により、各レイヤを本質的に独立して管理することが可能になり、パケットフォーマットの管理上の承認、及びパケットペイロードの実行可能性の確認を必要とすることなく無数の技術及びユーザの組み合わせがサポートされる。不完全、または不適切なＩＰパケットは、単に破棄される。このようにして、パケット交換ネットワークは、インターネットに接続された任意のデバイスまたはオブジェクト間で、一貫した方式で、異なる通信メディアを介して多様なアプリケーション関連情報をルーティング、転送、及び配信することができる。
【００６１】
結論として、回路交換ネットワークは、（１世紀前の従来型電話システムと同様に）通信している２人以上の当事者間の、単一の直接接続を必要とする。パケット交換ネットワーク通信は、文書、音声、ビデオ、及びテキストを複数のパケットに分解するが、それらのパケットを複数のネットワークパス（正確かつタイムリーな方法で配達するために最善の努力を払う郵便局に類似している）を介して配信し、その後、最初のコンテンツを再構築し、途中で何も失われていないことを確認する。
【００６２】
【表１】
2020195141.tif 000003
【００６３】
ＰＳＴＮはリアルタイム電気回路接続を使用して操作するが、パケット交換ネットワークコンテンツは、様々なトラック及び郵便集配人を使用して、到着が遅れた場合であっても最終的に手紙を配達する郵便局とは異なり、「ベスト・エフォート」方式を使用してコンテンツを配信し、パケット及びペイロードを配信する経路を見つける。パケット交換ネットワークがこの目標を達成する方法をよりよく理解するために、ネットワークの７レイヤＯＳＩモデルにおける各レイヤの機能及び役割を、より深く検討する必要がある。
【００６４】
ＯＳＩレイヤ１  物理（ＰＨＹ）レイヤ
【００６５】
ＯＳＩレイヤ１によって記述された物理レイヤは、通信を容易化するために使用されるハードウェアの操作に対処する。物理レイヤは、電気、無線、及び光伝送のみを記述する最も基本的なレイヤであるが、最も多様なレイヤでもあり、特定のハードウェア１台に特化して、それぞれの詳細な説明を伴う。広く検討されるように、通信ハードウェアは２つのタイプに分けることができる。インターネットのバックボーンを形成するサーバ、すなわち「クラウド」を接続する高トラヒック量のパイプに使用される高帯域幅通信、及びデバイス間のローカル通信を完成させる、またはクラウドから消費者、企業、及びマシンへの「ラストマイル」リンクを接続する低帯域幅通信である。
【００６６】
図５Ａは、例としてマイクロ波タワー９８、光ファイバ９１、及びマイクロ波衛星９３を介して接続されたＰＯＰのサーバ２１Ａと、サーバ２１Ｂとの間の高帯域幅通信を示す。マイクロ波通信は、マイクロ波タワー９６Ａとマイクロ波タワー９６Ｂとの間に見通しのある直接の通信路を必要とする。タワーは、図示のように、有線接続９７Ａ及び有線接続９７ＢによってＰＯＰのサーバ２１Ａ及びサーバ２１Ｂに接続される。同様に、衛星通信は、衛星９３と、ＰＯＰのサーバ２１Ａ及びサーバ２１Ｂに接続された衛星アンテナ９２Ａ及び衛星アンテナ９２Ｂとの間のマイクロ波アップリンク及びダウンリンク９５Ａ、及びマイクロ波アップリンク及びダウンリンク９５Ｂを必要とする。先の例と同様に、有線接続９４Ａ及び有線接続９４Ｂは、サーバ２１Ａ及びサーバ２１Ｂを、衛星アンテナ９２Ａ及び衛星アンテナ９２Ｂに接続する。サーバ２１Ａ及びサーバ２１Ｂは、光ファイバ９１によって維持される高帯域幅光接続９０を使用して直接接続することもできる。
【００６７】
図５は、サーバ２１Ｂ及びサーバ２１Ｃと、高帯域幅接続２３とを含むクラウド２２からの「ラストマイル」リンクの様々な例と、様々な種類のコンピュータ、電話、無線、及び接続された「モノ」とを示す。図示のように、有線接続は、光ファイバ９１及び同軸ケーブル１０５と、程度を弱めるがツイストペア銅線とを含んでもよい。ワイヤレス接続は、セルラー無線タワー１８、双方向の無線タワー１５、ＷｉＦｉアクセスポイント２６、及び衛星９３を含む多くの手段によって送信することができる。
【００６８】
いくつかの例のように、クラウドゲートウェイとして機能するサーバ２１Ｃは、光ファイバ接続２４によって、スマートフォン３２、タブレット３３、またはノートブック３５に接続するセルラー無線２８のためのセルラー無線タワー１８を駆動する回線交換セルラーネットワーク１７であるＬＴＥ基地局に接続される。サーバ２１Ｃは、ＷｉＦｉ２９をスマートフォン３２、タブレット３３、またはノートブック３５に送信するパブリックＷｉＦｉルータにも接続される。
【００６９】
サーバ２１Ｃは、ケーブルモデム伝送システム、ＣＭＴＳ１０１に接続され、次に、同軸ケーブル１０５によって、ＨＤＭ（登録商標）Ｉ１０７を使用したＴＶ３９を駆動するセットトップボックス（ＴＶ  ＳＴＢ）１０２、及びケーブルモデム１０３に接続される。ケーブルモデム１０３は、２つの異なるタイプの出力、つまり音声及び高速デジタル（ＨＳＤ）を発生させる。音声出力はコードレス電話５に使用され得るが、ＨＳＤは、家庭用のＷｉＦｉアクセスポイント２６によって発生したＷｉＦｉ無線２９を介し、タブレット３３、家電製品３４、及び携帯電話（図示せず）と同様にデスクトップ３６を駆動する。ケーブルモデム１０３は、場合によっては、デスクトップ３６に配線されたイーサネット（登録商標）１０４としてＨＳＤを生み出してもよい。あるいは、ＴＶ  ＳＴＢ１０２は、衛星９３を有する衛星アンテナ９２Ａ及び衛星アンテナ９２Ｂを含む衛星リンク９５を介してシグナルを受信することができる。全体として、ＴＶ  ＳＴＢ１０２及びケーブルモデム１０３の様々な出力により、家庭通信ネットワーク１００が作成される。
【００７０】
サーバ２１Ｃは、ＴＥＴＲＡまたはＥＤＡＣＳの、双方向無線ネットワーク１４の基地局、及び無線タワー１５からの無線１６Ａ及び無線１６Ｂを駆動する双方向無線シグナルを介して、またはデスクトップ電話機９を駆動する企業ＰＢＸ８を介して、プロフェッショナル通信デバイスに接続されてもよい。ほとんどの双方向無線、及び構内交換機システムはパケット交換技術に基づいておらず、コールルーティングのために公衆電話番号を使用しないため、サーバ２１ＣとＰＢＸ８または双方向無線ネットワーク１４の基地局との間でデータが送信されるときは常に情報が失われる。ＰＯＴＳは音声及びデータの混在を処理すべく設計されていないため、ＰＯＴＳ６に接続されたＰＳＴＮブリッジ３も同様である。
【００７１】
物理レイヤ、すなわちＰＨＹレイヤの役割は、通信が１対１であるか、１対多であるか、または多対多であるかに依存するシステムによって変わる。図６Ａに概念的に示されている１対１の通信では、ただ２つのデバイス１４０Ａ及びデバイス１４０Ｂは、専用の電気的、光学的、またはＲＦ接続を使用して相互に直接接続し、ポイントツーポイント接続を実現する。インターフェース１４３Ａ及びインターフェース１４３Ｂにインストールされた、規定の、予め定義された通信プロトコルを使用することによって、ハードウェアのみのインターフェースがデバイス間に確立され、通信を実行することができる。より具体的には、電子回路１４１Ａから発生したデータは、電気シグナル、ＲＦシグナル、または光シグナルを介して、同様に構成された物理的通信のインターフェース１４３Ｂに接続された物理レイヤ通信のインターフェース１４３Ａに転送される。受信されたデータは電子回路１４１Ｂによって処理され、ある場合には、デバイス１４０Ａのインターフェース１４３Ａに応答が戻される。
【００７２】
１対１通信では２つのデバイスしか存在しないため、トラヒックを誘導し、デバイスを識別し、またはどのデバイスが命令に応答するかを決定するためのソフトウェアを含む必要はない。専用のポイントツーポイント通信などの例は、当初、プリンタをデスクトップコンピュータに接続するために使用されたＲＳ２３２のようなシリアル通信バスと、携帯電話のディスプレイのＬＥＤバックライト輝度を制御するために使用されるシンプルシリアルコントロール、すなわちＳ２Ｃバス（特許文献１）とを含む。
【００７３】
専用のポイントツーポイント通信には、いくつかの利点が存在する。第１に、実装が容易であり、必要に応じて、単一の集積回路内であったとしても、中央処理装置（ＣＰＵ）コアを必要とすることなくハードウェアで完全に実行することが可能である。あるいは、インターフェースは、ファームウェア、すなわちハードウェア特有のソフトウェアで実施することができ、データ交換を管理するための限定された命令セットを実行するために、最小限のＣＰＵ処理能力のみを必要とする。第２に、トラヒック管理を必要とすることなく、インターフェースなどは非常に高いデータ速度で動作することが可能である。最後に、他のデバイスが回線を共有していないか、または通信を「聞く」ことができないため、セキュリティに様々な利点が存在する。この場合、インターフェースは、デバイスがそのポートに差し込まれた時点で任意のデバイスのユーザ情報を「検証」または「認証」し、接続が一瞬でさえ中断された場合には、ポートを無効にすべく実装することができる。認証されていないデバイスは無視され、有効なデバイスが問題のデバイスに置き換わるまで、ポートはシャットダウンしたまままである。
【００７４】
１対１通信における２つのデバイス間の関係は、基本的に異なる２つの方法で管理され得る。「ピアツーピア」通信では、各デバイスは、等しい意思決定権限を有し、通信交換の制御は、一般的に先着順に優先権が与えられる。あるいは、「マスタ／スレーブ」構成では、マスタデバイスが意思決定プロセスの制御を行い、スレーブデバイスは、リクエストを行ってマスタデバイスから承認を受け、任意の動作を開始する必要がある。
【００７５】
１対多のＰＨＹ専用インターフェースが図６Ｂに示されており、３つ以上のデバイス１４０Ａ、デバイス１４０Ｂ、デバイス１４０Ｃがデータ「バス」１４４として示される共有通信回線によって共に接続されている。各デバイスは、対応するデータ回線１４２Ａ、データ回線１４２Ｂ、及びデータ回線１４２Ｃによって物理的なインターフェース１４３Ａ、インターフェース１４３Ｂ、及びインターフェース１４３Ｃに接続された電子回路１４１Ａ、電子回路１４１Ｂ、または電子回路１４１Ｃを含む。この構成では、任意のデバイスから通信されたデータが、バスまたは通信メディアに接続された全ての他のデバイスに渡される。例えば、デバイス１４０Ｃがバス１４４にデータを送信する場合、デバイス１４０Ａ及びデバイス１４０Ｂは通信を受信し、デバイス１４０Ｂがバス１４４にデータを送信する場合、デバイス１４０Ａ及びデバイス１４０Ｃは通信を受信する。以下同様に続く。誰もが聞く通信は「放送」と呼ばれ、多くのテレビ受信機にコンテンツを送信する放送テレビ局と同様の手段である。
【００７６】
現代の言葉では、１対多放送はマルチキャスティングとして知られている。レイヤ１であるＰＨＹのみの１対多放送は、放送事業者には誰が聞いているのか分からないため、本質的には安全な通信形態でない。第二次世界大戦では、情報をスクランブルする秘密のアルゴリズムを使用することにより、リスナがメッセージを理解することを防ぐべく設計された「暗号化」を使用して、安全でないチャネルを介して軍隊、艦隊、及び潜水艦に情報を送るために放送が使用された。承認されていないリスナが「コードを破る」ことができれば、インターロッパーが機密声明を傍受することができるだけでなく、傍受可能であることを放送業者が知らないため、セキュリティはひどく危険にさらされる。したがって、レイヤ１であるＰＨＹのみの実装では、１対多通信には、以下のようないくつかの大きな欠点がある。
・通信バスまたはメディアに接続可能な任意のデバイスは、意図しない受信者またはセキュリティ脅威を表していても、通信コンテンツを受信または監視することができる。
・情報を送信するデバイス、すなわち「送信デバイス」は、他のデバイスが何を聞いているかわからない。
・送信デバイスは、送信されたデータが正確かつ的確に受信されたかどうかを確認することができない。
・意図しない、または無関心の受信者への通信トラヒックの送信は、受信者に望まない、必要としない、または気にしないメッセージを受信させることによって、貴重な通信チャネル帯域幅を無駄にする。
【００７７】
チャネル帯域幅のための競争、及びどのデバイスが送信を承認されているかという優先順位付けの決定のため、ＰＨＹのみの実装を使用するマルチデバイス接続性の問題は、１対多、特に多対多のデバイス通信においてさらに悪化する。データの衝突を防ぐために、複数のデバイスが同時に放送しようとする場合、ＰＨＹのみの通信は、通信チャネルまたはメディアを共有する各デバイスのために、予め定められた階層の優先権を採用しなければならない。中央処理装置、すなわちＣＰＵの設計では、いくつかの方法が組み合わされ、ＣＰＵ内及びＣＰＵとメモリとの間の通信を管理する。これらの概念には、ＣＰＵがどのデバイスまたはメモリロケーションと通信しようとしているかを識別するために使用される「アドレスバス」の原理と、アドレスとは別にデータを搬送するために使用される「データバス」と、何らかのタスクが実行されなければならないときを識別するために使用される１つ以上の「割り込み」回線とが含まれる。
【００７８】
このように、ＣＰＵは要求されたタスクに対し実行時に反応することができ、必要に応じてＣＰＵが複数の周辺機器と通信してサポートすることを可能にし、接続された周辺機器からステータス情報を絶えずポーリングする、または請求する責任から、ＣＰＵを解放する。動作時には、周辺コンポーネントがアテンションを必要とするときにはいつでも、共有接続である割り込み回線を、瞬時に、接地へ電気的にショートさせることによって、「割り込み」シグナル、すなわちサービスの要求を発生させる。割り込みを発生させた後、周辺機器は、航空機内の「コールアテンダント」ライトに類似した方法で、ＣＰＵが必要なものをデバイスに要求するのを待つ。割り込みサービスルーチンは、一般的に、割り込みデバイスを処理する前にＣＰＵが行っていることを完了させるため、このような方法は、即時の注意を必要とするリアルライムイベントの優先処理には適していない。
【００７９】
リアルタイムアプリケーションのための割り込みベース通信の機能を強化するために、ＣＰＵアーキテクチャは、「ノンマスカブル割り込み」と呼ばれる優先回線の概念を導入し、ＣＰＵが何をしていても停止させ、優先順位の高いイベント、すなわちリアルタイムイベント、例えばルータに入ってきたメッセージまたは携帯電話への着信を即座に処理する。一等船室内の少数の乗客のためのＶＩＰ待遇のように、このような方法は、中央通信装置またはマスタデバイスに接続された限られた数のデバイスのために機能するが、このアプローチは、多数のユーザを処理すべく調整されておらず、集中制御が存在しないピア分散システム（peer-distributed system）もサポートしない。
【００８０】
ＣＰＵのデバイスアドレスの原則を発展させ、ＯＳＩレイヤ２、３、及び４は同様に、デバイス間の通信トラヒックを導くための主要コンポーネントとして、デバイス「アイデンティティ」を利用する。例えば、データリンクレイヤであるレイヤ２は、メディアアクセス、すなわちＭＡＣアドレスを使用して入出力情報を識別し、ネットワークレイヤであるレイヤ３は、ＩＰアドレスを使用したネットワークを介してパケットをルーティングし、トランスポートレイヤであるレイヤ４は、転送されているデータの種類、例えば電子メール、ウェブページ、ファイルなどを識別するためにポートアドレスを使用する。ＣＰＵでは、アドレスバス、データバス、及び割り込み回線は、「パラレル」ポート接続としても知られる別々の回線を含む。パラレルポートは、単一のチップ内の相互接続、またはコンピュータマザーボード上の短距離高速接続を最大化する点で有効であるが、多数の回線は高価であり、長距離通信には非実用的である。
【００８１】
代わりに、シリアル通信は、経時的に送信されるパケットで情報を配信するため、現在の電子通信のための一般的な方法を形成する。図４に先に示したＩＰパケットは、全ての必要なルーティングデータ及び通信データを含み、通信ネットワークを介して送信者と受信者との間でペイロードのセグメント８４であるコンテンツをローカルまたはグローバルに配信する。各ＩＰパケットは、並行して同時に送信される代わりに、順次配置され、経時的方法８６で受信する場合以外には、データリンクヘッダー８１のデータリンクレイヤ情報、ヘッダー８２のＩＰアドレス情報、及びＴＣＰ／ＵＤＰのヘッダー８３のポートアドレス情報を有する、必要なアドレスを含む。
【００８２】
ＯＳＩレイヤ２  データリンクレイヤ
【００８３】
ＰＨＹのみのマルチデバイス通信において情報フローを制御する際、前述の問題を克服するために、７レイヤのＯＳＩモデルは、レイヤ２、すなわち「データリンク」レイヤの抽象概念を含む。本質的に、データリンクレイヤは、交通整理の任務を遂行し、データの流れを導き、共有データバスまたは共有メディア上のどのデータが特定のデバイスを対象としているかを決定する。レイヤ２のデータリンクレイヤの役割は図７Ａに例示されており、デバイス１４５Ａ、デバイス１４５Ｂ、及びデバイス１４５Ｃは共通接続、すなわち「バス」１４４を共有するが、各デバイスは、一度に１つのデータリンク１４７通信のみをサポートする、独自のデータリンクレイヤの通信インターフェース１４６Ａ、データリンクレイヤの通信インターフェース１４６Ｂ、及びデータリンクレイヤの通信インターフェース１４６Ｃを有する。したがって、多くのデバイスが物理レイヤで共に接続されている、すなわち共通のハードウェアバスを共有しているにも関わらず、データリンクレイヤでは、そのうち２つのみが一度に相互接続される。具体的には、デバイスＣが他の２つのデバイスに物理的レベルで接続されている場合でも、デバイス１４５Ａはデバイス１４５Ｂと独占的に通信することを望む。すなわち、データリンク１４７は、デバイスＡとデバイスＢとの間のみで発生する。
【００８４】
３つのデバイス、すなわちデータリンクの通信インターフェース１４６Ａ、データリンクの通信インターフェース１４６Ｂ、及びデータリンクの通信インターフェース１４６Ｃの全てにおいて、データリンクレイヤインターフェースとしてレイヤ２関連のハードウェアまたはソフトウェアを導入することにより、データバス１４４を介して送信されたデータは、検閲され、フィルタリングされて、送信者と意図された受信者との間の通信を制限することができる。他のバスに接続されたデバイスは、引き続き同じデータを受信するが、それを無視し、メッセージを受信したとき何もしない。これらのプロトコルは、シリアル・ペリフェラル・インターフェース、すなわちＳＰＩバスによって使用され、複数のデバイスが共通の「データバス」に接続され、バスがデータを運ぶが、特定のアドレスがアドレス回線に表示される場合にのみ応答する。このように、ＳＰＩバスはＬＣＤ  ＴＶバックライトシステムのＬＥＤを制御するために使用され、ＴＶディスプレイの各ＬＥＤストリングを独立して制御することができ、高輝度のＨＵ及びＵＨＤビデオコンテンツのための輝度制御及び「ローカルディミング」を容易にする。同様の概念は、コンピュータのＰＣＩ  Ｅｘｐｒｅｓｓ拡張スロットにおいて、及び自動車で使用されるＣＡＮバスにおいて使用されるのと同様にコンピュータメモリバスアーキテクチャ内でも使用され、どのバンクのメモリが読み書きされるかを選択する。
【００８５】
同様に、データリンクレイヤの概念は、ワイヤレスヘッドフォン、スピーカ、ビデオカメラなどのＢｌｕｅｔｏｏｔｈ（登録商標）ワイヤレス通信で使用され、対になっているデバイスと、予め認可された、または「ボンドされた」デバイスのみが相互に通信できる。Ｂｌｕｅｔｏｏｔｈ（登録商標）プロトコルでは、データリンクを確立するステップであるボンディングプロセスは、実際のデータ通信から独立して、かつ優先して行われる。少なくとも理論的には、ボンドが完了すると、２つのボンドされたデバイスは、他の当事者間で同時に起きる他のＢｌｕｅｔｏｏｔｈ（登録商標）会話によって妨害されずに通信することができる。実際には、Ｂｌｕｅｔｏｏｔｈ（登録商標）通信バス１４４は、限定された帯域幅、及びデータ容量の共有無線周波数チャネルを表す。Ｂｌｕｅｔｏｏｔｈ（登録商標）標準委員会によって定義され、ＦＣＣと、外国の同等機関との合意により割り当てられた、全てのＢｌｕｅｔｏｏｔｈ（登録商標）対応デバイスは、同じ共有無線周波数帯、すなわち「チャネル」上で放送する。各同時放送は、チャネルの利用可能な帯域幅、及びデータ速度の一部を消費する。重複した送信にも関わらず、データは、チャネルが過度に占有されるほど長く衝突することはない。データ衝突のリスクを最小化し、チャネルの過密及び可用性の問題を回避するため、Ｂｌｕｅｔｏｏｔｈ（登録商標）通信は、非常に短い距離、及び極めて低いデータ速度に意図的に制限されている。
【００８６】
前述のバスアーキテクチャでは、物理的接続は、共通回線、電気的接続、または複数のデバイスに直接接続されているか、複数のデバイス間で共有されているメディアである。バスアーキテクチャでは、バスに接続された任意のデバイスは、たとえ少量であってもバスからエネルギーを消費し、通信してバスのパフォーマンスを低下させる。各追加デバイスの接続とともにバスのパフォーマンスを段階的に低下させるこの現象は、「ローディング」として知られている。ローディングが大きすぎる場合には、バスは指定された性能限界内で動作できなくなり、通信が遅すぎること、または高いエラー率を示すことによって通信は失敗する。特定のパフォーマンス・レーティングを満たす前に、回線またはバスに接続されるデバイスの最大数は、バスまたは接続の「ファンアウト」と呼ばれる。ローディングのリスクを軽減するために、バスは多数のセグメントに分割されてもよく、各セグメントはポイントツーポイント方式で操作され、シグナルインテグリティは他のデバイスに送信される前に、大きさがブーストまたはバッファリングされる。接続性の観点から、データリンク、すなわち接続されるデータまたはシグナルは、バスアーキテクチャと同じであるが、電気的、光学的、または無線の信号強度であるＰＨＹデータは、接続されたデバイスの数とは無関係に、一定のレベルに一貫して維持される。
【００８７】
ブーストされたシグナルとのポイントツーポイント接続を含む、１つの接続されたネットワークは、図７Ｂに示されるハブアーキテクチャであり、通信インターフェース１４６Ａ、通信インターフェース１４６Ｂ、及び通信インターフェース１４６Ｃによってそれぞれ簡略化されて示されるデバイスＡ、デバイスＢ、及びデバイスＣは、シグナルブースティングバス、すなわち「ハブ」１４８を介して相互に接続するために使用される。ハブは、データストリームを変更、フィルタリング、または解釈することなく、入力シグナルのコンテンツを忠実に再現し、その後、同じシグナルのブーストされたバージョンを、他のデバイスに接続された回線上に出力する。
【００８８】
各デバイスは、それ自体の専用通信回線、具体的には、周辺デバイス通信インターフェース１４６Ａをハブ通信スタック１５０Ａに接続する専用通信回線１５１Ａ、周辺デバイス通信インターフェース１４６Ｂをハブ通信スタック１５０Ｂに接続する専用通信回線１５１Ｂ、及び周辺デバイス通信インターフェース１４６Ｃをハブ通信スタック１５０Ｃに接続する専用通信回線１５１Ｃを介してハブ１４８にそれぞれ接続する。次に、ハブ１４８内の通信スタックは、高速の内部データバス１４９に接続し、ハブ接続されたデバイスを相互接続する。ＰＨＹレイヤデータは全て、ハブ１４８及び内部データバス１４９を通って移動するが、レイヤ２のデータリンク１４７通信は、デバイスＡの通信インターフェース１４６ＡのみがデバイスＢの通信スタック２４６Ｂに対して独占的に通信し、デバイスＣに対してはそうでないように操作される。しかし、ＰＨＹレイヤのデータは、ハブに接続された全てのデバイスに、等しい伝播遅延で配信される。また、どのデバイスが放送しており、そのデバイスが聴いているかを知る方法がないため、ハブデバイスは多方向通信をサポートしなければならない。イーサネット（登録商標）及びＴｈｕｎｄｅｒｂｏｌｔ用のハブは、このように操作される。例えば「ユニバーサルシリアルバス」または「ＵＳＢ」などの他のハブでは、ハブは、１つの入力ポートと複数の出力ポート（通常は２〜６）を有し、異なる形状のＵＳＢコネクタを使用して、データフローの２つのタイプ、及びデフォルトの方向を区別する。
【００８９】
シグナルブースティングを提供するためにデバイスを相互接続する他の方法は、図７Ｃに示される「デイジーチェーン」アーキテクチャであり、デバイスＡ、デバイスＢ、及びデバイスＣは連続的に接続されている。デバイスＡの通信スタック１５２Ａは専用通信回線１５１Ａを介してデバイスＢの通信スタック１５２Ｂに接続され、デバイスＢの通信スタック１５２Ｂは専用通信回線１５１Ｂを介してデバイスＣの通信スタック１５２Ｃに接続され、デバイスＣの通信スタック１５２Ｃは専用通信回線１５１Ｃを介して、もし存在するならば、デイジーチェーン内で接続された次のデバイスに接続される。物理的接続、言い換えれば有線システムにおける機械的コネクタ自体が異なるという事実を明確にするために、通信スタック１５２Ａ、通信スタック１５２Ｂ、及び通信スタック１５２Ｃはそれぞれ、２つのレイヤ１の物理インターフェースを含むが、レイヤ２のデータリンクレイヤは１つのみである。
【００９０】
デイジーチェーン操作では、ＰＨＹデータは通信スタック１５２Ａのデータリンクレイヤから通信スタック１５２ＡのＰＨＹインターフェースに流れ、次に、専用通信回線１５１Ａの構成要素となるケーブルを介して通信スタック１５２ＢのＰＨＹインターフェースに流れ、データリンクレイヤに上がり、デバイスＢの第２ＰＨＹインターフェースに下り、専用通信回線１５１Ｂの構成要素となるケーブルを介して通信スタック１５２ＣのＰＨＹインターフェースに流れ、データリンクレイヤに上がる。したがって、物理的シグナルは示された３つのデバイス全てを通る経路を進むが、データリンクイレイヤは、デバイスＡの通信スタック１５２ＡのみをデバイスＣの通信スタック１５２Ｃに接続し、デバイスＢは運ばれているデータを無視する。デイジーチェーンアーキテクチャに基づくネットワーク通信の例には、Ｆｉｒｅｗｉｒｅ、すなわちＩＥＥＥ１３９４、音楽デジタルインターフェース、すなわちＭＩＤＩ、及び初期のウインドウベースのパーソナルコンピュータによって使用されている旧式のトークンリングが含まれる。デイジーチェーンデバイスのメリットは、追加のデバイス、すなわちハブ、またはそれに接続する全てのネットワーク配線が不要であることである。デイジーチェーンアーキテクチャの１つのデメリットは、データが各デバイスを通過することでデバイス間の伝播遅延が増大し、特に高速リアルタイムアプリケーションにおいて矛盾したパフォーマンスを引き起こすことである。
【００９１】
バスアーキテクチャ、ハブアーキテクチャ、及びデイジーチェーンアーキテクチャの３つの例全てにおいて、ＰＨＹレイヤデータは、意図された受信者でなくとも、ネットワークに接続された全てのデバイスに送信される。デバイス自体は、パケットの識別及びフィルタリングを実行し、受信したデータのアドレスを、デバイス内またはデバイスのＩＣの１つに存在する不揮発性メモリ、マイクロメカニカルスイッチ、またはワイヤジャンパを使用して、通常は固定アドレスとして予めプログラムされた独自のアドレスを比較する。特定のデバイスが、そのアドレスと一致する宛先を含むデータパケットを認識すると応答し、そうでない場合はパケットを完全に無視する。パケットのデバイスアドレスは、使用されている通信プロトコル（ＭＩＤＩ、ＵＳＢ、ＩＥＥＥ１３９４、Ｔｈｕｎｄｅｒｂｏｌｔなど）に準拠していなければならない。パケットがデータリンクレイヤとしてインターネットプロトコルを使用する場合、このアドレスには、本開示で後述する「メディアアクセス」、すなわちＭＡＣアドレスと呼ばれる特定の名前が与えられる。
【００９２】
示されたバスアーキテクチャ、ハブアーキテクチャ、及びデイジーチェーンアーキテクチャの１つの重要な特性は、ＰＨＹレイヤ上で放送されているデータ、すなわち電気シグナル、ＲＦシグナル、または光シグナルが全ての接続されたデバイスに送信されることである。この方法は、パケットを必要とせず、意図されていないデバイスに対しパケットを不必要に送信することにより、貴重なネットワーク帯域幅を消費する。イーサネット（登録商標）がローカルエリアネットワークすなわちＬＡＮ接続の基準として登場したため、この無駄なネットワーク帯域幅が特定され、ネットワーク「スイッチ」の導入によって最終的に排除された。
【００９３】
図８Ａの３デバイスの例に示されるようなＬＡＮ実装では、デバイス１４５Ａ、デバイス１４５Ｂ、及びデバイス１４５Ｃの間に含まれる通信インターフェース１４６Ａ、通信インターフェース１４６Ｂ、及び通信インターフェース１４６Ｃの通信ＰＨＹレイヤの間に、ＬＡＮスイッチ１５９が挿入される。先に図７Ａに示したバス接続とは対照的に、デバイスを相互接続する単一の共有データバス１４４を有する場合、ＬＡＮスイッチ１５９の追加により、バスは３つの別々のポイントツーポイント接続に分割される。すなわち、デバイス１４５ＡとＬＡＮスイッチ１５９との間のＰＨＹ接続１４８Ａ、デバイス１４５ＢとＬＡＮスイッチ１５９との間のＰＨＹ接続１４８Ｂ、デバイス１４５ＣとＬＡＮスイッチ１５９との間のＰＨＹ接続１４８Ｃなどである。図示のように、各物理接続は、２つのデバイスのみの間にポイントツーポイントで発生し、シリアルデータストリームを、隣接する接続されたデバイスに渡す役割を担う中間デバイスを有する。
【００９４】
この原理は、任意の数のデバイスに拡張することができ、ＬＡＮスイッチ１５９の動作は、単方向または双方向、及び半二重または全二重であってもよい。操作時には、ネットワークに接続されたデバイス１４５Ａ及びデバイス１４５Ｂの、通信インターフェース１４６Ａと通信インターフェース１４６Ｂとの間にのみデータリンク１４７を設けるために、ＬＡＮスイッチ１５９は、２つの通信デバイスであるデバイス１４５Ａ及びデバイス１４５Ｂの間にのみ、物理レイヤ接続を確立する。このように、ＰＨＹレイヤ接続は、２つの通信デバイス、すなわちデバイス１４５Ａとデバイス１４５Ｂとの間でのみ確立され、他のデバイス、例えばデバイス１４５Ｃはネットワーク接続されない。ＬＡＮスイッチ１５９を使用することの１つの利点は、デバイス１４５Ｃが、ネットワーク内で発生している他の通信のチャタリングを聞くことに悩まされず、デバイス１４５Ｃの通信インターフェース１４６Ｃは、要求されるまでフリーのままであることである。
【００９５】
ＬＡＮスイッチ１５９を使用することの第２の利点は、ＬＡＮスイッチ１５９に入力されるシグナルは、隣接し、ネットワーク接続されたデバイスに送られる前にブーストされ、より多くのデバイスがＬＡＮスイッチ１５９に接続することによるローディング、シグナル劣化、または速度影響が生じないようにすることである。したがって、ＬＡＮスイッチ１５９からのファンアウトは本質的に無制限であり、ＬＡＮスイッチ内の接続数によってのみ決定される。
【００９６】
図８Ｂには、物理回線１６０Ａ〜物理回線１６０Ｆを含むＬＡＮスイッチ１５９の概略図が示されている。２つの回線の全ての組み合わせにおける交点にＬＡＮクロスポイント１６１が存在し、双方向スイッチ及び増幅器を示している。例えば、クロスポイントＡＢはＢの物理回線１６０ＢをＡの物理回線１６０Ａに相互接続させ、クロスポイントＢＥはＢの物理回線１６０ＢをＥ回線１６０Ｅに相互接続させ、クロスポイントＣＥはＣの物理回線１６０ＣをＥ回線１６０Ｅに相互接続させるなどである。通常の通信では、各回線は最大でも１つのみの他の回線に接続され、相互接続ペアを作る。デバイスが見つかると、ＬＡＮスイッチを使用してレイヤ２ＭＡＣアドレス（図示せず）のルーティングテーブルが維持され、どのデバイスがどのコネクタに接続されているかを記録する。この表は、ＭＡＣアドレスをＬＡＮスイッチヘの物理接続に本質的にマッピングし、レイヤ２のデータリンクレイヤと、レイヤ１のＰＨＹレイヤとの間の正確な関係を証明する。表は動的であるため、あるデバイスが接続されておらず、別のデバイスが接続されている場合、ＭＡＣアドレスルーティングテーブルは、ＬＡＮスイッチ１５９で自動的に更新される。
【００９７】
ネットワーク内の全てのデバイスにデータの放送が送信される特別な場合、例えば、あるデバイスが別のデバイスを探している可能性があるが、ＬＡＮスイッチ上の、そのデバイスの位置を特定していない起動時には、データを放送する１つの送信元、及びそのデータを受信する残りのデバイスと同時に、全てのデバイスを相互接続することができる。アンプ内蔵であるため、放送モードであっても、全てのシグナルがバッファされ、速度またはシグナルの完全性は低下しない。
【００９８】
ＬＡＮスイッチ１５９を使用する第３の、及び最も重要な利点は、ネットワーク全体の帯域幅を劇的に増加させることであり、図８Ｃに示すように、複数の会話が、デバイスのペア間で同時にかつ独立して発生することを可能にする。この例では、デバイス１４５Ａ、デバイス１４５Ｂ、デバイス１４５Ｃ、及びデバイス１４５Ｆは、それぞれ物理回線１６０Ａ、物理回線１６０Ｂ、物理回線１６０Ｃ、及び物理回線１６０ＦでＬＡＮスイッチ１５９に接続されている。データリンクレイヤ２を通じ、デバイス１４５Ａ及びデバイス１４５Ｂは、ペアリング１６４を介して専用通信チャネルＡＢを形成し、同時にデバイス１４５Ｃ及びデバイス１４５Ｆは、ペアリング１６５を介して専用通信チャネルＣＦを形成する。デバイス１４５Ａからデバイス１４５Ｂへの通信では、データは、物理回線１６０Ａに沿って送られ、「オン」ＬＡＮクロスポイント１６２を介し、物理回線１６０Ｂを通ってデバイス１４５Ｂに送られる。同時に、デバイス１４５Ｃからデバイス１４５Ｆへの通信において、データは、物理回線１６０Ｃに沿って送られ、ＬＡＮクロスポイント１６３を介し、物理回線１６０Ｆを通ってデバイス１４５Ｆに送られる。デバイスが他の回線に接続されていても、他のＬＡＮクロスポイント接続は全てオフのままである。
【００９９】
このようにして、２つの独立した通信チャネル、すなわち「会話」が、共通データバスを共有することを待つことなく、ＡＢのペアリング１６４、及びＣＦのペアリング１６５において、全データレートで生じ得る。したがって、図示の例では、ＬＡＮスイッチ１５９及びＬＡＮアーキテクチャを使用することによって、バス、ハブ、またはデイジーチェーンネットワークアーキテクチャを使用する場合と比較すると、４つのデバイスを接続するネットワークの帯域幅が２倍になる。「ｎ」個の回線及び接続を有するＬＡＮスイッチでは、一度に１つの会話をサポート可能であるのみのシリアル接続と比較すると、同時会話の最大数は「ｎ／２」である。
【０１００】
２つのデバイス、例えば、ＡＢのペアリング１６４の、デバイス１４５Ａ及びデバイス１４５Ｂが接続されている場合、１つのデバイスのみが一度に「話す」ことが可能であり、一方で他方は聞いているため、単一回線を使用する通信は半二重のみである。全二重通信が必要な場合には、ＬＡＮスイッチ１５９内の回線及びクロスポイント接続の数を２倍にしなければならず、デバイス１４５Ａの出力口はデバイス１４５Ｂの入力口に接続され、デバイス１４５Ｂの出力口はデバイス１４５Ａの入力口に接続されている。したがって、デバイスＡからデバイスＢへの全二重通信は、同時に２つのペアリングを伴う。つまり、デバイスＡがデバイスＢにデータを送るＡＢペアリングと、デバイスＢがデバイスＡにデータを送るＢＡペアリングとであり、それぞれのペアリングは異なる回線上に存在し、特有のクロスポイント接続を介している。
【０１０１】
図８Ｃは、物理回線１６０Ａ〜物理回線１６０Ｆが電気コネクタのワイヤ及びプラグを表すことを意味し得るが、回線が無線通信、または光通信を表す場合であっても、図の内容は同様に有効である。無線通信では、各回線は、例えば、１つの回線のデータを運ぶために使用される特有の周波数帯域、すなわち「サブチャネル」を表し、２０の無線周波数、帯域、またはサブチャネルを使用して、最大１０の異なる会話を同時に、かつ独立して運ぶことができる。各回線の光通信においては、異なる光の波長または特有の変調方式を表すことができる。無線または光インターフェースは、電磁通信を、通信するデバイス内の電気シグナルに変換する。このようにして、ＬＡＮスイッチを使用して、任意のネットワーク構成された通信媒体の帯域幅を向上することができる。
【０１０２】
パケット交換ネットワークにおいて、トラヒック及びデータの転送を指示する多数のプロトコル及び基準が明らかになったが、より十分な説明を保証する、いくつかの広範囲にわたる基準が明らかとなった。既存の古びた基準から広く採用されているか、発展しており、これらの通信プロトコル及び関連するハードウェアについては、以下に記述する。
・電気通信ネットワーク用イーサネット（登録商標）（ＩＥＥＥ８０２．３）
・近距離無線通信ネットワーク用ＷｉＦｉ（８０２．１１）
・遠距離無線通信ネットワーク用４Ｇ／ＬＴＥ
・ケーブル及び光ファイバベースの通信ネットワーク用ＤＯＣＳＩＳ３
【０１０３】
［イーサネット（登録商標）（ＩＥＥＥ８０２．３）］
近代的なネットワークでＬＡＮを形成するために電気的接続が使用される場合、ほとんどの専用ネットワークは、イーサネット（登録商標）として知られる世界的に受け入れられた標準規格ＩＥＥＥ８０２．３に置き換えられている。イーサネット（登録商標）の仕様では、電気的接続、電圧、データレート、通信速度、及び物理的なコネクタプラグとコネクタソケットとが定義されるだけでなく、データリンクレイヤ２によって使用されるデータパケットも規定される。したがって、イーサネット（登録商標）は、データリンクレイヤ２及びＰＨＹレイヤ１の仕様の両方の標準規格である。レイヤ１イーサネット（登録商標）パケット１８８、またはレイヤ２イーサネット（登録商標）パケット１８９のいずれかとしてのイーサネット（登録商標）データパケットのコンテンツの仕様は、増加時間８６の方向に左から右に表される、図９の直列データとして図示されている。関連した表１９０は、イーサネット（登録商標）パケット内の各ブロックの機能、またはサブパケットの機能を説明している。
【０１０４】
図示のように、レイヤ２イーサネット（登録商標）パケット１８９は、宛先ＭＡＣアドレス１８２、送信元ＭＡＣアドレス１８３、オプションのＶＬＡＮ１８４ブロック、イーサタイプ１８５のブロック、フレームチェック１８６、及びペイロード１８７を含み、イーサネット（登録商標）パケットによって運ばれる実際のデータを表す。速度仕様を保証するため、レイヤ２イーサネット（登録商標）パケットのサイズは、４２Ｂ〜１，５００Ｂのペイロードを運ぶために、イーサネット（登録商標）仕様にしたがって６４Ｂ〜１，５１８Ｂの範囲であってもよい。オプションのＶＬＡＮ１８４ブロックがパケットに含まれている場合、パケット長は４Ｂ増加し、レイヤ２イーサネット（登録商標）の最大長は１，５２２Ｂになる。
【０１０５】
レイヤ１イーサネット（登録商標）パケット１８８は、レイヤ２イーサネット（登録商標）パケット１８９のコンテンツ全体を、同期のためのＳＦＤ１８１、及びデータフレームヘッダーとしてのプリアンブル１８０を含むヘッダーと組み合わせる。レイヤ１イーサネット（登録商標）パケット１８８の最大長は、レイヤ２イーサネット（登録商標）パケット１８９より８Ｂ長く、ＶＬＡＮオプションなしの最小サイズ７２Ｂから最大長１，５２６Ｂまで、またはＶＬＡＮ１８４ブロックを含む１，５３０Ｂまでの範囲である。
【０１０６】
操作における、レイヤ１データフレームヘッダーサブフィールドとしてのプリアンブル１８０の目的は、最初にデバイスがデータを送信しようとしていることを識別するハードウェアを助けることである。ヘッダーであるＳＦＤ１８１は、受信パケットデータをタイミングクロックに同期させるために使用され、データを確実に読み取ることができるようにする。これら２つのレイヤ１イーサネット（登録商標）パケット１８８のブロックが受信された後、レイヤ２イーサネット（登録商標）パケット１８９は、宛先ＭＡＣアドレス１８２及び送信元ＭＡＣアドレス１８３で始まり、どのＬＡＮ接続デバイスにデータが送信され、どこから受信しているのか説明する。ＬＡＮスイッチは情報処理機能を持ち、これらのアドレスにしたがってデータをルーティングすることが可能である。ＶＬＡＮ１８４ブロックはオプションであり、もし存在する場合には、ＩＥＥＥ仕様８０２．１Ｑにしたがってパケットをサブネットワーク、または仮想ローカルエリアネットワークに分割することにより、パケットのフィルタリングを容易にする。イーサタイプ１８５は、データタイプ、またはデータ形式によって決まるデータの長さのいずれかのデータ形式を指定する。イーサタイプ１８５及びＶＬＡＮ１８４は、オプションのＶＬＡＮ１８４データが挿入されているか否かについての混乱を防ぐ形式にしたがう。
【０１０７】
このヘッダーデータの全てが受信された後、ペイロード１８７は、イーサネット（登録商標）パケットによって送信される実際のデータを含む。このデータは、インターネットプロトコルに準拠していてもよく、ＯＳＩモデルに記載されているようにレイヤ３からレイヤ７のコンテンツをカプセル化したデータを含んでいてもよい。あるいは、カスタム設計されたシステムでは、ペイロード１８７は、特定のハードウェアまたは製造業者が所有するプロトコルを含んでいてもよい。イーサネット（登録商標）規格で許可されている１，５００Ｂの最大パケットサイズで全ての必要なデータを送信できない場合、ペイロードを分割して、または代替プロトコル、例えば標準のイーサネット（登録商標）パケットの６倍である９，０００Ｂのデータを運ぶことのできるジャンボフレーム、を使用して送信することができる。フレームチェック１８６は、レイヤ２イーサネット（登録商標）パケット１８９に対する基本的なエラーチェック関連情報を有するが、プリアンブル１８０またはＳＦＤ１８１のためのレイヤ１データに対しては有していない。フレームチェック１８６は、３２ビットの巡回冗長検査アルゴリズムを利用し、レイヤ２イーサネット（登録商標）パケット１８９の生データにおける意図しない変化を検出することができる。
【０１０８】
イーサネット（登録商標）の物理的規格には電気ケーブル及び光ファイバの両方が含まれているが、現在では電気ケーブルが最も一般的である。データ速度は、１０Ｍｂｐｓから１００Ｍｂｐｓまで、最近では「ギガビットイーサネット（登録商標）」と呼ばれる１Ｇｂｐｓから１００Ｇｂｐｓまで進化している。イーサネット（登録商標）ケーブルは、容易に認識されるＲＪ−４５コネクタを使用して、ＬＡＮスイッチと、サーバ、デスクトップ、ノートブック、セットトップボックス、及びモデムなどのデバイスとの間の接続を保護する。いくつかの例では、イーサネット（登録商標）はデバイスに電力を供給するために使用され、「パワー・オーバー・イーサネット（登録商標）」すなわちＰＯＥとして知られている。
【０１０９】
［ＷｉＦｉ（８０２．１１）］
多くの場合、イーサネット（登録商標）はモバイルデバイスとのワイヤレスネットワーク接続を確立するために採用され、短距離無線リンクを使用する。時間が経つにつれて、独自のワイヤレスリンクは、商業的にＷｉＦｉと呼ばれるＩＥＥＥ８０２．１１標準規格によって定義された、標準化された短距離通信プロトコルに置き換えられている。ルータ及びスイッチの機能をラジオレシーバ及びトランスミッタと合わせることで、ＷｉＦｉルータは、家庭、オフィス、企業、カフェ、及び公共の場所で今では当たり前になっている。
【０１１０】
図１０に示された無線リンクは、２つの相互接続されたネットワークの組み合わせを示し、一方は「イーサネット（登録商標）ＭＡＣアドレス」２００Ａを含み、他方は無線リンク、すなわち「無線アクセスポイント」２００Ｂを含む。インターフェース回路、及び関連するファームウェアブロックは、イーサネット（登録商標）プロトコルと無線プロトコル、例えばＷｉＦｉとの間のレイヤ２データリンク２０５Ａ及びレイヤ２データリンク２０５Ｂを容易にするだけでなく、レイヤ１ＰＨＹインターフェース、すなわち電気ネットワークと無線ネットワークとの間の物理ブリッジ２０４Ａ及び物理ブリッジ２０４Ｂを提供する。操作中、イーサネット（登録商標）２０１からのデータは通信スタック２０３Ａに入り、物理的シグナルはレイヤ１ＰＨＹ接続の物理ブリッジ２０４Ａを介してインターフェース２０２に接続し、レイヤ２データリンク情報はレイヤ２データリンク２０５Ａを通過する。
【０１１１】
処理後、データはインターフェース２０２から無線アクセスポイント２００Ｂの通信スタック２０３Ｂに渡され、物理的シグナルはレイヤ１ＰＨＹ接続の物理ブリッジ２０４Ｂを介して接続され、レイヤ２データリンク情報はレイヤ２データリンク２０５Ｂを通過する。この情報は、その後、接続２０４を通って無線トランシーバに送られ、無線アンテナ２０７の出力として無線機２０６Ａ〜無線機２０６Ｎを介し、いくつかの「ｎ」無線チャネルの任意の１つで放送される。無線シグナルを受信する場合、データ経路は同一であるが、前述の説明と反対方向である。
【０１１２】
インターフェース２０２はまた、異なるイーサネット（登録商標）接続デバイスで同時に発生し得る、異なる無線チャネル上での同時通信をサポートするＬＡＮスイッチとしても機能することができ、この場合、２つ以上のイーサネット（登録商標）ケーブル２０１が無線リンクデバイスに差し込まれる。あるいは、単一のイーサネット（登録商標）接続を介して上流デバイスに複数の無線会話を順次送ることができ、レイヤ３及びレイヤ４を使用して様々な受信者へのパケットのルーティングを管理する。
【０１１３】
近距離無線通信のための１つの標準化されたデバイス及びプロトコルは、ＩＥＥＥ８０２．１１仕様に従って操作されるワイヤレスローカルエリアネットワーク、すなわちＷＬＡＮデバイスである。ＷｉＦｉとして商業的に知られているこのようなデバイスは、ワイヤレスインターネットアクセス、及びワイヤレス配信システムすなわちＷＤＳ、すなわち、配線が不便、困難、または配備に費用がかかる有線接続に代わる無線接続に使用される。マスタＩＥＥＥ８０２．１１仕様とは別に、８０２．１１ａ、８０２．１１ｎ、８０２．１１ａｃなどのサブバージョンは、キャリア周波数、チャネル、変調方式、データレート、及びＲＦ通信範囲を指定するために使用される。このアプリケーションの時点でＩＥＥＥによって承認された８０２．１１規格のサブバージョンの概要を次の表に示す。
【０１１４】
【表２】
2020195141.tif 000004
【０１１５】
示されているように、ＷｉＦｉは主に２．４ＧＨｚ及び５ＧＨｚで操作し、遠距離ＷＤＳルーティングのために設計された３．７ＧＨｚは米国のみで採用されている。６０ＧＨｚキャリアは、新たに採用され、ギガビットイーサネット（登録商標）、及びＤＯＣＳＩＳ  ３を使用したファイバ／ケーブルなどの他の高ビットレートネットワークへ接続するギガビットレート用に設計されている。カフェ、及び公共の場において一般的な複数のユーザの並列動作をサポートするために、８０２．１１ｎ及び８０２．１１ｇは並行した５チャネル及び８チャネルのＭＩＭＯ（Multiple-Input Multiple-Output）接続を提供する。高帯域幅を達成するために、ＷｉＦｉは、複数の近接した直交サブキャリアチャネル上でデジタルデータをエンコードする方法として、主にＯＦＤＭ、すなわち直交周波数多重変調を使用する。
【０１１６】
操作時に、ＯＦＤＭは単一のシグナルをサブキャリアに分割し、１つの超高速シグナルを多数の低速シグナルに分割する。この文脈において、直交性という用語は、隣接するサブキャリアチャネルが重ならないことを意味し、どのチャネルデータが意図されるかについての混乱を避ける。その後、多数のサブキャリアが受信機で収集され、再結合されて１つの高速伝送を再構成する。サブキャリアチャネル上のデータ速度は単一の高速チャネルより低いため、歪み及び干渉に対するシグナル感受性が低減され、この方法は、ノイズの多い周囲環境下であっても、または長距離にわたっていても信頼性の高いＲＦ通信に適している。特別な３．７ＧＨｚ帯を除き、ＷｉＦｉは、より高い放送電力で屋内では７０ｍ、屋外では２５０ｍに制限されている。ＷｉＦｉは、セルラーハンドオフ能力が不足しているため、長距離移動通信における使用は問題であり、以下に説明するＬＴＥ技術に委ねられている。
【０１１７】
ＯＦＤＭ変調を使用するＷｉＦｉでは、伝送されたデータはデータタイプの一種である「シンボル」に編成され、多くのデジタル状態をより少ない数のシンボルへ、自然に圧縮する。その後、シンボルは低い「シンボルレート」で伝送され、キャリア輸送問題に関連するデータ損失から免除される。このアプローチは、低いエラー率、改善されたＱｏＳ、及びシグナル強度変動、ＲＦのゴースト発生、及び周囲雑音またはＥＭＩに対する感度の低下により、より高いビットレートを保証する。シンボルは、各特定のシンボルに相関する周波数、トーン、または特定のパルスパターンなどの任意の変調であってもよく、固定された持続時間内のシンボルのシーケンスは、シンボルレートより高いビットレートでデータストリームに変換され得る。この方法はセマフォフラグに類似しており、このフラグは、セット期間中、例えば１秒間に１６個の固定位置のうち１つに移動することができる。「ボー」レートとしても知られているシンボルレートは、１秒当たり１シンボル、または１ボーであり、１ボーという用語は、「１秒あたりに伝送媒体に行われる別個のシンボル変更の数」として定義される。フラグは、１６の異なる値を有することができ、バイナリ形式では、２４＝１６の状態なので、８の状態は４ビットに相当する。次に、１秒あたりのシンボルレート、または１ボーは、シンボルレートの４倍の４ｂｐｓのデータビットレートに等しい。同様に、シンボルを表すために、１６の異なるトーンを使用すると、毎秒１０Ｍシンボルのシンボルレートは、４０Ｍｂｐｓのデジタルデータビットレートをもたらすことができる。
【０１１８】
しかし、使用されるシンボルの数は、ビットレートだけでなくエラーレート及び通信ＱｏＳにも影響する。例えば、あまりにも多くのシンボルが使用される場合、無線のデジタルシグナルプロセッサすなわちＤＳＰがノイズの多い環境でシンボルを正確に識別することは困難であり、データエラーレートは上昇し、パケットの動的ＣＲＣチェックにおいて有効なチェックサムを維持するためにデータの伝送を必要とする。任意のシンボルレートでより少ないシンボルを使用すると、別のシンボルレートを識別しやすくなるが、デジタルビットレート及び通信帯域幅が低下する。類推によると、セマフォフラグが１６の代わりに４つの位置のうちの１つにしかできない場合、暴風の中で見ることが容易になり、通信エラーの機会、すなわち間違って読むことが大幅に減少する、しかし、４つのフラグ位置のうち１つのみを使用すると、ボーレートは依然として１秒あたり１シンボルであるが、２２＝４であるためビットデータレートはわずか２ｂｐｓに低下する。したがって、ビットレートとエラーレートとの間には、シンボルレートを動的に調整することによってＷｉＦｉが変調できる本質的なトレードオフが存在する。ＬＴＥ無線通信においても同様のトレードオフが行われる。
【０１１９】
８０２．１１バージョンのａ、ｇ、及びｎでは、新しいシンボルは、各サブキャリアチャネルに対して４μ秒ごとに、または２５０，０００ボーで伝送され得る。ＷｉＦｉは６４のサブキャリアチャネルを使用するので、理論的には、最大シンボルレートはフルチャネル容量で１６Ｍボーでなければならない。現代の無線通信では、シンボルは複数のレベルでビットに変換され、レベルは、以下の表に要約されている様々な位相変調方式を使用してＲＦ通信条件で動的に変化する。
【０１２０】
【表３】
2020195141.tif 000005
【０１２１】
シンボルレートとビットレートとの間の関係は、以下の式によって定義される。
（ビットデータレート）／（シンボルレート）＝ビット毎シグナル
ビットデータレートはビット毎秒、すなわちｂｐｓで測定され、シンボルレートはシンボル毎秒、すなわち「ボー」で測定される。示されている位相変調方式のうち、バイナリ位相シフトキーイング、すなわちＢＰＳＫは、遠距離及び雑音の覆い無線環境で最も効果的であるが、低いデータレートに限定されているため、１シンボルあたり１ビットの純粋なバイナリメソッドを使用する。良好な無線状態では、データレートはシンボルレート、すなわち１シンボルあたりのビット数＞１となり、無線のビットレートは、無線条件、ＥＭＩがない状態、トランシーバ間の距離の短縮、及び無線の放送電力に応じて、ＢＰＳＫレートの２倍〜６倍に増加させることができる。例えば、良好な状態または中距離無線リンクの場合、「直交位相シフトキーイング」すなわちＱＰＳＫメソッドは、１シンボルあたり２ビットのＢＰＳＫのデータレートの２倍を提供する。短距離での動作に限定された非常に良好な状態では、１６−ＱＡＭと呼ばれる「１６レベル直交振幅変調」を使用して、ＷｉＦｉ通信で４８Ｍｂｐｓを提供するシンボルレートの４倍にビットレートを上げることができる。優れた雑音のない無線状況下では、データレートは、６４−ＱＡＭすなわち６４レベル直交振幅変調を使用して１シンボルあたり６ビットに増加することができる。通信における位相変調方式は当業者には周知であり、本開示でさらに説明はしない。
【０１２２】
８０２．１１ａ及び８０２．１１ｇの場合、使用される別の変調方式は、直接拡散方式、すなわちＤＳＳＳであり、「拡散」という用語は、ＤＳＳＳにおいて、キャリアシグナルが無線デバイスの送信周波数の全帯域幅、すなわちスペクトルにわたって生じるという事実を指す。ＤＳＳＳでは、変調回路は、１つの情報ビットより短い擬似雑音符号シンボルの連続的な列を利用して、送信より先に擬似ランダムに正弦波を位相シフトし、受信シグナルから同じノイズを減じる。フィルタリングの結果、たとえ信号対雑音比が１未満であっても、無相関のノイズが完全に除去され、無線ノイズ及びＥＭＩが存在する場合でも通信が確実に行われることがある。スペクトル拡散は全無線帯域を利用するため、このような方法は、現在ではＯＤＦＭより優先されず、最新のＷｉＦｉ実装には採用されない。
【０１２３】
無線帯域及び変調方式に関するＰＨＹレイヤの詳細を規定する以外に、８０２．１１規格では、ＷｉＦｉ無線と通信する際に必要なシリアルデータパケットフォーマットも定義されている。イーサネット（登録商標）パケットと比較して、ＷｉＦｉパケットヘッダーは、理由の１つとして、１つまたは２つのネットワークアドレスと同様に、無線受信及び送信ステーションアドレスを指定する必要があるため、より複雑である。ＷｉＦｉパケットのデータ構造は図１１に示されており、時間の増加方向８６の左から右に示されるシリアルデータとして図示されている。関連付けられた表２４２は、ＷｉＦｉパケット内の各ブロックまたはサブパケットの機能を説明する。イーサネット（登録商標）パケットと同様に、データフレームは、レイヤ１ヘッダーを有するレイヤ１データフレームにカプセル化されたレイヤ２データリンク情報を含む。
【０１２４】
レイヤ１ヘッダーは、１０Ｂ長のプリアンブル２３０、２Ｂ長のＳＦＤ２３１、及び２Ｂ長のＰＬＣＰ２３２を含む。ＰＬＣＰはレイヤ１及びレイヤ２の両方のデータを含んでいると見なされるが、本明細書ではレイヤ１データと見なす。全体として、レイヤ１ヘッダーは１４Ｂの長さであると見なすことができ、残りのＷｉＦｉパケットは、空のペイロードの場合の３４Ｂから最大ペイロードの場合の２，３４６Ｂまで、長さの変化するレイヤ２データを含む。２，３１２Ｂの最大ペイロード長では、ＷｉＦｉパケットはイーサネット（登録商標）パケットより長く、標準形式ではわずか１，５００Ｂの長さのペイロードに制限されている。図示のように、レイヤ２のＷｉＦｉパケットの構成要素は、フレーム制御２３３と、持続時間２３４と、各ブロックにそれぞれ示される無線基地局ＭＡＣアドレスであるアドレス１  ２３５及びアドレス２  ２３６と、ブロックとして示される条件付きＭＡＣアドレスであるアドレス３  ２３７及びオプションのブロックとして示される条件付きＭＡＣアドレスであるアドレス４  ２３９と、シーケンス２３８と、フレームチェック２４０とを含む。
【０１２５】
操作において、レイヤ１データフレームヘッダーサブフィールドとしてのプリアンブル２３０の目的は、デバイスがデータを送信しようとしていることを最初に識別するハードウェアを支援することである。別のレイヤ１アーチファクトであるスタートフレームヘッダーＳＦＤ２３１は、着信パケットデータをタイミングクロックに同期させるために使用され、データを確実に読み取ることができるようにする。これら２つのブロックの後に、物理レイヤ収束手続き、すなわちＰＬＣＰ２３２が、パケットの長さ、データレート、及びヘッダーのデータチェックに関する情報を提供する。
【０１２６】
フレーム制御２３３において、第１の純粋なデータリンクレイヤ２データが、ＷｉＦｉパケットのバージョンタイプを定義する場合、すなわち、管理関連情報、制御コマンド、データ、または残りの特徴を含む場合、無線がアクセスポイントまたはワイヤレス配信システムとして動作するか否かを判断するために使用される「Ｔｏ  ＤＳ／Ｆｒｏｍ  ＤＳ」制御ビットを含む。「ｄｕｒａｔｉｏｎ  ＆  ＩＤ」としても知られる持続時間２３４は、ＮＡＶ（Network Allocation Vector Duration）持続時間、つまり、電力節約モードを除き、別のステーションが媒体と競合する前に、ＲＦ媒体がどれだけビジーであるかを定義し、アクティビティをチェックする際にビーコンを認識するために使用される「ステーションＩＤ」を識別する情報を含む。持続時間情報に続いて、アドレス１  ２３５、及びアドレス２  ２３６のブロックは、本質的に無線トランシーバのＭＡＣアドレスである基地局アドレスを定義する。
【０１２７】
具体的には、アドレス１  ２３５のブロックはＢＢＳ受信局アドレスを含み、アドレス２  ２３６のブロックはＢＳＳ送信局アドレスを含む。無線のアドレスがアドレス１及びアドレス２にロードされる２つの無線の通信では、フレーム制御２３３で定義される「Ｔｏ  ＤＳ／Ｆｒｏｍ  ＤＳ」設定に依存する。アドレス３  ２３７のブロックは、無線を物理ネットワークにリンクさせるために使用される。例えば、イーサネット（登録商標）を使用して、放送されているデータがどこから来ているのか、または受信しているデータがどこに向かうのかを本質的に記述する。そのため、アドレス３に存在するアドレスは、ＷｉＦｉパケットで定義された「Ｔｏ  ＤＳ／Ｆｒｏｍ  ＤＳ」設定にも依存する。イーサネット（登録商標）接続との相互運用性を保証するために、ＷｉＦｉアドレスは６Ｂ長であり、イーサネット（登録商標）ＬＡＮで使用されるＭＡＣアドレスと同じである。
【０１２８】
データの方向を定義し、順序の乱れた、すなわち無線位相遅延の影響を受けたパケットを再順序付けできるようにするために、シーケンス２３８のブロックは、パケットフレームを定義するシーケンス及びフラグメントナンバーを含む。ＷｉＦｉパケットが、ＷＤＳすなわちワイヤレス配信システムパケットとして識別されない限り、オプションであるアドレス４  ２３９は、ＷｉＦｉパケットから除外される。アドレス及びシーケンス制御ブロックの後、ペイロード２４１は、ＯＳＩレイヤ３〜レイヤ７データを含むＷｉＦｉパケットによって配信される実際のコンテンツを含む。その後、３２ビット（３２ｂ）巡回冗長検査アルゴリズムを利用するフレームチェック２４０が使用され、レイヤ２イーサネット（登録商標）パケットの生データにおける意図しない変化を検出する。
【０１２９】
説明したように、ＷｉＦｉ無線機が「アクセスポイント」として使用される場合、例えば、インターネットへのモバイルデバイスの無線接続を提供する場合、送信無線機、受信無線機、及びイーサネット（登録商標）接続の３つのアドレスのみが必要とされる。アドレスの順序は、「Ｔｏ  ＤＳ／Ｆｒｏｍ  ＤＳ」設定により定義されたデータフローの方向に依存する。ＤＳという用語は、無線が接続されている配電システム、有線ネットワーク、またはイーサネット（登録商標）接続の略語である。ＷｉＦｉアクセスポイントの場合のＷｉＦｉパケット内のアドレスの順序が図１２Ａに示されており、上図は、この例ではノートブック２６０であるモバイル無線機がＷｉＦｉアクセスポイトにデータをワイヤレスで送信し、イーサネット（登録商標）２６５を介して配信システムにデータを送信する場合を表し、下図は、配信システムからのデータがイーサネット（登録商標）を介してＷｉＦｉアクセスポイント２６１にルーティングされ、その後ノートブック２６０にワイヤレスで送信される場合を表す。
【０１３０】
再び上図を参照すると、動作データはアンテナ２６２Ａから送信され、ＷｉＦｉアクセスポイント２６１の基地局システム、すなわちＢＳＳのアンテナ２６２Ｂによって受信されたＲＦシグナル２６４を使用してノートブック２６０内のＷｉＦｉ無線機から送信され、イーサネット（登録商標）２６５を介してパケットを配信システムに順番に送信する。この場合、シーケンス２３８は、「Ｔｏ  ＤＳ」ビットがバイナリ１に設定され、「Ｆｒｏｍ  ＤＳ」ビットがバイナリ０にリセットされる、表２６３に示された「Ｔｏ  ＤＳ／Ｆｒｏｍ  ＤＳ」ビットを含む。このような場合、無線宛先ＭＡＣアドレスであるアドレス１  ２３５はＷｉＦｉ  ＢＳＳ受信機のアドレスを含み、無線送信元ＭＡＣアドレスであるアドレス２  ２３６はノートブックの送信無線アドレスを含み、アドレス３  ２３７はイーサネット（登録商標）２６５を使用する任意の配信システムに接続されたデバイスの宛先ＭＡＣアドレスを含む。
【０１３１】
データフローが反対方向である下図を参照すると、無線の送信元アドレス及び宛先ＭＡＣアドレスが入れ替えられ、インターネットアドレスがＭＡＣ宛先アドレスからＭＡＣ送信元アドレスに変化する。この場合、シーケンス２３８は、「Ｔｏ  ＤＳ」ビットがバイナリ０にリセットされ、「Ｆｒｏｍ  ＤＳ」ビットがバイナリ１に設定される表２６３に示された「Ｔｏ  ＤＳ／Ｆｒｏｍ  ＤＳ」ビットを含み、アドレス１  ２３５はノートブックの受信無線アドレスのアドレスを含み、アドレス２  ２３６はＷｉＦｉ  ＢＳＳ送信機アドレスを含み、アドレス３  ２３７はイーサネット（登録商標）２６５を使用する任意の接続デバイスの送信元ＭＡＣアドレスを含む。操作中、データパケットは、ネットワーク接続されたデバイスからイーサネット（登録商標）２６５を介して、ＷｉＦｉアクセスポイント２６１の基地局システムＢＳＳに、配信システムを越えて送信され、アンテナ２６２Ｂから送信されたＲＦシグナル２６４は順番に放送され、ノートブック２６０のＷｉＦｉ無線機内のアンテナ２６２Ａによって受信される。
【０１３２】
ＷｉＦｉ仕様は、図１２Ｂに示すように、ワイヤレス配信システム、すなわちＷＤＳを実装する目的でのＷｉＦｉ無線の使用も提供する。原則として、ＷＤＳは有線ネットワーク、すなわちネットワークケーブルのＲＦバージョンをワイヤレスで実現したものである。しかし、ＷＤＳを実装するためには、追加アドレスであるアドレス４  ２３９がパケットルーティングに必要とされる。簡略化すると、ＷｉＦｉワイヤレス配信システム上のパケットルーティングは、４つのＭＡＣアドレスを順番に使用する必要があり、（１）ネットワークＭＡＣ送信元アドレスからの受信パケットは、イーサネット（登録商標）を介して（２）送信無線送信元ＭＡＣアドレスに接続され、（３）受信無線宛先ＭＡＣアドレスに順番にワイヤレスで接続し、最後にイーサネット（登録商標）を介して（４）ネットワークＭＡＣ宛先アドレスに送信する。ＷＤＳモードでＷｉＦｉ無線機を操作するために、ＷｉＦｉパケットのシーケンス２３８ブロックは、表２６３に示すデータを含み、「Ｔｏ  ＤＳ」及び「Ｆｒｏｍ  ＤＳ」の両方がバイナリ１状態に設定される。
【０１３３】
パケットのデータ方向は、４つのＭＡＣアドレスの使用によって容易に決定され、ＭＡＣアドレスの２つは分配システムネットワーク用であり、２つはＷｉＦｉ無線機用である。図１２Ｂの一番上の図を参照すると、イーサネット（登録商標）２６９上Ａで受信された入力パケットは、ＷｉＦｉ  ＷＤＳ  Ａ基地局２６８Ａによって受信され、送信無線機のアンテナ２６２ＡからＲＦシグナル２６４として放送され、無線ＷｉＦｉ  ＷＤＳ  Ｂ基地局２６８Ｂのアンテナ２６２Ｂによって受信され、イーサネット（登録商標）２６９Ｂを介して宛先ＭＡＣアドレスに転送される。ルーティングを制御するために、アドレス１  ２３５のブロックは無線リンクの宛先ＭＡＣアドレス、すなわちＷｉＦｉ  ＷＤＳ  Ｂアドレスを表し、アドレス２  ２３６のブロックは無線リンクの送信元アドレス、すなわちＷｉＦｉ  ＷＤＳ  Ａアドレスを含み、アドレス３  ２３７のブロックはイーサネット（登録商標）２６９Ｂ上に転送されたイーサネット（登録商標）宛先ＭＡＣアドレスを表し、アドレス４  ２３９のブロックはイーサネット（登録商標）２６９Ａ上で受信されたイーサネット（登録商標）送信元アドレスを含む。
【０１３４】
図１２Ｂの下図に示されている、ＷｉＦｉ  ＷＤＳ  Ｂ基地局からＷｉＦｉ  ＷＤＳ  Ａ基地局に向かって反対方向に流れるデータについては、送信元アドレス及び宛先アドレスは単純に交換される。アドレス１  ２３５のブロックは無線リンクの宛先ＭＡＣアドレス、すなわちＷｉＦｉ  ＷＤＳ  Ａアドレスを表し、アドレス２  ２３６のブロックは無線リンクの送信元アドレス、すなわちＷｉＦｉ  ＷＤＳ  Ｂアドレスを含み、アドレス３  ２３７のブロックはイーサネット（登録商標）２６９Ａ上に転送されたイーサネット（登録商標）宛先アドレスを表し、アドレス４  ２３９のブロックはイーサネット（登録商標）２６９Ｂ上で受信されたイーサネット（登録商標）送信元アドレスを含む。
【０１３５】
このようにして、ＷｉＦｉパケットは、アドレス３を宛先ＭＡＣアドレスとして含み、アドレス４を送信元ＭＡＣアドレスとして含むイーサネット（登録商標）データフレームを、無線リンクがルーティングに存在しないかのように反映する。このように、ＷｉＦｉ実装無線配信システムは、パケット交換ネットワークを介してパケットをルーティングする際に、有線ネットワークのように操作する。さらに、「Ｔｏ  ＤＳ／Ｆｒｏｍ  ＤＳ」制御ビットの機能は、同じＷｉＦｉ無線機を、双方向データリンクすなわちＷＤＳとして、または双方向にネットワークアクセスポイントとして操作することを可能にする。
【０１３６】
［４Ｇ電話／ロングタームエボリューション（ＬＴＥ）］
有線電話が回路交換電話ネットワークからパケット交換通信に移行したように、ＰＯＴＳ及びＰＳＴＮの代わりにＩＳＤＮなどの独自のハードウェアベースのデジタルネットワークを最初に使用し、その後、インターネットプロトコルベースのネットワークを私的管理のコンピュータクラウド上で実行することで、ワイヤレス通信も進化している。図１３に示すように、デジタルセルラー通信の変化は、初めは「Ｇｒｏｕｐｅ  Ｓｐｅｃｉａｌ  Ｍｏｂｉｌｅ」の頭字語であるＧＳＭ（登録商標）と呼ばれる回線交換ネットワークを介して配信される音声及び単純なメッセージのサービス、すなわちＳＭＳサービス２９０から始まり、結果的に「モバイル通信のためのグローバルシステム」を意味するよう変更された。第２世代または２Ｇのワイヤレス電話と見なされ、全二重音声通信用に最適化されたＧＳＭ（登録商標）は、時分割多元接続（ＴＤＭＡ）プロトコルを使用して、初期のアナログセルラーまたは１Ｇネットワークを置き換えた。ブロック２９１に示すように、電話の次の改良は、より高い帯域幅を提供し、マルチメデイアメッセージング（ＭＭＳ）などの特徴を追加することによって、ＧＳＭ（登録商標）の能力を増強するようになった。回線交換ネットワーク技術に依然として依拠し、強化されたネットワークは、２．５Ｇという通称で反映されるように、ハーフステップの改善と見なされた。
【０１３７】
３Ｇ携帯電話への第一歩は、ワイヤレスインフラストラクチャと電話ソフトウェアの両者をパケット交換通信ネットワークに移行することにより、「汎用パケット無線サービス」、すなわちＧＰＲＳの導入とともに生じ、ブロック２９２に示すように、プッシュツートークすなわちＰＴＴを有する音声、ＳＭＳ、ＭＭＳサービス、常時インターネットサービス、ワイヤレスアプリケーションプロトコルすなわちＷＡＰなどを強化する。符号分割多元接続、すなわちＣＤＭＡに基づいて、ＧＰＲＳは通話品質を高め、ネットワーク容量を増やし、システム性能を向上させた。例えば、ＧＰＲＳによるＳＭＳメッセージは、ＧＳＭ（登録商標）のレートの少なくとも３倍のメッセージを配信した。３８４ｋｂｐｓでは、ＣＤＭＡの性能は従来のＧＳＭ（登録商標）ソリューションより４０倍高速であった。
【０１３８】
ＣＤＭＡへの移行は、世界中のモバイル通信インフラストラクチャを新しいトランシーバ及びアンテナに置き換えて再インストールすることを含む、重要なイベントであった。ＷＣＤＭＡ（登録商標）が一度展開されると、ＵＭＴＳ、すなわち「ユニバーサル移動通信システム」の導入により、３Ｇ電話の第２の重要なステップを可能にした。第３世代パートナーシッププロジェクト、すなわち３ＧＰＰによって開発された規格は、よりグローバルかつ包括的なアプローチを含み、真にユニバーサルなネットワーク及び標準化されたプロトコルを定義し、展開する。機能を強化し、ネットワーク帯域幅を拡張するために、ＵＭＴＳは新しいプロトコル、広帯域符号分割多元接続すなわちＷＣＤＭＡ（登録商標）無線アクセス技術を採用して、３Ｇハードウェアへの投資を取り替える必要なく、モバイルネットワーク事業者に高いスペクトル効率及び帯域幅を提供する。初期のネットワークは、３．６Ｍｂｐｓのピークダウンリンクレートを提供した。
【０１３９】
同時に、白色ＬＥＤ及び効率的な小型ＬＥＤ駆動回路の同時開発によって、モバイルデバイスでのカラーディスプレイの使用が初めて可能になり、スマートフォンが生み出された。スマートフォンは、ネットワーク帯域幅を商業的に推進する重要な触媒であったが、高品質のカラーディスプレイは、高速インターネットアクセス、映画のダウンロード、高解像度写真、マルチメディア放送、及び限られたリアルタイムのビデオストリーミングの急速な需要を生み出した。需要を満たすために、３．５Ｇとしても知られる高速パケットアクセス（ＨＳＰＡ）が、ＷＣＤＭＡ（登録商標）変調技術を使用しながら、アップロード及びダウンリンク速度の両方を向上させるアップグレードされたネットワーク上に配備された。ロールアウトは、３ＧＰＰリリース５として最初にリリースされた高速ダウンロードパケットアクセス、すなわちＨＳＤＰＡ、及び高速アップロードパケット、すなわちＨＳＵＰＡを使用して段階的に行われ、３ＧＰＰリリース６で間もなく利用可能になった。ピークデータレートは、ダウンリンクでは約１４Ｍｂｐｓ、アップリンクでは約５．８Ｍｂｐｓに改善されたが、インフラストラクチャに応じ、地理的条件で劇的に変化する。
【０１４０】
ＨＳＵＰＡが広く導入される前であっても、携帯事業者は、「３ＧＰＰロングタームエボリューション」すなわちＬＴＥとしても知られる３ＧＰＰリリース８で最初に定義され、標準化されたＨＳＰＡ＋に移行した。この技術は、「直交周波数分割多元接続」すなわちＯＦＤＭＡに基づくパケット交換専用ネットワークを表し、前述のようにＷｉＦｉで採用されているのと同じＯＦＤＭ方式に基づいている。ＯＦＤＭは単一ユーザのポイントツーポイント通信用に開発されたが、ＯＦＤＭＡはサブキャリアのサブセットを個々のユーザに動的に割り当てる能力を有するため、マルチユーザバージョンと見なすことができる。
【０１４１】
初期のＨＳＰＡ＋ベースのＬＴＥ導入は、２１Ｍｂｐｓで開始された。２００８年に、国際電気通信連合無線通信部門、すなわちＩＴＵＲ通信部門は、ＩＭＴＡ（International Mobile Telecommunications Advanced）仕様と呼ばれる４Ｇ規格のための一連の要件を規定し、電車や車などの高速移動通信では１００Ｍｂｐｓ、競歩者や歩行者のユーザなどの低速移動通信では１Ｇｂｐｓの、４Ｇサービスのための最小ピーク速度要件を設定した。
【０１４２】
初期のＨＳＰＡ＋ベースのＬＴＥシステムは、ＩＭＴＡの速度仕様を満たしていないため、このような初期の４Ｇの先例は、ＯＦＳＭＡ変調及び完全なパケット交換ネットワークを利用しているにもかかわらず、４Ｇ電話として正式には認識されなかった。結果的に、ＨＳＰＡ＋技術を３Ｇ後期または初期の４Ｇパケット交換電話として考慮するか否かについて、一致した意見は得られていない。３．９Ｇという名称さえ提案されている。名前付けの問題に関わらず、ブロック２３９に示される４Ｇ電話は、現在では、ＯＦＤＭＡ変調及びその様々な実装に基づくパケット交換通信を指す。データプロトコルの技術的、及び歴史的な変種、及び不均質なワイヤレスネットワークの使用にもかかわらず、一般的な言葉では、４Ｇ、ＬＴＥ、及び４Ｇ／ＬＴＥという用語は、曖昧で互換的に使用されている。
【０１４３】
４Ｇ／ＬＴＥ電話の高いデータ速度、及び相対的に堅牢な性能は、主に、変調方式及びデータフレーム構造によるものである。図１４Ａに示すように、４Ｇ変調は、一般的に７００ＭＨｚ〜２．６ＧＨｚの範囲の中心キャリア周波数付近で２０ＭＨｚまでの帯域幅を含み、サブキャリア周波数帯域に細分され、ダウンリンク通信は、ＯＦＤＭＡによって必要とされるサブキャリアチャネルを実装するために必要な多くの狭帯域２９６Ａから狭帯域２９６Ｎに細分される。モバイルデバイスで電力を節約するために、アップリンク通信はより少ない広帯域２９５Ａから広帯域２９５Ｎに細分され、周波数分割多元接続技術、すなわちＳＣ−ＦＤＭＡの単一チャネルバージョンを採用している。様々な帯域である広帯域２９５Ａ〜２９５Ｎは、複数のユーザを同時にサポートするために使用されるが、ＯＦＤＭＡとは異なり、１つの高速データストリームを多数に分割するために使用されない。その結果、ＳＣ−ＦＤＭＡアップロードデータレートは、ＯＦＤＭＡベースのダウンロードデータレートより必然的に遅い。
【０１４４】
グローバルローミング用に設計されたマルチバンドまたはワールドフォンが使用される場合を除き、次の表に示す認可されたキャリア周波数は地域によって異なり、ある国の電話が別の国では操作できないことがある。
【０１４５】
【表４】
2020195141.tif 000006
【０１４６】
上記の認可された周波数は、各地域の無線周波数ライセンスを管理する通信手数料に基づいて変更される場合がある。
【０１４７】
図１４Ｂに示すように、４ＧＰＨＹレイヤは、長さ１０ミリ秒のＲＦデータのバーストを含み、４Ｇパケットまたはフレーム３００を形成する。各フレーム３００は、７つのＯＦＤＭシンボル３０２を含む持続時間０．５ミリ秒の２０のスロットに細分される。各シンボル３０４は、サイクリックプレフィックスによって他から分離され、０から４９まで番号が付けられた５０のリソースブロックを含み、各ブロック３０６は、７のシンボル及び１２のサブキャリアを含む８４のリソース要素を含む。このデータ構造は、高ビットレートを実現し、冗長性を提供し、エラーを緩和するために使用されるフレキシブルなエンコーディングをサポートする。
【０１４８】
図１５は、４Ｇデータダウンロードに使用されるＯＦＤＭＡ変調のための４Ｇデータフレーム２９９内のデータリンクレイヤ２コンテンツのカプセル化を示す。同様の４ＧデータパケットがＳＣ−ＦＤＭＡアップロードのために存在するが、示されたパケットと類似しているため、図１５には含まれない。図示されているように、各ＰＨＹレイヤ１データパケット、すなわち「データフレーム」２９９は、データリンクレイヤ２をカプセル化する２０の０．５ミリ秒のスロット３０１を有する１０ミリ秒のフレーム３００を含む。４Ｇパケットのレイヤ２データリンクコンテンツは、３層の入れ子になっており、以下を含む。
・メディアアクセス制御のためのＭＡＣサブレイヤ
・「無線リンク制御」のためのＲＬＣサブレイヤ
・「パケットデータ収束プロトコル」のためのＰＤＣＰサブレイヤ
【０１４９】
レイヤ２  ＭＡＣサブレイヤは、ＭＡＣヘッダー３０３、ＭＡＣ  ＳＤＵｓ３０４の単一フレーム、及びタイムパディング３０５を含み、ＳＤＵという用語はサービスデータユニットの頭字語である。ＭＡＣヘッダー３０３は、無線接続に必要な送信元ＭＡＣアドレス及び宛先ＭＡＣアドレスを含む。ＭＡＣ  ＳＤＵｓ３０４の各単一フレームは、無線動作を制御するために使用される「無線リンク制御プロトコルデータユニット」の頭字語であるレイヤ２「ＲＬＣ  ＰＤＵｓ」３０６を含む。具体的には、ＲＬＣ  ＰＤＵｓ３０６は、無線動作及びプロトコルに関する情報を指定するＲＬＣヘッダー３０７を含み、「無線リンク制御サービスデータユニット」情報、すなわち単一フレームＲＬＣ  ＳＵＤｓ３０８を、入れ子状のペイロードとしてカプセル化する。時間３０９におけるＲＬＣ  ＳＤＵｓ３０８が完了すると、続いてＲＬＣヘッダー３１１を有する新しい無線リンク制御データ、及び別のＲＬＣ  ＳＤＵｓのセットが、短い遅延時間３１０の後に開始する。その結果、マルチフレームＲＬＣ  ＳＤＵｓ３１９の連続的データストリームが得られ、Ｋ  ３１３、Ｋ＋１  ３１４の各ブロックのデータは、シングルフレームＲＬＣ  ＳＤＵｓ３０８によって排他的に搬送され、Ｋ＋２  ３１５のブロックは、現在のフレームからのブロック３０８、及び次のフレームからの３１２の両方から構成される。
【０１５０】
レイヤ２パケットデータ交換プロトコルサブレイヤでは、各ＳＤＵブロックは、ＰＤＣＰヘッダーとＰＤＣＰ  ＳＤＵとの組み合わせを含む。例えば、Ｋ  ３１３のブロックは、ＰＤＣＰヘッダー３１２Ａ及びＰＤＣＰ  ＳＤＵ３２３を含み、Ｋ＋１  ３１４のブロックは、ＰＤＣＰヘッダー３１２Ｂ及びＰＤＣＰ  ＳＤＵ３２４を含み、Ｋ＋２  ３１５のブロックは、ＰＤＣＰヘッダー３１２Ｃ及びＰＤＣＰ  ＳＤＵ３２５を含み、集合的にＰＤＣＰ  ＰＤＵｓ３２０を形成する。コンテンツＰＤＣＰ  ＳＤＵ３２３、ＰＤＣＰ  ＳＤＵ３２４、及びＰＤＣＰ  ＳＤＵ３２５は、４Ｇパケットのペイロード３３０、すなわち、ネットワークレイヤ、トランスポートレイヤ、及びアプリケーションレイヤのデータを含むデータブロック３３３、データブロック３３４、及びデータブロック３３５を含む。現在、４Ｇ／ＬＴＥ通信をアセンブル、送信、受信、及びデコードするために必要な前述のプロセスは全て、単一の専用通信ＩＣ、すなわちデジタルシグナルプロセッサ（ＤＳＰ）で実行される。
【０１５１】
前述の４Ｇレイヤ２プロトコルを使用し、４Ｇは、以下のように、従来のネットワーク及び通信規格より多くの性能向上を提供する。
・マルチプルインプットマルチプルアウトプット、すなわちＭＩＭＯ技術を利用してデータレートを最大化し、高いＱｏＳ接続性を保証する能力を有する。
・ソフトウェアベースの無線を使用して、複数の無線ネットワークに同時に接続し、例えば、特定のアプリケーションのコスト、ＱｏＳ、及び能力などの最も適切なサービスパラメータを動的に識別する。
・技術内ハンドオーバ、及び技術間ハンドオーバをサポートする基地局を利用して、サービス品質が顕著に低下することなく、ゼロまたは最小限の中断でのサービス継続性を保証する。
・異なるモバイルモバイルネットワーク、及びワイヤレスネットワーク上のサービス及びアプリケーションに同時にアクセスする能力を有する。
【０１５２】
４Ｇ／ＬＴＥ通信のアプリケーションには、ＨＤ及びＵＨＤビデオストリーミング、クラウドコンピューティング、大容量クラウドベースのストレージ及びオンラインバックアップ、高速なウェブアクセス、大容量の電子メールファイルを送受信する能力などが含まれる。
【０１５３】
［ＤＯＣＳＩＳ３／ケーブル＆ファイバネットワーク］
最近まで、パケット交換技術を用いたケーブルテレビ、及び光ファイバのビデオ配信システムは、デジタル放送及びパケット交換技術を採用する上で、通信業界の他のシステムに遅れを取っていた。しかし、第３世代の「ケーブルによるデータサービスインターフェース仕様」、すなわちＤＯＣＳＩＳ３の急激な普及に伴い、ケーブルネットワーク能力が劇的に改善され、高帯域通信の複数のチャネルを多数のクライアントに同時にサービスする、特有の機能が提供された。ＤＯＣＳＩＳ３は、高速デジタル双方向通信及びインターネットアクセス、ＶｏＩＰを同時に提供し、さらに、何百もの放送、プレミアムＴＶチャンネル、ペイ・パー・ビュー用のユニキャストＴＶ、及びＩＰＴＶダウンロードを含む、高解像度ビデオストリーミングの複数のチャネルをサポートする。
【０１５４】
複数の独立したユーザをサポートするＤＯＣＳＩＳ３ベースのケーブル＆ファイバネットワークの例を図１６に示す。ケーブル配線では、コンテンツの放送及びクライアント通信の管理は、「ケーブルモデム終端システム」、すなわちＣＭＴＳ３５０として知られる中央ケーブルヘッドエンドデバイスから送られる。ＣＭＴＳ３５０にコンテンツを供給する様々なデバイスは、ネットワークＴＶを配信するビデオヘッドエンド３５１と、ＩＰＴＶ及び映画ダウンロードだけでなくペイ・パー・ビューユニキャストを配信するＩＰＴＶシステム３５２と、電話用のＶｏＩＰシステム３５３と、ウェブ及びクラウド接続用のインターネット２０とを含む。高速デジタル（ＨＳＤ）、ボイスオーバーインターネットプロトコル（ＶｏＩＰ）、放送及びＩＰＴＶを含む集約された情報は、単一の同軸ケーブルまたは光ファイバ上で複数のチャネル３５４としてクライアントに送られる。
【０１５５】
ＣＭＴＳ３５０から分配されたデータパケットは様々な加入者に接続され、セットトップボックスＣＭ／ＳＴＢ３５７にマージされたケーブルモデムを含むデバイスが高解像度ＴＶ３９に接続されるか、ケーブルモデムＣＭ３５８が、電話機３７への音声通信、及び、デスクトップ３６及び家庭用のＷｉＦｉアクセスポイント２６への高速デジタル接続性を供給するために使用される。バス及びハブネットワークと同様の方法で、チャネル３５４上に運ばれた、集約されたコンテンツは、全て同じケーブル上またはファイバ上に運ばれ、ＣＭＴＳも接続された全てのデバイスによって受信される。
【０１５６】
ＤＯＣＳＩＳ３を使用すると、ケーブルモデム終端システムＣＭＴＳ３５０は交換ネットワークとなり、全てのコンテンツが必ずしも全ての加入者に配信されるわけではない。「バンドリング」として知られるこの特徴により、ＣＭＴＳ３５０は、様々な加入者の接続されたデバイスによってどのチャネルが受信できるかを制御できる。図示のように、バンドルチャネル３５５は、ＴＶ３９及びＩＰＴＶ用のコンテンツを運ぶが、バンドルチャネル３５６は、高デジタルコンテンツ及び音声を運ぶ。マージされたケーブルモデム、及びセットトップボックスＣＭ／ＳＴＢ３５９は、ＴＶ３９がスマートＴＶである場合に有用なバンドルチャネル３５５及びバンドルチャネル３５６の両者にアクセス可能であるが、デスクトップ３６、電話機３７、及びホームＷｉＦｉ２６に使用されるケーブルモデルＣＭ３６０は、ビデオ接続性を必要としないため、ＨＳＤ／ＶｏＩＰのバンドルチャネル３５６にのみ接続される。
【０１５７】
前述のイーサネット（登録商標）、ＷｉＦｉ、及び４Ｇ／ＬＴＥの例と同様に、ＤＯＣＳＩＳ３をケーブル及びファイバ上で使用するコンテンツ配信は、全二重動作が可能な双方向性であり、パケット交換技術を使用して全て実装されている。ＰＨＹレイヤに関する情報を伝送するために電気シグナル、またはマイクロ波シグナルの代わりに光を用いることにより、光ファイバは、特に、他の形態の通信と比較して優れた帯域幅を提供する。ケーブル配線システムでの、ＤＯＣＳＩＳ３のＯＳＩ通信スタックが図１７に示され、ケーブルモデム終端デバイスＣＭＴＳ１０１、及びケーブルモデムＣＭ１０３またはセットトップボックスＳＴＢ１０２などのケーブル接続されたデバイスの例の両者の、レイヤ１ＰＨＹ接続性、レイヤ２データリンク、及び上層のレイヤ３ネットワークが示されている。具体的には、ケーブルモデム終端デバイスＣＭＴＳ１０１は、クラウド２２のサーバ及びインターネット２０、あるいは先の図に示されたビデオヘッドエンド３５１、ＩＰＴＶシステム３５２、またはＶｏＩＰシステム３５３に接続されたレイヤ１のネットワークインターフェース３６１を含む。ネットワークインターフェース３６１及びデータリンクレイヤ３６６の組み合わせは、ＣＭＴＳ１０１のデバイスインターフェース通信スタックを含む。
【０１５８】
データリンクレイヤ２では、データは、転送機能３７０を介して、ネットワークインターフェース通信スタックからケーブルネットワークインターフェース通信スタックに渡され、具体的にはリンクレベル制御ＬＬＣに送信される。リンクレベル制御ＬＬＣ３６９は、ＩＥＥＥ標準規格８０２．２にしたがって定義されたハードウェアに依存しないプロトコルを含む。パケットデータはリンクセキュリティ３６８によって修正され、制限されたパケットセキュリティを提供して、主に、ペイ・パー・ビューユニキャスト放送などのコンテンツの不正な閲覧を防止する。データパケットは、ＤＯＣＳＩＳ３にしたがってフォーマットされ、図１０のＷｉＦｉ無線ブリッジによって示される例と同様の方法でケーブルＭＡＣ３６７アドレスを含む。レイヤ１ＰＨＹケーブルインターフェース３６２は、次に、同軸ケーブル１０４または光ファイバ９１のいずれかを含む配信ネットワーク上のデータフレームをケーブルモデムＣＭ１０３またはセットトップボックスＳＴＢ１０２内の対応するレイヤ１ＰＨＹのケーブルインターフェース３６３に送信する。ケーブルインターフェース３６３は、ケーブルモデムＣＭ１０３またはセットトップボックスＳＴＢ１０２のケーブルネットワークインターフェース通信スタックのＰＨＹレイヤを表す。
【０１５９】
データパケットを受信すると、ケーブルＭＡＣインターフェース３７１は、そのペイロードを解読のためにリンクセキュリティ３７２に渡し、最終的には解釈のためにハードウェア独立レイヤリンク制御ＬＬＣ３７３に渡す。ＣＭまたはＳＴＢケーブルネットワーク通信スタックへの入力データは、その後、トランスペアレントブリッジング３７４を介し、ＩＥＥＥ８０２．２の仕様に従って、ＣＭまたはＳＴＢデバイスインターフェース通信スタック、具体的にはデバイス独立リンクレイヤ制御ＬＬＣ３７５に渡される。パケットは、次に、ＨＳＤ＆ＩＰＴＶ  ＭＡＣブロック３７６またはＷｉＦｉ８０２．１１ＭＡＣブロック３７７のいずれかに渡され、パケットのＭＡＣアドレスを更新する。ＷｉＦｉ通信の場合、データパケットはその後８０２．１１ＭＡＣブロック３７７からＷｉＦｉ  ＰＨＹレイヤ１無線インターフェースに渡され、ＷｉＦｉアクセスポイント２６上で送信される。有線接続の場合、データパケットはその後ＨＳＤ＆ＩＰＴＶ  ＭＡＣブロック３７６からイーサネット（登録商標）またはＨＤＭＩ（登録商標）インターフェースブロック３６４に渡され、ＴＶ３９またはデスクトップ３６に接続される。
【０１６０】
ＷｉＦｉで使用されるＯＦＤＭ、または４Ｇ／ＬＴＥ通信で使用されるＯＦＤＭＡと同様に、ＤＯＣＳＩＳ３通信は、電磁放射のマイクロ波またはヒカリスペクトルのいずれかにおいて、複数の直交する、すなわち重複しない周波数を使用し、情報を符号化して送信する。ＤＯＣＳＩＳ３は、各チャネルに専用のコンテンツを割り当てるのではなく、利用可能な全ての周波数チャネルで、ビデオ、高速データ、及び音声を含むコンテンツを動的に割り当て、及び再割り当てすることができる「トレリスエンコーディング」をサポートしている。１〜６のチャネルを利用する図１８のいくつかのエンコーディング例に示すように、予め定められたタイプのコンテンツを表すデータパケットは、単一のチャネルに割り当てられるか、または複数のチャネルにわたって割り当てられ得る。データは、チャネル３８５及びタイムスロット３８６の両者によって配置される。ｍ＝１（ＱＰＳＫ）とラベル付けされた例では、タイムスロットｔ０〜ｔ８が単一チャネル上にエンコードされ、単一の送信元♯１からコンテンツを配信する。ｍ＝２（８−ＱＡＭ）とラベル付けされた例では、８−ＱＡＭを用いてエンコードされた２つのチャネルが直交振幅変調すなわちＱＡＭである変調方式は、先に説明したＷｉＦｉと同様に使用されるため、本明細書では繰り返さない。送信元♯１はタイムスロットｔ０〜ｔ４のデータを配信し、次に送信元♯２からタイムスロットｔ４〜ｔ８のデータが配信される。ｍ＝３（１６−ＱＡＭ）とラベル付けされた例では、１６−ＱＡＭを用いてエンコードされた３つのチャネルが使用され、３つの送信元からコンテンツを配信する。タイムスロットｔ０〜ｔ８のチャネルｍ＝１上の送信元♯２配信コンテンツと同時に、送信元♯１はチャネルｍ＝２上のタイムスロットｔ０〜ｔ４のコンテンツ３９１ａを配信するが、送信元♯２はタイムスロットｔ４〜ｔ８のコンテンツ３９１ｂを配信する。
【０１６１】
ｍ＝５（６４Ｍ）とラベル付けされた例では、６４ＱＡＭを用いてエンコードされた６つのチャネルが使用され、５つの送信元からコンテンツを配信する。例えば、ｍ＝２とラベル付けされたｍ＝５の２つのサブチャネルでは、送信元♯３からのコンテンツがタイムスロットｔ０〜ｔ４から配信され、かつ送信元♯３からのコンテンツがタイムスロットｔ４〜ｔ８から配信される。一方、ｍ＝４とラベル付けされたサブチャネルでは、送信元♯１からのコンテンツは、タイムスロットｔ０〜ｔ２の４つのチャネルで配信され、次にタイムスロットｔ２〜ｔ３の３つのチャネルのみで配信される。送信元♯２からのコンテンツは、４つのチャネルのうちの１つのみでタイムスロットｔ２から始まり、その後タイムスロットｔ３でｍ＝４に増加する。ｍ＝６（１２８Ｍ）とラベル付けされた例では、送信元♯３からのコンテンツ３８９はタイムスロットｔ０〜ｔ４の６のチャネルのうち２つのチャネル上に配信されるが、他の４つのチャネルは、タイムスロットｔ０〜ｔ２の送信元♯１からのコンテンツ３８８ａを配信するため、及びタイムスロットｔ２〜ｔ４の送信元♯２からのコンテンツ３８８ｂを配信するために使用される。示されている例では、トレリスエンコーディングにより、帯域幅管理及びコンテンツ割り当てにおいてケーブルオペレータは最大限フレキシブルになる。
【０１６２】
図１９に示された、ＤＯＣＳＩＳ３で使用される対応するデータパケットでは、ＰＨＹレイヤ１は、プリアンブル３９１、可変長ペイロード３９２またはコードワード、及びガードタイム３９３を含むデータリンクレイヤ２ＭＡＣデータを有する、可変長及び持続時間の物理メディアデバイスフレーム３９０を含む。プリアンブル３９１は、通信の方向に応じて、アップストリームプリアンブルまたはダウンストリームプリアンブルのいずれかを含む。アップストリームプリアンブルの場合、プリアンブル３９１は、物理メディアデバイスＰＭＤヘッダー３９８、ＭＡＣヘッダー３９９、及びデータＰＤＵ４００を含む。ダウンストリームプリアンブルの場合、プリアンブル３９１は、ＭＰＥＧヘッダー４０１、ＭＡＣヘッダー３９９、及びデータＰＤＵ４００を含む。可変長ペイロード３９２のコンテンツは、ショートコードワード３９４またはロングコードワード３９７を含み得る。
【０１６３】
ショートコードワード３９４は、データＡを有するペイロード３９５Ａ、及びＦＥＣＡを有するエラーチェック３９６Ａを含む。ロングコードワード３９７の場合、ペイロードは、データＡ〜Ｃのそれぞれを搬送する複数のペイロード３９５Ａ〜３９５Ｃのブロックに分割され、各ペイロードは、対応するデータＦＥＣ  Ａ〜ＦＥＣ  Ｃを有するエラーチェック３９６Ａ〜３９６Ｃのブロックを含む。エラーチェックの後、ＤＯＣＳＩＳ３から配信されたデータは、ロングコードワードの場合にはペイロード３９５Ａ〜３９５Ｃを含み、ショートコードワードの場合にはペイロード３９５Ａのデータブロックのみを含む。
【０１６４】
このように、ＤＯＣＳＩＳ３はパケット交換データプロトコルを用いてケーブルネットワーク上でデータをフレキシブルに配信する。
【０１６５】
ＯＳＩレイヤ３  ネットワーク（インターネット）レイヤ
【０１６６】
前述したように、データペイロードは、様々なＰＨＹレイヤ１ハードウェア構成、及びデータリンクレイヤ２インターフェースプロトコルで配信され得る。レイヤ１、及びレイヤ２はデバイス固有のレイヤであるが、ネットワークレイヤであるレイヤ３は、シグナル及びデータを伝送するために使用されるＰＨＹネットワークに、ユビキタスかつ不可欠な、デバイスに依存しない通信の形式を提供する。図２０には、レイヤ３通信が示されており、３つのネットワーク接続デバイス４２０Ａ〜４２０Ｃが、全てレイヤ３ネットワーク４２１のインターネット接続を共有するコンピューティング及びデータ記憶機能４２３Ａ、データ記憶機能４２３Ｂ、またはデータ記憶機能４２３Ｃを含む。したがって、各デバイスの対応する通信スタック４２２Ａ〜４２２Ｃは、独占的なシステムを除いて一般的にインターネットを表すレイヤ３ネットワーク４２１を使用し、デバイスを相互に接続させる。
【０１６７】
様々なハードウェアプラットフォーム、ネットワーク、及びシステムにわたって操作するパケット交換ネットワークにおける相互運用性を保証するため、ＯＳＩモデルは、図２１に示すように７つのレイヤで編成された明確なプロトコルを規定する。前述したように、それぞれの木製の人形の中に別の小さな人形が入っているバブシュカ、すなわちロシアの入れ子人形のように、パケット交換ネットワークのためのデータパケット、すなわち「データグラム」は同様の方式で配置され、レイヤ１のＰＨＹレイヤパケット、すなわち「フレーム」は、ペイロード内のレイヤ２リンクレイヤデータを含む他の全てのレイヤを含み、同様に、レイヤ４ネットワークパケットなどを含む、レイヤ３〜７を含むペイロードをカプセル化する。
【０１６８】
より詳細には、レイヤ１フレーム４３０は、電気シグナル、無線シグナル、または光シグナルを含む物理レイヤ、すなわちＰＨＹレイヤの全てのデータを含む。ＰＨＹレイヤ１フレーム４３０に埋め込まれているのは、ＭＡＣヘッダー４３１、ＭＡＣペイロード４３２、及びＭＡＣフッター４３３を含むレイヤ２上のメディアアクセス制御またはデータリンクレイヤ情報である。ＭＡＣペイロード４３２は、インターネットプロトコルまたはＩＰヘッダー４３４、及びＩＰペイロード４３５を含むレイヤ３条のネットワーク（インターネット）レイヤまたはＩＰパケットをカプセル化する。ＩＰペイロード４３５は、トランスポートヘッダー４３６及びトランスポートペイロード４３７を含むトランスポートレイヤデータグラム、すなわちレイヤ４データをカプセル化する。次に、トランスポートペイロード４３７は、図４に示したＯＳＩモデルと一致するアプリケーションレイヤ５〜７の全てのアプリケーションデータ４３８をカプセル化する。
【０１６９】
操作中、図２１に示すＩＰデータパケットを受信すると、ネットワーク接続デバイス及びそのファームウェアは、レイヤ１及びレイヤ２のデータを解釈し、ＭＡＣペイロード４３２内に含まれる情報を無視する。次に、ネットワークソフトウェアは、ＩＰレイヤ３データ内に含まれるＩＰアドレス、ルーティング、及び制御を解釈するが、ＩＰペイロード４３５の内容は無視する。次に、トランスポートレイヤ４ソフトウェアは、トランスポートヘッダー４３６及びトランスポートペイロード４３７を含むトランスポートレイヤ「データグラム」としてＩＰペイロード４３５内に含まれる情報を解釈して、通信パーティ間で任意のハンドシェーキングを提供し、ＩＰパケットの確実な配信を保証する。トランスポートペイロード４３７は、セッションレイヤ５、プレゼンテーションレイヤ６、及びアプリケーションレイヤ７のデータを含むパケットを有する、残りの上位レイヤアプリケーションのためのアプリケーションデータ４３８を含む情報をカプセル化する。要約すると、レイヤ１及びレイヤ２は、ネットワーク接続されたデバイスのための物理的接続及びルールを確立することに関係し、レイヤ３及びレイヤ４は、ＩＰパケットの受信者を識別し、その配信を確認することに関係し、レイヤ５〜８には、データペイロードとして配信される実際の情報が含まれている。したがって、レイヤ１及びレイヤ２のハードウェア及びファームウェアは、送信されるデータのコンテンツまたはそのアプリケーションには関係がなく、レイヤ３及びレイヤ４ネットワークソフトウェアは、どの物理デバイスがパケットを送信しているか、またパケットの内容が何であるのかということには関係がなく、レイヤ５〜７は、パケットの送信方法または受信が確認されたかということには関係がない。このようにして、未知のコンテンツのデータグラムのルーティングは、パケットを送信する際に使用されるハードウェアに関係なく、またパケットのデータの意図された使用で、パケット交換ネットワークにおいて管理され得る。
【０１７０】
相互運用性を維持するために、ネットワーク経由で送信されるパケットは、実際のネットワークがインターネットに直接接続されていない場合であっても、インターネットプロトコル、すなわちＩＰとして知られる標準化された形式を使用する。レイヤ３接続は、ＩＰパケットを使用して共通のパケット交換ネットワークに接続されたデバイスの任意の集合を含むことができ、（１）インターネットに直接接続された、ホストされたサーバまたはプライベートサーバ、（２）インターネットに接続されていないプライベートクローズトネットワーク、すなわち「イントラネット」、または（３）「ネットワークアドレストランスレータ」、すなわちＮＡＴを介してインターネットに接続されたクローズドネットワーク、が本出願において後述される。前者の場合、インターネット上で使用される任意のＩＰアドレスが、排他的かつ有効なインターネットアドレスとしてクライアントに登録及びライセンス及び認可されなければならない。後者の２つの場合、ＩＰアドレスは独立したネットワークにおいてのみ意味を有し、使用は意図され、インターネットアドレスとして登録されていない。インターネット上で登録されていないＩＰアドレスを用いようとすると、接続エラーが発生する。
【０１７１】
図２２に示すように、全てのＩＰパケットは、ＩＰヘッダー４３４、及びＩＰペイロード４３５の２つの要素を含む。ＩＰヘッダー４３４は、「インターネットプロトコルバージョン４」すなわちＩＰｖ４用、及び「インターネットプロトコルバージョン６」すなわちＩＰｖ６用の２つの確立したバージョンのうち、１つを一般に含む。ＩＰｖ４が選択された場合、プリアンブル４４０は１２Ｂ長のフィールドを含み、バージョンビット４４７、その後に４Ｂ長の送信元アドレス４４１、４Ｂ長の宛先アドレス４４２、及び８Ｂ長のオプションフィールド４４３を含む。ＩＰｖ６が選択された場合、プリアンブル４４４は８Ｂ長のフィールドを含み、バージョンビット４４８、その後に１６Ｂ長の送信元ＩＰアドレス４４５、及び１６Ｂ長の宛先ＩＰアドレス４４６を含む。ＩＰｖ４とは異なり、バージョン６はオプションフィールドを有していない。
【０１７２】
重要なことに、ＩＰｖ４のプリアンブル４４０、及びＩＰｖ６のプリアンブル４４４は長さ、コンテンツ、及びフォーマットの点で異なり、別々に考慮されなければならない。さらに、ＩＰｖ６のＩＰアドレスフィールドは１６Ｂ長であり、ほとんど無数のＩＰアドレス、すなわち２１２８個のＩＰアドレスを一意に指定することができる。これと比較して、ＩＰｖ４の長さはわずか４Ｂであり、２３２のアドレスしか指定できない。ＩＰｖ４の組み合わせの数が限られているため、プリアンブル４４０で指定されているように、クライアントからネットワークを識別及び分離するための他の情報が必要である。ＩＰｖ６では、このような区別をする必要はない。最新のネットワーク及びＩＰルータは、現在、ＩＰｖ４及びＩＰｖ６の両者をサポートすることができる。
【０１７３】
［インターネットプロトコルＩＰｖ４］
ＩＰｖ４のパケット４５０データグラムのデータパケット構成をより詳細に見ると、図２３は、列によって左から右へ、及び行によって上から下へ順番に配置された時間の２次元グラフ表示を示しており、具体的には、各列に対して、時間はバイト、すなわちオクテット０〜８（あるいは、０〜３１のビットによって表される）で示され、上から下への各行はオフセットオクテットでラベル付けされ、「０」とラベル付けされた最も上の列に続いて、「４」、「８」、「１２」などのラベル付けされた列が続く。パケット４５０のデータグラムから順次データを正しく読み取るために、パケットは、左から右へ「０」とラベル付けされたオフセットオクテット列で開始し、プリアンブル４５１を含む第１のデータは、前述の「バージョン」フィールドに続いて「ＩＨＬ、ＤＳＣＰ、ＥＣＮ」及び「全長」フィールドを含む。その直後に、「識別、フラグ、フラグオフセット」とラベル付けされたフィールドを含む、オフセットオクテット列「４」とラベル付けされた次の列オフセットからのデータが読み取られる。最後に、パケット４５０のプリアンブル内の「８」とラベル付けされた最後の列は、「生存時間、プロトコル、及びチェックサム」フィールドを含む。プリアンブルの後に、データグラムは、４Ｂ送信元ＩＰアドレスを含み、４Ｂ宛先ＩＰアドレス、及びオフセットオクテット２０としてラベル付けされた列には、「オプション」フィールドが存在する。パケット４５０データグラムの最後のフィールドは、可変長のＩＰペイロードパケット４３５を含む。この例では４Ｂ長が示されているが、ペイロード長は可変である。
【０１７４】
表４５１には、ＩＰｖ４データグラムフィールドに含まれる情報の概要が示される。前述のように、４ビット長（４ｂ）のバージョンフィールドは、インターネットプロトコルをバージョン４のバイナリ０１００に設定する。ＩＨＬフィールドは、ＩＰヘッダー４３４内の３２ｂワードの数を指定し、ＩＰペイロード４３５を除くＩＰｖ４のパケット４５０の長さは、２０Ｂから６２Ｂまでの値の範囲である。ＤＳＣＰは、区別されたサービスを定義する６ｂフィールドを含み、通信のサービス品質、すなわちＱｏＳを制御する。ＥＣＮは、明示的輻輳通知、すなわちＥＣＮのための４ｂフィールドを表し、ネットワークの負荷状態を表す。全長は、ＩＰヘッダー４３４及びＩＰペイロード４３５の両者を含むＩＰｖ４パケットデータグラムの合計の長さを表し、最小長２０Ｂから最大長６５，５３５Ｂまでの範囲である。最大パケット長は、特定のＰＨＹ媒体についてのレイヤ２データリンクプロトコルによって、より小さいデータグラムに制限されてもよい。２Ｂ長の「識別」フィールドは、単一のＩＰデータグラムのフラグメントのグループを一意的に識別して、順序の乱されたセグメントを有するパケットの再組み立てを可能にし、パケット断片化を管理するために使用される３ｂ「フラグ」及び１３ｂ「フラグオフセット」と共に使用される。１Ｂ長のＴＴＬ、すなわち「生存時間」フィールドは、ネットワーク内のデータグラムの存続時間を制限して永続することを防ぎ、意図した宛先に送信できないパケットが期限切れになるようにする。ＴＴＬフィールドは、特定のパケットが配信不能として破棄される前に、通過できるルータの最大数を指定する。パケットがルータを通過するたびに、ＴＴＬカウントは１カウント減少する。
【０１７５】
１Ｂ長の「プロトコル」フィールドであるフィールド４６０は、ＩＰｖ４パケットのＩＰペイロード４３５に含まれるデータのタイプを記述する。場合によっては、このデータは、例えばネットワーク状態または伝播遅延のチェックのような具体的な指示を提供し、レイヤ３パケットとして実行される。一方で、他の場合には、ペイロードがレイヤ４トランスポートプロトコルを含むものとして識別され、ＩＣＭＰ、ＩＧＭＰ、ＴＣＰ、ＵＤＰ標準転送プロトコル、または他の即時のフォーマットを含むパケット配信及び確認を管理するために使用されてもよい。本質的に、プロトコルフィールドは、レイヤ３ＩＰｖ４パケット内のレイヤ４データグラム記述であり、ＯＳＩレイヤ３をインターネットプロトコルのレイヤ４に、密接にリンクさせる。ヘッダーチェックサムフィールドは、ヘッダーデータが正しいことを保証するために使用され、パケットが間違った宛先に配信されないようにする。ヘッダーチェックサムフィールドは１６ビットのチェックサムを含み、エラー及びデータドロップを検出するために使用される。全体として、前述のフィールドはＩＰｖ４パケットのプリアンブル４４０を形成する。
【０１７６】
送信元ＩＰアドレス及び宛先ＩＰアドレスである次の２つのフィールドは、４Ｂ長であり、複数の形式で表すことができる。ドット１０進数形式と呼ばれる従来の形式は、ドットで区切られた４つの１０進数、例えば１９２．０．２．２３５、すなわち０ｘＣ０．０ｘ００．０ｘ０２．０ｘＥＢなどの、ドットのついた１６進形式を含み、各バイト、すなわちオクテットは０ｘで始まり、１６進形式に個々に変換される。３２ビットアドレスは、ドット付きの１６進形式からオクテットを連結したものとして、１０進数に相当する３２２１２２６２１９、または１つの１６進数０ｘＣ００００２ＥＢに変換することもできる。ＩＰｖ４アドレス形式の更なる詳細は、http://en.wikipedia.org/wiki/IPv4または他の同様の参考文献を参照することで得られる。４Ｂ長の「オプション」フィールドは、ＩＨＬフィールドが６〜１５に設定されているときにのみアクティブになり、セキュリティリスクを生み出すためほとんど使用されない。
【０１７７】
［インターネットプロトコルＩＰｖ６］
ＩＰアドレスが枯渇したため、インターネットプロトコルバージョン６と呼ばれる新たなＩＰアドレスのセットが開始された。図２４に示すように、ＩＰｖ６データグラム４５３のデータパケット構成は、バージョン４の前身と同様に、ＩＰヘッダー４３４及びＩＰペイロード４３５の２つの要素を含むが、ヘッダーが著しく単純であり、かつＩＰアドレスが著しく長い点で異なる。具体的には、ＩＰｖ６のプリアンブル４４４は長さが８バイト長のみであるが、ＩＰｖ６の送信元ＩＰアドレス４４５及びＩＰｖ６の宛先ＩＰアドレス４４６は１６バイト長である。
【０１７８】
表４５４は、ＩＰｖ６データグラムフィールドに含まれる情報の概要を示す。前述のように、４ビット長（４ｂ）のバージョンフィールドは、インターネットプロトコルをバージョン６のバイナリ０１１０に設定する。１Ｂ長の「トラヒッククラス」フィールドは、区別されたサービスを指定する６ｂサブフィールド、及びバージョン４と同様のＥＣＮ輻輳管理のための２ｂサブフィールドを含む。２０ｂの「フローラベル」フィールドは、データパスを維持することによってフラグメンテーションを最小化し、リアルタイムアプリケーションでの再順序付けを避ける。２Ｂ長の「ペイロード長」は、ＩＰペイロード４３５の長さをバイト（オクテット）で指定する。１Ｂ長の「ネクストヘッダー」であるフィールド４６０は、ＩＰペイロード４３５内のコンテンツのタイプを指定する。ＩＰｖ４の「プロトコル」フィールドと同様に、ＩＰｖ６の「ネクストヘッダー」フィールドは、本質的に、ＩＰペイロード４３５のコンテンツに関する情報を提供する。場合によっては、このコンテンツは、例えばネットワーク遅延をチェックするようなアクションを含み、レイヤ３データを含む。他の場合では、コンテンツは、ＩＣＭＰ、ＩＧＭＰ、ＴＣＰ、ＵＤＰ標準トランスポートプロトコル、または他の専用フォーマットを含む、パケット配信及び確認を管理するために使用されるレイヤ４トランスポートプロトコルを含む。ＩＰｖ４の「生存時間」と同様に、ＩＰｖ６パケットの１Ｂ「ホップリミット」は、パケットが永続的に破棄される前に通過できるルータの最大数を指定する。パケットがルータを通過するたびに、カウントは１だけ減少する。
【０１７９】
各１６Ｂ長の次の２つのフィールドは、送信元ＩＰアドレス４４５及び宛先ＩＰアドレス４４６を指定する。前述のように、より長いＩＰアドレスの目的は、ＩＰｖ４で発生するＩＰの枯渇を克服することである。この問題は図２５に示され、ＩＰアドレス４５９は、４Ｂ長のＩＰｖ４アドレスのクラスを、クラスのない１６Ｂ長のＩＰｖ６アドレス４５８と対比する。ＩＰｖ６アドレスは、２１２８、すなわち３．４０３×１０３８の特有の組み合わせが可能であるため、ネットワーク及びクライアントに特別に割り当てられたクラスに、アドレスを分割する必要はない。対照的に、ＩＰｖ４で利用可能な限定された組み合わせのため、アドレスは「クラス」に細分され、現在、クラスＡからクラスＣは依然として常用されている。
【０１８０】
図示のように、クラスＡは、０．０．０．０から１２７．２５５．２５５．２５５の範囲のＩＰｖ４アドレスを有する１Ｂ長のネットワークフィールド４５６Ａ及び３Ｂ長のクライアントフィールド４５７Ａを含み、１２８のネットワーク及び１６，７７７，２１６（約２２４）のクライアントをサポートする。クラスＡユーザは、大規模なＩＰプロバイダ、電気通信会社、またはビデオプロバイダを含み得る。クラスＢアドレスは、１２８．０．０．０から１９１．２５５．２５５．２５５の範囲のＩＰｖ４アドレスを有する２Ｂ長のネットワークフィールド４５６Ｂ及び２Ｂ長のクライアントフィールド４５７Ｂを含み、１６，３８４（約２１４）のネットワーク及び６５，５３６（約２１６）のクライアントをサポートする。クラスＢユーザは、多数のサイトを有する企業を含み得る。クラスＣアドレスは、１９２．０．０．０から２２３．２５５．２５５．２５５の範囲のＩＰｖ４アドレスを有する３Ｂ長のネットワークフィールド４５６Ｃ及び２Ｂ長のクライアントフィールド４５７Ｃを含み、２，０９７，１５２（約２２１）のネットワーク及び２５６（すなわち２８）のクライアントをサポートする。クラスＣユーザは、通常、小規模事業体を含む。
【０１８１】
ネットワークまたはインターネットを介したパケットのルーティング中、ＩＰヘッダー４３４内の各フィールドの処理は、知る必要性に基づいて行われる。例えば、各ルータは、エラーをチェックするためにＩＰバージョン、パケット長、及びパケットのチェックサムを知る必要がある。同様に、ホップタイムまたは生存時間も、中間ルータによって必ず処理され、永続性を取り除く。しかし、中間ルータは、ＩＰヘッダー４３４の各フィールドを解釈する必要はない。具体的には、ＩＰｖ４の「プロトコル」フィールド、またはＩＰｖ６の「ネクストヘッダー」フィールド４６０は、送信及び宛先ＩＰアドレスについてのみの意味を有する。中間ルータは、ＩＰペイロード４３５のコンテンツを知る必要がないため、情報を処理しない。パケットが最終的にその宛先ＩＰアドレスに到達すると、意図された受信側デバイスまたはサーバは、ＩＰヘッダー４３４内のフィールド４６０の値を読み取り、どのような種類のデータがＩＰペイロード４３５内にカプセル化されているかを解釈する。図２６に示すように、フィールド４６０内の任意の有効値は、レイヤ３ネットワークレイヤペイロード、あるいはレイヤ４トランスポートペイロードに関するアクションをもたらすことができる。フィールド４６０に含まれるコードが宛先ＩＰアドレスによって認識されない場合、サーバまたは受信側デバイスは、パケットを不完全なものとして廃棄する。
【０１８２】
フィールド４６０が実行可能命令としてレイヤ３ネットワークレイヤペイロードを含む場合、ＩＰペイロード４３５は、実行すべきタスクをネットワークに指示する。例えば、フィールド４６０が、プロトコルまたはネクストヘッダーフィールドのデータ４６１または４６２として示された１０進数１または２の均等物を含む場合、ＩＰペイロード４３５は、ネットワークユーティリティＩＣＭＰまたはＩＧＭＰのそれぞれに対応する命令を含む。フィールド４６０が、プロトコルまたはネクストヘッダーフィールド４６３として示された１０進数６の均等物を代わりに含む場合、ＩＰペイロード４３５は、ＴＣＰレイヤ４トランスポートプロトコルを使用するペイロードのデータ４７５を含む。同様に、フィールド４６０が、プロトコルまたはネクストヘッダーフィールド４６４として示された１０進数６の均等物を代わりに含む場合、ＩＰペイロード４３５は、ＵＤＰレイヤ４トランスポートプロトコルを使用するペイロードのデータ４７６を含む。レイヤ４ペイロードについては、本開示の次のセクションで説明する。より一般的でない、独自の他のコードも存在する。フィールド４６０が、標準化された登録コードであるプロトコル、またはネクストヘッダーを含む場合、公的ネットワークは少なくとも論理的にコードへ適切に応答し、ペイロードを正確に解釈すべきである。コードが独占的である場合、独占ネットワーク及びカスタマイズされたルータのみがコードを解釈し、解釈にしたがって適切なアクションをとることができる。
【０１８３】
フィールド４６０が、プロトコルまたはネクストヘッダーフィールドとして示された１０進数１の均等物を含む場合、ＩＰペイロード４３５は、サーバ、ルータ、アクセスポイントのようなネットワークデバイスによって使用されるＩＣＭＰ、すなわち「インターネット制御メッセージプロトコル」と呼ばれる特定のネットワークユーティリティを運び、ネットワーク伝播遅延にアクセスして、要求されたサービスが利用できないことを示すか、ルータまたはホストに到達できないことを確認する。特定のネットワーク診断を実行する場合を除き、割り当てられたプロトコルまたはネクストヘッダー識別子である１０進数１は、システムまたはエンドユーザアプリケーション間で情報を交換するために一般的に使用されないという点で、ＵＤＰ及びＴＣＰとは異なる。データ４６１に対応するＩＰパケットについて図２６に示すように、ＩＣＭＰパケットは、ＩＣＭＰデータ４６９が後に続く、タイプ４６５、コード４６６、チェックサム４６７、及び残りのＩＣＭＰヘッダー４６８を有する４つの部分のヘッダーを含む。
【０１８４】
「タイプ」４６５フィールド及び「コード」４６６フィールドは、ともに、様々な制御メッセージの配信を容易にする。タイプ＝３制御メッセージは、ＩＰ宛先が到達不能であることを意味し、到達できなかった理由をコードで入念に説明する。例えば、コード＝０は宛先ネットワークに到達不能、コード＝１は宛先ホストに到達不能、コード３は宛先ポートに到達不能、コード＝９はネットワークが管理上禁止されている、などである。タイプ＝５の場合、パケットはリダイレクト可能であり、コード＝０はネットワークのデータグラムをリダイレクトすることを意味し、コード＝１はホストのデータグラムをリダイレクトすることを意味する、などである。タイプ＝０の「エコー応答」が後に続く、タイプ＝８の「エコー要求」は、ネットワークの伝播遅延をチェックするために音を出している潜水艦ソナーと同様に、重要かつ周知の「ピン」機能を共に実行する。他の重要な機能には、「トレースルート」コード３０、「ドメイン名要求」コード３７、ドメイン名応答コード３８、タイムスタンプ要求コード＝１３、及びタイムスタンプ応答コード＝１４が含まれる。配信の問題について、コード＝１１は配送の「時間超過」を意味し、コード＝１２は「不良ＩＰヘッダー」を意味し、コード＝４、すなわち「送信元抑制」は、輻輳制御の場合に使用される。ＩＣＭＰデータ４６９のコンテンツはメッセージを含むことができ、また、より大きなパケットをネットワークにロードするために単に使用することができ、問題が特に大きなペイロード配信を悩ませる可能性があるか否かを調査する。
【０１８５】
図２６にも示されているように、フィールド４６０がプロトコルまたはネクストヘッダーフィールドとして示された１０進数２の均等物を含むとき、ＩＰペイロード４３５は、「インターネットグループ管理プロトコル」の頭字語であるＩＧＭＰと呼ばれる特定のネットワークユーティリティ４３５を運ぶ。ＩＰｖ４及びＩＰｖ６の両者のネットワーク診断で使用されるＩＣＭＰとは異なり、ＩＧＭＰは、ゲームまたはオンラインストリーミングなどの１対多のネットワークアプリケーションのためのＩＰｖ４マルチキャストでのみ使用される。しかし、ＩＧＭＰｖ４という用語は、ＩＧＭＰの遺産が以前のインターネットの化身から進化したため、使用されない。代わりに、ＩＧＭＰｖ２及びＩＧＭＰｖ３は、現在サポートされている唯一のプロトコルである。また、ＩＰｖ６では、マルチキャストは、マルチキャストリスナ探索を使用し、直接的には空のＩＧＭＰカプセル化を使用せずに、ＩＣＭＰｖ６上で運ばれる。ＩＧＭＰパケットは、「タイプ」４７０、「ＭＲＴ」４７１、「チェックサム」４７２、及び「ＩＧＭＰグループアドレス」４７３を含み、ＩＧＭＰデータ４７４が後に続く。
【０１８６】
ＩＧＭＰでは、タイプ４７０フィールドは、パケットの性質を「メンバシップクエリ、メンバシップレポート、または離脱グループ」コマンドとして記述し、「ＭＲＴ」４７１、すなわち最大応答時間は、最大時間制限を設定して最大１００ミリ秒のレポートを受信し、チェックサム４７２は、ＩＧＭＰパッケージ全体の１６ビットの１に対する補数の和である。放送の場合、ＩＧＭＰｖ２は、メッセージ「タイプ」４７０の設定にしたがって、ＩＧＭＰパケット及びそのペイロードのＩＧＭＰデータ４７４をＩＧＭＰグループアドレス４７３に送信し、「一般クエリ」は、全てのホスト、すなわち２２４．０．０．１にマルチキャストを送信し、「離脱グループ」は同様に全てのルータ、すなわち２２４．０．０．２にメッセージを送信する。ＩＧＭＰｖ２の「グループ特有のクエリ」及び「メンバシップレポート」では、クエリまたはレポートされたグループのみが、コミュニケに関与する。ＩＧＭＰｖ３では、より包括的なメンバシップクエリが、接続された全ての相手を定義することができる。ＩＣＭＰ及びＩＧＭＰの他に、他のデータグラムは独自のプロトコルを含み、送信元及び宛先ＩＰアドレスが事前に設定され、特有の形式を使用して通信する必要がある。それ以外の場合には、ＩＰペイロード４３５は、一般に、ＴＣＰまたはＵＤＰトランスポートレイヤ４プロトコルに従うデータを含む。
【０１８７】
ＯＳＩレイヤ４  トランスポートレイヤ
【０１８８】
ＯＳＩトランスポートレイヤ４の機能は図２７に示されており、対応する通信スタック４８２Ａ〜４８２Ｃを有するコンピューティング、及びデータストレージブロック４８３Ａ〜４８３Ｃを含む３つのネットワーク接続デバイス４８０Ａ〜４８０Ｃが、共通のネットワーク４８１を共有する。トランスポートレイヤは、通信４８４が、デバイスＡ内の通信スタック４８２Ａ、及びデバイスＢ内の通信スタック４８２Ｂの間でのみ生じることを保証する。トランスポートレイヤの目的は、２つの接続されたデバイス間の通信を制御し、ＩＰパケット及び実行されるサービスによって配信されるアプリケーションデータのタイプのためのコンテキストを提供することである。したがって、本質的には、ＯＳＩレイヤ３のネットワーク４８１は、デバイスの任意の組み合わせの接続を可能にし、ＯＳＩレイヤ４のトランスポートレイヤは、２つの特定のデバイスの通信を保証する。
【０１８９】
現在使用されている２つの主なプロトコルは、ＴＣＰ及びＵＤＰである。「送信制御プロトコル」すなわちＴＣＰでは、デバイス間の通信接続はハンドシェイクのプロセスによって保証され、ＩＰパケットが次のパケットに送信される前に、パケット交換ネットワークを介して確実かつ正確に配信されたことを確認する。ＴＣＰハンドシェイクを使用すると、ローカルエリアネットワーク、イントラネット、または公衆インターネットを含む「無接続の」パケット交換通信システムであっても、「接続」が保証される。ＴＣＰは、信頼性の高い、エラーチェックされた、適切な順序の一連のデジタルバイトの高精度配信を保証するが、タイムリーな配信は保証しない。ＴＣＰは、電子メール、ファイル転送、ウェブブラウザ、遠隔端末機能、及びセキュアシェルを含む、様々なコンピュータプログラム、ファイル、テキスト、ビデオ、及び音声通信を含む、時間的制約のないペイロードを配信するために使用される。時間的制約のあるペイロードの場合、ＵＤＰなどのリアルタイムアプリケーションに適した他のプロトコルが優先される。
【０１９０】
［伝送制御プロトコル（ＴＣＰ）］
ＯＳＩのレイヤ７で操作されるＴＣＰは、ネットワークまたはインターネットレイヤ３及び上位アプリケーションレイヤの中間レベルで機能する。ＩＰパケットの配信時、ＴＣＰは、ネットワーク輻輳、パケットの欠落、トラヒック負荷分散、及び順序の乱れた配信による予期しないネットワーク動作を修正することができる。ＴＣＰは、これらの問題及びその他の問題を検出し、必要に応じて紛失したデータの再送信を要求し、順序の乱れたデータを再配置し、中程度のネットワーク輻輳でさえ可能な限り緩和する。ＴＣＰトランスポートレイヤによって配信されるＩＰパケットを、ＴＣＰ／ＩＰデータグラムと呼ぶことができる。パケット配信中は、タイマーが使用され、配信時間を監視する。パケットが配信する前に時間が経過すると、パケットを再送する要求が行われる。ＴＣＰパケットは、ＩＰパケットのパイロード内にカプセル化される。受信したＴＣＰパケットはバッファリングされ、アプリケーションに配信するために再構成される。
【０１９１】
ＴＣＰパケットが、意図されるアプリケーションまたはサービスを識別するために、ＴＣＰは「ポート」と呼ばれるデジタル識別を利用する。ポートは、ホスト及び実行されたサービスの両方を指定することによって、ネットワーク上のトランザクションを一意に識別するために使用される番号である。ポートは、ＴＣＰまたはＵＤＰによって採用され、ウェブサービス（ＨＴＴＰ）、メールサービス（ＳＭＴＰ）、ファイル転送（ＦＴＰ）など、様々なＩＰサービスと、アプリケーションとを区別する。通信デバイスは、レイヤ３ＩＰアドレス及びレイヤ４ポートの両方の組み合わせを利用して、ＰＨＹレイヤ１及びデータリンクレイヤ２を含む物理ネットワークから上位ＯＳＩアプリケーションレイヤ５以上の情報交換を制御する。
【０１９２】
図２８Ａに示す各ＴＣＰパケット５００は、ＴＣＰヘッダー５０６及びそのＴＣＰペイロード５０７を含む。ＴＣＰヘッダー５０６の機能の詳細は、図２８に示す表５０８に要約されており、ＴＣＰヘッダー５０６は、「オフセット、予約、フラグ、ウィンドウサイズ、緊急ポインタ及びオプション」フィールドと同様に、送信元ポート５０１、宛先ポート５０２、シーケンス番号５０３、確認応答番号５０４を含む。また、パケットの整合性を確認するためのチェックサム５０５を含む。シーケンス番号５０３は、複数のパケットの順序を追跡するために使用され、ＴＣＰヘッダー５０６の「フラグ」フィールド内のＳＹＮフラグの状態に依存する。「確認応答」フィールドは、ハンドシェイクプロセスで使用される。ＴＣＰヘッダー５０６の「フラグ」フィールドのＡＣＫフラグがバイナリ１に設定されている場合、確認応答フィールドは、受信機が予期している次のシーケンス番号であり、その後の全てのパケット受信を確認応答する。
【０１９３】
データ「オフセット」は、ＴＣＰヘッダー５０６のサイズ、すなわちＴＣＰパケット５００のデータグラムの開始からＴＣＰペイロード５０７の開始までのヘッダーの長さを、２Ｂ長の５つのワードから２Ｂ長の１５のワードの範囲の、２Ｂ（３２ビット）長のワードの数に指定する。予約ビットは、この時点では使用されない。フラグフィールドは、隠蔽、輻輳、緊急性、パケット確認応答、プッシュ機能、接続リセット、シーケンシング、及び送信者からのそれ以上ないデータに部分的に関連する９のバイナリフラグを含む。ウィンドウサイズは、送信者が１パケットで受信する最大バイト数を指定する。チェックサムは、ＴＣＰヘッダー５０６及びＴＣＰペイロード５０７の両者のエラーチェックのための２Ｂ（１６ｂ）チェックサムを含む。ＵＲＧフラグがバイナリ１にセットされている場合、「緊急ポインタ」フィールドは、送信される最後の緊急データバイトを示す。
【０１９４】
ＴＣＰ／ＩＰに基づくパケット通信では、ハンドシェイクはデータの保全性を保証するための鍵となる特徴である。図２９の時間ｔ＝０に示すように、ノートブック５１０は、ウェブサーバ５１１にＴＣＰ／ＩＰパッケージを送信し、ウェブサーバ５１１は、ともに持続時間Δｔａを必要とするＴＣＰヘッダー５１２Ａ、ＴＣＰペイロード５１３Ａ、及びトラベルタイム５１４ＡにＴＣＰ／ＩＰパッケージを送信する。その後、ＴＣＰヘッダー５１２３Ｂ、及びヌルフィールド５１３Ｂを含む、ウェブサーバ５１１からノートブック５１０への確認応答が続き、持続時間Δｔｂを必要とする。組み合わされたインターバルであるタイムスロットｔ１＝Δｔａ＋Δｔｂは、ＴＣＰ／ＩＰパケットを送信して確認するための最小時間を表し、所期パケット配信の約２倍の時間である。そのとき初めて、ＴＣＰヘッダー５１２Ｃ及びＴＣＰペイロード５１３Ｃを含む第２パケットを配信することができる。パケットが破損または失われた場合、パケットを再送信して確認し、配信持続時間をｔ１から２ｔ１に増やす必要がある。パケットが複数「ｎ」回再送される必要がある場合、ただ１つのパケット持続時間はｎｔ１を含む。ビデオ及びＶｏＩＰなどの時間の影響を受けやすいパケットを配信する際、ＴＣＰ転送を使用した可変時間遅延は、極めて問題点が多い。要約すると、ＴＣＰ／ＩＰパケットは次の特徴を有する。
【０１９５】
・確実性  ＴＣＰ／ＩＰは、確認応答、エラーチェック、再送信要求、及びタイムアウトの特徴を管理することで配信を保証する。
・重量  ＴＣＰ／ＩＰは、長く複雑なヘッダーを有する大きなトランスポートレイヤパケットを使用し、ホスト及びクライアント間に接続「ソケット」を確立するために少なくとも３つのパケットを必要とする。
・可変／遅いレート  ハンドシェイキングのために、ＴＣＰ／ＩＰのデータレートは可変であり、ＵＤＰより著しく遅く、ビデオ及びＶｏＩＰなどのリアルタイムアプリケーションにとってＴＣＰは好ましくない。
・順序付け  ＴＣＰは、順序通りに受信されなかった任意のパケットをバッファリングし、再順序付けする。
・輻輳制御  ＴＣＰはいくつかの特徴を提供し、ＵＤＰで使用できない輻輳を管理する。
・エラーチェック  ＴＣＰ／ＩＰパケットは、受信された場合には整合性をチェックされ、パケットが破棄された場合や破損した場合には再送信される。
【０１９６】
［ユーザデータグラムプロトコル（ＵＤＰ）］
ＴＣＰの代替として、「ユーザデータグラムプロトコル」すなわちＵＤＰは、コネクションレスの伝送モードを採用し、１つは最小限のプロトコルであり、パケット配信のハンドシェイク確認はない。ネットワークの基本的な不安定さに敏感であるため、ＵＤＰは、配信確認も、パケットの順序付けまたは複製の保護も提供しない。しかし、データの整合性を確認するためにチェックサムを使用する。ＵＤＰは、時間の影響を受けやすいアプリケーション、またはエラーチェック及び修正が不要であるか、事後にアプリケーションで実行される用途に最適であり、ネットワークレベルでこのようなプロセスのオーバーヘッドを回避する。
【０１９７】
図３０に示すＵＤＰ５２９パケットは、ＵＤＰヘッダー５２０及びＵＤＰペイロード５２４を含む。表５２５で説明されるＵＤＰヘッダー５２０は、２Ｂ長の送信元ポートアドレス５２１、２Ｂ長の宛先ポートアドレス５２２、ＵＤＰのパケット長フィールド５２３、及びチェックサム５２３の４つのフィールドのみを含む。ＵＤＰポートアドレスは、ＴＣＰ／ＩＰパケットと同じフォーマットを使用する。ＵＤＰのパケット長フィールド５２３は、ＩＰｖ６における最小長８Ｂから最大長６５，５３５Ｂまでの範囲である。実施上の配慮点として、最大のチェックサム長は、ＩＰｖ４プロトコルではわずか６５，５０７Ｂに制限されている。
【０１９８】
２Ｂのチェックサム５２３は、ＵＤＰペイロード５２４とＵＤＰヘッダー５２０からのデータとを組み合わせた長さのエラー検出に使用されて、擬似ヘッダーにアルゴリズム的に変更され、ＩＰアドレス及びＩＰヘッダーから借りた他のフィールドを含む。擬似ヘッダーは、データグラムに明示的に存在することは決してないが、エラーチェックの目的のために、ＩＰヘッダー及びＵＤＰヘッダーで利用可能なデータから作成される、すなわちアルゴリズム的に合成される。擬似ヘッダー形式及びチェックサム値は、ＩＰｖ４及びＩＰｖ６ベースのＵＤＰパケットで異なる。チェックサム機能はＩＰｖ４ではオプションであるが、ＩＰｖ６での使用は必須である。使用されていないときは、フィールドに０のデジタル値がロードされる。ＵＤＰヘッダー５２０の後、ＵＤＰペイロード５２４は、ＩＰｖ４での０Ｂから６５，５０７Ｂまでの可変長で続く。
【０１９９】
要約すると、ＵＤＰ及びＴＣＰ／ＩＰの両者を、パケット交換通信ネットワークを横断するＩＰパケットのレイヤ４トランスポートに使用することができる。ＵＤＰパケットの特徴は以下の通りである。
・不確実性  ＵＤＰは、配信を保証するものではなく、失われたパケットを検出することもできない。ＵＤＰには、失われたパケットを識別するため、再送信を要求するため、または配信中のタイムアウト状態を監視するための仕組みが存在しない。
・軽量  ＵＤＰは、多くのＴＣＰ機能及び関連するパケットオーバーヘッドのない最小サイズのヘッダーを有する小さなトランスポートレイヤを使用する。
・遅さ  サイズの小さいものとして、ＵＤＰパケットは急速に配信され、失われた、または破損したパッケージの配信または再送信のハンドシェイク確認を必要としない。データレートは最低でもＴＣＰの２倍であり、ＴＣＰパケットの再送信を伴う場合より４倍高速である。不安定なネットワークでは、再送信要求はＴＣＰパケットの配信を完全に妨害する可能性がある。
・順序不同  パッケージが受信された順序は、送信されたときの順序と同じではない可能性がある。アプリケーションは、シーケンス外のパケットを並べ替えるために十分スマートでなければならない。
・輻輳制御なし  小さなパケットオーバーヘッドのアーチファクト以外のＵＤＰは、輻輳制御手段などがアプリケーションレベルで実装されていない限り、輻輳を回避しない。
・エラーチェック  ＵＤＰパケットは、受信された場合に限り、整合性がチェックされる。エラーの場合、パケットは再送信の要求なしで廃棄される。
【０２００】
［レイヤ４ポートの使用］
ポートは、パケット交換ネットワーク通信におけるトランスポートレイヤであるレイヤ４の実装において重要な役割を果たす。中でも特に、ポートは、サーバまたはデバイスによって提供されるアプリケーションまたはサービスを識別するのに役立ち、個々のクライアントを混在させることなく複数のユーザが同じサーバで対話できるようにするのに役立ち、ホストツークライアント及びクライアントツーホスト交換のために異なるポートペアを使用する全二重通信をサポートする手段を提供し、ＮＡＴ、つまりネットワークアドレストランスレータの操作を容易にして、ユーザの利用可能なＩＰアドレスの数を増やすが、インターネットに直接接続するコスト及び接続数を制限する。
【０２０１】
データグラムのホストクライアント交換の例が図３１Ａに示されており、タブレットまたはノートブックのいずれかであるクライアントのデバイス５２６Ｂは、ホスト５２６Ａ、一般的にはウェブサーバから、ウェブページを要求する。交換において、クライアントのデバイス５２６Ｂは、数値「ＩＰアドレスＢ」を有するＩＰアドレス５２７Ｂを有するレイヤ３ＩＰヘッダー５２９を含むＩＰデータグラムを、数値「ＩＰアドレスＡ」を有するＩＰアドレス５２７Ａのホストサーバに送信する。レイヤ３データグラムのペイロード内にカプセル化され、クライアントは、アドホック値９，９９９を有する自身の送信元ポート番号５２８Ａを含むレイヤ４トランスポートヘッダー５３０も送信する。ポート要求は、ホストポートに送信され、予約されたＨＴＴＰポート５３８Ａは、ウェブページのウェブブラウザのダウンロードに使用される。したがって、要求ポート番号９，９９９は、次のオープンポート番号からアドホリックな方法で任意に割り当てられるが、宛先ポートは、ウェブページ要求として、要求されたサービスに対する特定の意味を有する。
【０２０２】
このウェブページ要求に使用されるＩＰデータグラムの簡略化バージョンが図３１Ａの下部に示され、レイヤ３ＩＰヘッダー５２９、レイヤ４トランスポートヘッダー５３０、及びＩＰパケットペイロード５３６が含まれる。レイヤ３ＩＰヘッダー５２９内では、送信元ＩＰアドレス５３１は、数値「ＩＰアドレスＢ」を有し、宛先ＩＰアドレス５３２は、数値「ＩＰアドレスＡ」を有する。レイヤ４トランスポートヘッダー５３０内の送信元ポート５３３は、ポート番号の数値「９，９９９」を有し、宛先ポート５３４は、ポート番号の数値「８０」を有する。ＩＰパケットペイロード５３６は、レイヤ５からレイヤ７のアプリケーションデータを含むペイロード（データ）フィールド５３５を含む。
【０２０３】
図３１Ｂは、クライアントのサービス要求に対する応答を示す。図示のように、矢印の全ての方向が反転され、全ての送信元及び宛先ＩＰアドレス、及びポート番号が前の図から置き換えられる。交換時には、数値「ＩＰアドレスＡ」を有する送信元ＩＰアドレス５３１から、数値「ＩＰアドレスＢ」を有する宛先ＩＰアドレス５３２に、レイヤ３ＩＰヘッダー５３７を含むＩＰデータグラムが送信される。レイヤ３データグラム内にカプセル化されると、レイヤ４トランスポートヘッダー５３８は、ポート番号の数値「８０」を有する送信元ポート５３３、及びポート番号の数値「９，９９９」を有する宛先ポート５３４を含む。ＩＰパケットペイロード５３９内に埋め込まれているとき、サービス要求に対する応答はペイロード（データ）５３６であり、ウェブページを作成するためのＨＴＭＬコードを含むことができる。
【０２０４】
したがって、サーバの選択時に必要に応じて一部のポート番号が開かれ、割り当てられるが、他のポート番号は、ＵＤＰパケット、ＴＣＰパケット、またはその両者の使用のために予約されている。共通の公式予約ポート番号のリストが図３１Ｃに表され、ＴＣＰのみを使用したＨＴＴＰウェブブラウジングのための周知のポート８０、ファイル転送のためのポート２０、ポート２３のテルネット、ポート１１０のみのＴＣＰのためのＰＯＰ３電子メール、ポート２２０のＩＭＡＰ３電子メール、及びＨＴＴＰＳ、ＩＭＡＰＳ、ＴＳＬ／ＳＳＬ経由のＦＴＰなどの、様々なセキュリティを確保したバージョンを含む。しかし最近では、本質的なトランスポートレイヤのセキュリティ方法であるＳＳＬセキュリティが、このアプリケーションの冒頭の見出しの１つに記載されているように、特定の種類の攻撃に対して脆弱であることが明らかになった。レイヤ４のエコー機能及びピン機能に使用されるポート７は、レイヤ３のＩＣＭＰ機能によって大きく書き換えられている。
【０２０５】
図３１Ｄの表は、ポート番号の範囲及びその用途を示している。図示のように、予約されたポート番号は、ポート番号が０から１，０２３の範囲では「システムポート」として一般的に発生するが、ポート番号が４９，１５２より大きい場合には、ポートは、一般的にオープンかつ自由に利用可能である。中間範囲、つまりポート番号が１，０２４から４９，１５１の間では、大きなブロックが開き動的ポート割り当てに使用できるが、一部の予約ポートも存在する。より一般的には、大企業はソフトウェアで特定のポートの専用使用を報告する可能性があるが、ポート番号を正式に登録することはない。「公式」及び予約ポート番号は厳格に管理されていないが、それにも関わらず、企業がインターネット及び他のビジネスとのシステム及びソフトウェアの相互運用性を保証したいため、幅広いサポートを受ける。
【０２０６】
ポートは、「ファイアウォール」を容易にするためにも使用され、特定のサービスのコンピュータ、サーバ、またはデバイスへの不正アクセスを防止するか、少なくとも禁止する。例えば、イントラネット上、すなわちＮＡＴの背後に位置する専用ネットワーク上に位置するか、専用ネットワークセキュリティボックスによって保護されている任意のサーバは、インターネット開始される特定のタイプのサービス要求に限定することができる。例えば、ファイアウォールがポート８０の要求をブロックし、ＨＴＴＰサービス要求を無効にし、インターネットからのウェブページのダウンロードを妨げるように設定することができる。あるいは、ファイアウォールがインターネットからのポート２５サービス要求のみを許可し、他のポートは有効にしないよう設定することができる。このような場合、ファイアウォールはシンプルメールトランスファプロトコル、すなわちＳＭＴＰサービス要求を許可し、イントラネットからインターネットへの電子メール送信を可能にするが、他の全てのタイプのトランザクションをブロックする。厳しいファイアウォール方法などの問題は、追加されたセキュリティが多くの有効なトランザクションをブロックし、現場の従業員及びベンダーが仕事を遂行するために必要な重要な情報にアクセスできないことである。
【０２０７】
ポートのもう１つの用途は、ＩＰｖ４  ＩＰアドレスのポートが枯渇する日付を遅らせることである。全ての人が各個人のデバイスに複数の専用ＩＰアドレスを割り当てるのではなく、ケーブルプロバイダ、パブリックＷｉＦｉオペレータ、携帯電話キャリアなどのインターネットサービスプロバイダすなわちＩＳＰは、インターネットＩＰアドレスを動的にリサイクルし、プライベートＩＰアドレスを使用してインターネットゲートウェイ及びプライベートクライアントの間で通信する機能を有する。このようにして、単一のインターネットＩＰアドレスは、アップストリームの接続帯域幅が十分速く、トラヒックをサポートすることができる場合、クラスＢサブネットは６５，５３４人のユーザ、クラスＣサブネットは２５４人のユーザに利用され得る。
【０２０８】
この１つのＩＰアドレスから複数のＩＰアドレスへの双方向変換及び通信を実行するデバイスは、「ネットワークアドレス交換プログラム」すなわちＮＡＴと呼ばれる。図３２Ａに示すように、ＮＡＴ５５０は、ＩＰアドレス及びポート番号変換ブロック５５４と、インターネット接続通信スタック５５３Ａ及びインターネットの通信スタック５５３Ｂを含む２つの通信スタックとを含む。インターネット接続通信スタック５３３Ａは、パブリックネットワーク５５１を介してサーバ２１Ａ、電子メールサーバ２７、及びウェブサーバ５１１などの他の全てのインターネット接続デバイスに接続する。トランスポートレイヤ４では、インターネット接続通信スタック５５３Ａは、５５７Ａ及び５５７Ｂなどの複数のデバイスとの同時通信を管理する。図示の例では、非公開ネットワーク５５２は、ノートブック３５、冷蔵庫などの家電製品３４、デスクトップ３６、及び家庭のＷｉＦｉルータ６２Ａなどの様々な家電機器をクラスＣサブネットの通信スタック５５３Ｂに接続する。プライベートネットワークでは、レイヤ４トランスポートプロトコルは、例えばレイヤ４接続５５６Ａ及び５５６Ｂのように、通信スタック５５３Ｂ及びネットワーク接続されたデバイスの間の通信を管理する。プライベートネットワーク及びパブリックネットワーク間の情報交換をサポートする上で、ＩＰアドレス及びポート番号交換ブロック５５４は、アドホックな交換テーブル５５５を動的に構築して、各プライベートネットワークパケット送信をパブリックネットワークに、及びその逆にマッピングする。
【０２０９】
ＮＡＴの操作が図３２Ｂに示されており、「ＮＡＴの背後にある」プライベートネットワークに接続されたデスクトップ３６及びノートブック３５は、インターネットに接続された単一のパブリックＩＰアドレスのみを介してインターネット接続されたウェブのサーバ２１Ａ及び電子メールサーバ２７と同時に通信しようとする。図示された例では、ノートブック３５は、「ＮＢ」として示されたＩＰアドレス及び動的ポート割り当てを有し、デスクトップ３６は、「ＤＴ」として示されたＩＰアドレス及び動的ポート割り当てを有し、ウェブのサーバ２１Ａは、「Ｓ１」として示されたＩＰアドレスを有し、ＨＴＴＰベースのウェブページサービスのためにポート８０を使用し、電子メールサーバ２７は、「Ｓ２」として示されたＩＰアドレスを有し、ＩＭＡＰベースの電子メールサービスのためにポート１１０を使用する。インターネット上では、ＮＡＴ５５０は、パブリックＩＰアドレス「Ｎ」を共有し、動的ポート割り当てを使用する。
【０２１０】
操作中、ノートブック３５は、宛先ＩＰアドレスＳ１及びポート８０の送信元ＩＰアドレス「ＮＢ」及び任意のポート番号９９９９からウェブのサーバ２１ＡへのＩＰパケット５６０Ａによるウェブページ要求を開始する。同時に、デスクトップ３６は、宛先ＩＰアドレスＳ２及びポート１１０の送信元ＩＰアドレス「ＤＴ」及び任意のポート番号１０２００から電子メールサーバ２７へのＩＰパケット５６１Ａによる電子メール要求を開始する。これらの要求を受信すると、ＮＡＴ５５０は着信メッセージを発信インターネット接続にマッピングし、アドレス変換を変換テーブル５５５にマッピングする。ＮＡＴはその後、宛先ＩＰアドレスＳ１及びポート番号９９９９を保持することによってノートブック３５からの要求を転送するが、変換された送信元ＩＰアドレス「Ｎ」及び送信元ポート番号２００００を用いて、ノートブック３５からＮＡＴ５５０へのソース情報を交換して、インターネットの要求ＩＰパケット５６０Ｂを作成する。
【０２１１】
同様に、ＮＡＴ５５０は、宛先ＩＰアドレスＳ２及びポート番号９９９９を保持することによってデスクトップ３６から電子メールサーバ２７への要求を転送するが、変換された送信元ＩＰアドレス「Ｎ」及び送信元ポート番号２０４００を用いて、デスクトップ３６からＮＡＴ５５０へのソース情報を交換して、インターネットＩＰパケット５６１Ｂを作成する。このようにして、ウェブのサーバ２１Ａ及び電子メールサーバ２７の両者はＮＡＴ５５０と通信しているとみなしており、ノートブック３５及びデスクトップ３６からの要求について全く知らない。事実、ＮＡＴサブネット上に接続されたアドレス「ＮＢ」または「ＤＴ」のようなデバイスによって使用されるＩＰアドレスは、インターネット上で有効なアドレスではなく、ＮＡＴ５５０の介入なしに直接接続することはできない。
【０２１２】
ウェブのサーバ２１Ａが要求ＩＰパケット５６０Ｂを受信すると、ウェブページを構築するためのＨＴＭＬコードを送信することによって応答し、ＩＰパッケージ５６０Ｃによって、送信元ＩＰアドレス「Ｓ１」及びポート「８０」から、宛先ＩＰアドレス「Ｎ」及びポート番号２００００にルーティングされる。変換テーブル５５５を参照することによって、ＮＡＴは、ポート番号２００００への応答がノートブック３５からの要求に対応していることを知り、宛先ＩＰアドレス及びポート番号をノートブックのＩＰアドレス及びポート番号、すなわちＩＰアドレス「ＮＢ」及びポート番号９９９９にスワップして応答ＩＰパケット５６０Ｄを作成することによって、メッセージを転送する。
【０２１３】
このトランザクションと平行して、ＮＡＴ５５０からの要求ＩＰパケット５６０Ｂを受信すると、電子メールサーバ２７は電子メールを含む送信ＩＭＡＰコードを応答し、ＩＰパッケージ５６１Ｃによって送信元ＩＰアドレス「Ｓ２」及びポート１１０から、宛先ＩＰアドレス「Ｎ」及びポート番号２０４００にルーティングされる。変換テーブル５５５を参照することによって、ＮＡＴは、ポート番号２０４００への応答がデスクトップ３６からの要求に対応していることを知り、宛先ＩＰアドレス及びポート番号をデスクトップのＩＰアドレス及びポート番号、すなわちＩＰアドレス「ＤＴ」及びポート番号１０２００にスワップして応答ＩＰパケット５６１Ｄを作成することによって、メッセージを転送する。このようにして、複数のユーザは、単一のＩＰアドレスを介して複数のインターネット接続されたデバイス及びサイトに別々にアドレス指定することができる。
【０２１４】
［その他のレイヤ４トランスポートプロトコル］
ＴＣＰ及びＵＤＰのレイヤ４スーパーセットとして操作する場合、またはＵＤＰ及びＴＣＰの上位で実行されている単なる上位レイヤのアプリケーションプログラムである場合、ＴＣＰ及びＵＤＰ以外に、他の共通トランスポートプロトコルが、独特かつ独立したレイヤ４プロトコルとして操作するか否かについてのコンセンサスは一般的にない。
【０２１５】
このような１つのプロトコルである「データグラム輻輳制御プロトコル」、すなわちＤＣＣＰは、ストリーミングメディア及びマルチプレイヤオンラインゲームなどの、データ配信にタイミング制約のあるアプリケーションに役立つ輻輳制御を管理するためのメッセージ指向のトランスポートレイヤプロトコルであるが、ＴＣＰで利用可能な順序外のパケットの配列が欠けている。スタンドアローンベースで使用することもできるが、ＤＣＣＰの別のアプリケーションは、ＵＤＰベースのアプリケーションに輻輳制御機能を提供するはずである。データトラヒックの搬送に加え、ＤＣＣＰには、いつパケットが到着したか、及び「明示的輻輳通知」すなわちＥＣＮによってタグ付けされたか否かを送信者に知らせる肯定応答トラヒックが含まれる。
【０２１６】
パケット、特にテキストのタイムリーな配信を管理する別の試みは、ＵＤＰのマルチキャストオプションに基づいたＬＣＭ（Lightweight Communication And Marshaling）である。ＵＤＰユニキャストとは対照的に、ＵＤＰマルチキャストの利点の１つは、複数のアプリケーションが単一のホスト上で一貫して動作すること、または複数のプラットフォームにまたがって動作することである。ネットワーク待ち時間を最小限に抑えるよう目指すこと以外に、他のレイヤ４プロトコルは、データを「トンネリング」して仮想プライベートネットワーク、すなわちＶＰＮを作成するために使用され、インターネット上、及びインターネットを介して動作する。このようなＵＤＰベースのプロトコルの１つは、ＧＲＥ（Generic Routing Encapsulation）、ＰＰＴＰ（Point-To-Point Tunneling Protocol）、ＳＳＴＭ（Secure Socket Tunneling Mechanism）、ＳＳＨ（Secure Shell）などである。いくつかのＶＰＮ実装はセキュリティを向上させる意味を有するが、実際にはネットワーク待ち時間が増加する。
【０２１７】
ＵＤＰ及びＴＣＰの前述の標準化されたレイヤ４トランスポートプロトコル以外に、プロプライエタリ・プロトコルの採用率がどのようなものであるか、及びＩＰパケットの破損を犠牲にして待ち時間の低下を保証すること、または待ち時間の増加を犠牲にしてセキュリティを保証することで生じるトレードオフがどのようなものであるかは不明である。
【０２１８】
ＯＳＩレイヤ５、６、及び７−アプリケーションレイヤ
【０２１９】
ポート＃が、要求されたサービスのタイプを特定している間、アプリケーションはレイヤ４ペイロードとしてカプセル化されたデータの性質を理解しなければならない。供給されたパッケージの内容に基づいてアクションを起こすことは、上位ＯＳＩアプリケーションレイヤ、すなわちレイヤ５、６、７の役割である。アプリケーションレイヤにおける複数のデバイスの相互接続は、図３３のブロック図に図示されており、３つのデバイス５７０Ａ、５７０Ｂ、及び５７０Ｃは、それぞれ別個のコンピューティング及びデータストレージ能力部５７３Ａ、５７３Ｂ及び５７３Ｃを有し、共有アプリケーションレイヤ接続５７１を共有するそれぞれの対応する通信スタック５７２Ａ、５７２Ｂ及び５７２Ｃによって接続される。実際には、デバイスには全てのＯＳＩレイヤでの接続が含まれているが、簡単にするため、アプリケーションレイヤの接続のみが示されている。
【０２２０】
パケット交換ネットワークへの接続の他に、デバイスがアプリケーションレイヤで通信を確立するための主なルールは、全ての通信デバイス上に同じまたは互換性のあるアプリケーションが存在しなければならない、ということである。例えば、銀行プログラムはビデオゲームプログラムを理解することができず、ＣＡＤプログラムはＨＤビデオストリーミングを解釈できず、音楽プレイヤは株式市場取引を行うことができない。多くのアプリケーションプログラムは、ある企業またはベンダーにとってカスタム品または独自のものであるが、いくつかのアプリケーションとサービスはどこにでも存在し、場合によっては政府によってオープンソース環境でも動作することを要求されている。例えば、マイクロソフト（登録商標）社がＯｕｔｌｏｏｋ（登録商標）メールサーバを明示的かつ排他的にマイクロソフト・ウィンドウズ（登録商標）にリンクしようとしたとき、欧州連合（ＥＵ）の裁判所はそのような行為が反トラスト法に違反していると裁定し、マイクロソフトにメールアプリケーションを、それが動作するオペレーティング環境への明確な接続を持つスタンドアロンプログラムとしてリリースするよう強制した。その後、マイクロソフト（登録商標）のメールプロトコルと機能を使用して、複数のコンピューティングプラットフォーム上に多数の競合するメールプログラムが登場した。
【０２２１】
アプリケーションレイヤ５、６、７の区別は微細なものである。結果として、多くの人々は、７レイヤのＯＳＩモデルでレイヤをまとめて「アプリケーションレイヤ」、「上位レイヤ」または単にレイヤ７と呼んでいる。後者の解釈では、レイヤ７は真のアプリケーションとみなされ、レイヤ５とレイヤ６はコンピュータプログラムのサブルーチンコールと同様にサービスを提供するためのレイヤとみなされる。問題をさらに混乱させる点としては、７レイヤＯＳＩモデルと競合するパケット交換ネットワークの代替的な５レイヤ記述は、３つのアプリケーションレイヤ全てを１つのレイヤに統合し、これはレイヤ５と呼ばれるが、ＯＳＩモデルにおけるレイヤ７に近い構成である。
【０２２２】
［セッションレイヤ５］
７レイヤＯＳＩモデルでは、レイヤ５を「セッションレイヤ」と呼び、二重通信、半二重通信、または単信通信方式の管理を含む、アプリケーション間の対話を調整するとともに、チェックポイントの設定、リカバリ、及びＴＣＰセッションの正常終了を提供する。セッションレイヤはまた、「リモートプロシージャコール」すなわちＲＰＣを使用するアプリケーション環境で、リモートアプリケーションの接続を明示的に確立、管理及び終了する。レイヤ５は、１つのアプリケーションが他のアプリケーションのプロセスへのアクセスを要求したとき（例えば、Ｅｘｃｅｌ（登録商標）からＰｏｗｅｒＰｏｉｎｔ（登録商標）にチャートをインポートするなど）のアプリケーション間セッションの管理も扱う。別のレイヤ５アプリケーション、「ソケット・セキュア」すなわちＳＯＣＫＳは、プロキシ・サーバを介してサーバとクライアントの間でＩＰパケットをルーティングし、許可されたユーザのみにサーバ・アクセスを制限するための「認証」を実行するために使用されるインターネットプロトコルである。したがって、アクセスと権限を付与または拒否するユーザＩＤに依拠していることから、ＳＯＣＫＳセキュリティは採用された認証プロセスほど堅牢ではない。
【０２２３】
動作中、ＳＯＣＫＳはプロキシとして動作し、任意のＩＰアドレスを介してＴＣＰ接続をルーティングし、ＵＤＰパケットの転送サービスを提供する。クライアントがＳＯＣＫＳを使用してファイアウォールによってサーバ・アクセスからブロックされている場合、クライアントはＳＯＣＫＳプロキシに接続して、そのクライアントがサーバに接続するために望む接続を要求する可能性がある。ＳＯＣＫＳプロキシは、サーバによって受け入れられると、ファイアウォールを介して接続を開き、ファイアウォールが存在しないかのようにサーバとクライアント間の通信を容易化する。ＳＯＣＫＳは、ＨＴＴＰベースのプロキシより下のレイヤで動作し、ハンドシェイク方式を使用して、クライアントがパケットヘッダーを解釈または書き換えをせずに作成しようとしている接続についてプロキシソフトウェアに通知する。接続が確立されると、ＳＯＣＫＳはネットワークユーザに対してトランスペアレントに動作する。ＳＯＣＫＳ４と呼ばれる新しいバージョンのＳＯＣＫＳは、クライアントがＩＰアドレスを要求するのではなく宛先ドメイン名を指定できるようにソフトウェアを拡張した。
【０２２４】
ＳＯＣＫＳは、許可されたユーザを識別するために使用される認証プロセスと同程度の堅牢さしかなく、ハッカーや犯罪者によってファイアウォールのセキュリティ対策を無効にする手段に変換される可能性がある。この脅威と戦うために、ＳＯＣＫＳ５が、認証のためのより多くの選択肢を提供し、ＤＮＳルックアップを使用するＵＤＰ転送のサポートを追加するために開発された。ＳＯＣＫＳ５は、ＩＰｖ４とＩＰｖ６の両方のＩＰアドレスをサポートするようにアップデートされた。ハンドシェイクとセッションネゴシエーションの間、クライアントとサーバの両方は、認証に利用可能なメソッドを以下の番号で識別する。
・０ｘ００：認証なし
・０ｘ０１：ＧＳＳＡＰＩメソッド
・０ｘ０２：ユーザ名／パスワード
・０ｘ０３−０ｘ７Ｆ：ＩＡＮＡの割り当てられたメソッド
・０ｘ８０−０ｘＦＥ：私的使用のために予約されたメソッド
ネゴシエーションが完了し、認証方法が選択されると、通信が開始される。最も単純な認証手順、ユーザ名／パスワードは、特に４文字のＰＩＮタイプのパスワードでは、本質的に安全でなく、簡単に破られることが証明されている。代替の「汎用セキュリティ・サービス・アプリケーション・プログラム・インターフェース」すなわちＧＳＳＡＰＩ自体はセキュリティ方法ではなく、主にセキュリティ・サービス・ベンダーが作成したセキュリティ・コードと認証方式を含むソフトウェア・ライブラリを呼び出すＩＥＴＦ標準インターフェースである。ＧＳＳＡＰＩを使用すると、ユーザはアプリケーションコードを書き直す必要なく、セキュリティ方法を変更できる。プロシージャコールには、ユーザのＩＤ証明または秘密の暗号化鍵の取得、サーバに送信して応答トークンを受信するためのクライアントトークンまたはチャレンジの生成、アプリケーションデータの安全なまたは暗号化されたメッセージトークンへの変換及び復元などが含まれる。代替的に、非営利団体であるＩＣＡＮＮの一部門であるＩＡＮＡ（Internet Assigned Numbers Authority）は、ネットワークの安定性とセキュリティを確保するために、そのチャーターで特定の方法を割り当てている。
【０２２５】
［プレゼンテーションレイヤ６］
レイヤ６は、文字コーディング、オーディオ（音声）、ビデオ（映像）、グラフィカルフォーマットについての取り決め事の維持を含む、データとオブジェクトの構文表現を管理する。基本的には、シンタックスレイヤと呼ばれるプレゼンテーションレイヤは、ファイルと埋め込みオブジェクトを特定のアプリケーションで使用可能な形式に準備または変換し、アプリケーションレイヤ７に「提示（プレゼンテーション）」する。例えば、グラフィカルオブジェクトが所与のアプリケーションによって理解できないフォーマットで受信された場合、プレゼンテーションレイヤソフトウェアは、いつでも、そのフォーマットを所与のアプリケーションにとって受け入れ可能なものに転換または変換する。逆に、レイヤ６は、独自のフォーマットされたオブジェクトを標準フォーマットに変換し、カプセル化してセッションレイヤ５に渡すことができる。このように、レイヤ６は、データを通信及びプロトコルスタックの上下に移動させるための異なるアプリケーション間に構文的コンテキストを確立する。例えば、Ａｄｏｂｅ  Ｉｌｌｕｓｔｒａｔｏｒ（登録商標）またはＡｕｔｏＣＡＤ（登録商標）で作成したグラフィックをインポートして、ＰｏｗｅｒＰｏｉｎｔ（登録商標）プレゼンテーションまたはＨＴＴＰベースの電子メールドキュメントに埋め込むことができる。
【０２２６】
レイヤ６は、暗号化、すなわちネットワークを介して送信する前にデータをフォーマッティング及び暗号化し、逆にデータを解読し、それをアプリケーション層に提示する前に再フォーマッティングすることも担う。例えば、インターネットを介して暗号化されたフォーマットで送信されたタブ区切りのデータファイルを受信すると、レイヤ６は、ネゴシエートされた復号鍵に従ってファイルを復号化した後、行−列ベースのスプレッドシート（例えばＥｘｃｅｌ（登録商標）、またはＯｒａｃｌｅ（登録商標）などのリレーショナル・データベース、）にインポートするためにデータを再フォーマッティングすることができる。セキュリティを強化するために、レイヤ６による暗号化と復号化を、レイヤ５認証手順によって事前に識別されている認証済みの送信者と受信者に限定することができる。このようなコミュニケのセキュリティは、データファイルを隠すために使用される暗号化や、データファイルにアクセスするユーザの権利を確認するために使用される認証プロセスと同程度の水準である。
【０２２７】
プレゼンテーション層ソフトウェアは、特定のデバイスまたはオペレーティングシステムのフルカスタムベースで開発することができるが、転送可能性と相互運用性のために、「抽象構文表記法、バージョン１」すなわちＡＳＮ．１の基本的なエンコーディングルール（ＥＢＣＤＩＣでコード化されたテキストファイルのＡＳＣＩＩコード化されたファイルへの変換、オブジェクトや他のデータ構造のＸＭＬからのシリアル化などを含む）を使用してコードを構築できる。レイヤ５プレゼンテーションプロトコルとして、ＡＳＮ．１は、構造化データを特定の符号化ルールに変換（例えば、整数の送信されるビット列への変換）し、同様にＸＥＲとしても知られる「ＸＭＬ符号化規則」を使用してビット列を復号する。
レイヤ６のオペレーションでカバーされる種々のフォーマットの例として、以下のもの、
・ＡＳＣＩＩ及びＥＢＣＤＩＣ形式を含むテキスト、
・ＰＮＧ、ＪＰＧ、ＧＩＦ、ＢＭＰ、ＥＰＳを含むグラフィックス、
・ＭＰ４、ＷＭＶ、ＭＯＶ、ＡＶＩ、ＭＩＤＩを含むサウンドとビデオ、
・ＰＤＦ、ＤＯＣ、ＰＰＴ、ＨＴＭＬ、ＸＭＬ、ＭＩＭＥ、圧縮（ＺＩＰなど）を含む文書
・ＲＴＰ、ＲＴＳＰ、ＲＴＭＰを含むストリーミング、
・ＴＬＳ／ＳＳＬ、ＳＳＨなどの暗号化、
が挙げられる。
【０２２８】
［アプリケーションレイヤ７］
レイヤ７の７レイヤＯＳＩモデルでは、「アプリケーション」レイヤは、ユーザ、クライアント、またはデバイスとホスト、サーバ、またはシステムとの間のインターフェースを容易化する。アプリケーションレイヤはユーザに最も近いため、ユーザとホストの間のインターフェースを容易化する。ユーザが人間であり、ホストが携帯電話やコンピュータなどの電子デバイスである場合、このインターフェースは、キーストローク、キーボードまたはタッチスクリーンを使用するタッチまたはジェスチャ、または場合によっては音声によって容易化される。ももともとＧＵＩ、すなわちグラフィカル・ユーザー・インターフェースと呼ばれていたタッチスクリーン・インターフェースは、ヒューマン・マシン相互作用の研究に基づくインターフェース・デザインであるユーザ・インターフェース／ユーザ・エクスペリエンスという意味のＵＩ／ＵＸを意味していた。マシン・ツー・マシン（Ｍ２Ｍ）、マシン・ツー・インフラストラクチャ（Ｍ２Ｘ）では、ヒューマンインターフェースが、異なる機械語を話す異なるハードウェアデバイスに置き換えられる。
【０２２９】
これらの相違にもかかわらず、アプリケーションレイヤは、人間と機械または複数の機械が認識可能な形で互いにトークすることを可能にしなければならない。ＯＳＩモデルは通信とプロトコルスタックを扱うため、これらのインターフェースはＯＳＩモデルの範囲外であるが、通信パートナーの特定、リソースの可用性の決定、通信の同期化など、会話のネゴシエーションに重要な役割を果たす。通信パートナーを特定するとき、レイヤ７は、他の当事者に適切なソフトウェアがインストールされており、通信が許可されており、適切な資格情報を保持しているか否かを判断する必要がある。
【０２３０】
場合によっては、データ交換を開始する前に相手方のＩＤを最初に認証する必要がある。この確認は、情報交換の要求時に行われるか、あるいは、ボンディングのプロセスを介してアプリオリに、または認証、認可、及び管理を意味する３段階の手順であるＡＡＡ検証を使用してネゴシエートされ得る。ＶｏＩＰを使用する携帯電話などの通信用途では、アプリケーションソフトウェアは、許容可能なＱｏＳレベルの会話をサポートするためにネットワーク内で許容可能な小さなレイテンシーで送受信される一連のＩＰパケットを確立するために利用可能であり、十分に安定していることを確認するためのテストも行わなければならない。通信の同期化では、アプリケーション間の全ての通信には、アプリケーションレイヤによって管理される連携が必要である。
【０２３１】
アプリケーションレイヤ実装の例として、端末エミュレーション、電子メールサービス、ネットワーク管理、ウェブブラウザ、ファイル管理、バックアップ及びクラウドストレージサービス、及び周辺装置ドライバなどが挙げられ、具体的には、
・ＦＴＰ、ＦＴＡＭ、ＳＦＴＰ、ＮＮＴＰ、ＩＲＣ、ＳＩＰ、ＺＩＰなどのファイル管理、
・ＨＴＴＰを含むＷｅｂブラウザ（Ｓａｆａｒｉ（登録商標）、Ｆｉｒｅｆｏｘ（登録商標）、Ｃｈｒｏｍｅ（登録商標）、Ｏｕｔｌｏｏｋ（登録商標）、Ｎｅｔｓｃａｐｅ（登録商標）など）、
・Ｍｉｃｒｏｓｏｆｔ  Ｏｕｔｌｏｏｋ（登録商標）、Ａｐｐｌｅ  Ｍａｉｌ（登録商標）、Ｇｏｏｇｌｅ  Ｇｍａｉｌ（登録商標）、Ｙａｈｏｏ（登録商標）、Ｈｏｔｍａｉｌ（登録商標）などとともに、ＳＭＴＰ、ＩＭＡＰ、ＰＯＰ３などの電子メールサービス、
・ＳＩＰ、ＮＮＴＰ、ＩＲＣ、及び「オーバー・ザ・トップ」（ＯＴＴ）のカスタム実装を含む通信及びブロードキャストサービス、
・ＤＮＳ、ＳＮＭＰ、ＤＨＣＰ、ＳＮＭＰ、ＢＧＰ、ＬＤＡＰ、ＣＭＩＰなどのネットワーク管理、
・Ｔｅｌｎｅｔを含む端末エミュレーション、
・ＮＦＳ、商用バージョンのＡｎｄｒｏｉｄ、ｉＯＳ（登録商標）、Ａｐｐｌｅ  Ｔｉｍｅ  Ｍａｃｈｉｎｅ（登録商標）、Ａｐｐｌｅ  ｉＣｌｏｕｄ（登録商標）、Ｃａｒｂｏｎｉｔｅ（登録商標）、Ｂａｒｒａｃｕｄａ（登録商標）、Ｄｒｏｐｂｏｘ（登録商標）、Ｇｏｏｇｌｅ  Ｄｒｉｖｅ（登録商標）、Ｍｉｃｒｏｓｏｆｔ  Ｏｎｅ  Ｄｒｉｖｅ（登録商標）、Ｂｏｘなどのバックアップ及びクラウドストレージサービス、
・プリンタ、スキャナ、カメラ、フラッシュカードを含む周辺機器ドライバ、
・Ｓｙｍａｎｔｅｃ、Ｎｏｒｔｏｎ（登録商標）、ＡＶＧなどのセキュリティアプリケーション
などが挙げられる。コンピュータやスマートフォンアプリケーションでは、最も一般的なアプリケーションの例として、ファイル転送、Ｗｅｂブラウジング用のハイパーテキスト転送、電子メールサービス、ドメイン名をＩＰアドレスに変換するＤＮＳルックアップなどが挙げられる。そのユビキタス性のため、これらの汎用アプリケーションには、そのようなサービスに割り当てられた専用ポートがある。
【０２３２】
［ファイル管理アプリケーション］
ファイルの送信またはデータのダウンロードに使用される、１つの共通のレベル７アプリケーション、ファイル転送プログラムすなわちＦＴＰである。ダウンロードされたファイルは、後で使用するために不揮発性ストレージドライブに「書き込み」される。ファイルに実行可能コードが含まれている場合は、デバイスのオペレーティングシステムと共にダウンロード及びインストールプログラムを開いて、ソフトウェアを開きコンピュータまたはモバイルデバイスのアプリケーションディレクトリにインストールする。
【０２３３】
このプロセスは図３４に示されており、この図では、数値ＩＰアドレス「ＮＢ」及び動的ポート割り当てを有するノートブック３５が、ファイルサーバ２１Ａのファイルを要求するが、この要求はＴＣＰ転送を使用するＦＴＰ要求としてＩＰパケット５８０をファイルサーバのＦＴＰ制御ポートであるポート＃２１に送信することによって行われる。結果として生じるＩＰパケット５８０は、宛先ＩＰアドレス「Ｓ１」、宛先ポート＃２１、及びその発信元ＩＰアドレス「ＮＢ」及びそのアドホックポート＃９９９９を含む。ポート＃２１はファイル転送サービスを要求するための制御ポートを表すので、ファイルサーバ２１Ａは、ノートブック３５がファイルを要求していることを知り、パケットの宛先ＩＰアドレス及びポート番号を確認するためのログイン情報を予測する。
【０２３４】
アクティブＦＴＰセッションでは、ノートブック３５は、ＳＷＩＦＴコードと口座番号を含む銀行振り込み転送のための配線命令を提供することに類似して、要求されたファイルの宛先アドレスと宛先ポート番号を送信する。結果として生じるＩＰパケット５８１は、ノートブックのＩＰアドレス「ＮＢ」及びそのポート＃９９９９を発信元情報として、サーバのＩＰアドレス「Ｓ１」を宛先として含む。パケットの宛先ポート番号をポート＃２０に変更して、コマンド接続とは別のＦＴＰデータチャネルをネゴシエートする。
【０２３５】
これに応答して、ファイルサーバ２１Ａは、ＩＰパケットのペイロードを開いて、ファイル名と、オプションで要求されているファイルパスとを決定し、ファイル５８３を見つけた後、それを応答ＩＰパケット５８２にカプセル化し、ＩＰアドレスとポートとを交換する、すなわち宛先がポート＃９９９９でＩＰアドレス「ＮＢ」になり、発信元はＩＰアドレス「Ｓ１」及びポート＃２０になるように交換することによって、データをノート３５に送り返す。前述の２つのトランザクションと同様に、ＩＰパケットはＴＣＰをその転送メカニズムとして使用する。
【０２３６】
ノートブック３５がファイルを受信すると、それはパケット５８２のペイロードから抽出され、場合によってはプレゼンテーションレイヤ６を使用してデータファイル５８３に変換され、ノートブックのオペレーティングシステム５８５に格納またはアップロードされる。そうである場合には、オペレーティングシステム内のユーティリティであるプログラムまたは別のプログラムが、実行可能コードをアップロード（５８３）してアプリケーションプログラム５８６を作成する。
【０２３７】
アクティブＦＴＰファイル転送のオリジナルの実装には、２つの問題がある。まず、ＦＴＰコマンドポート＃２１はオープンスタンダードなので、ハッカーは頻繁にそのＩＤを偽造して不正なファイルをダウンロードしようとするか、またはデバイスが妨害されて動作できなくなるサービス妨害攻撃を引き起こす。アクティブＦＴＰ転送に関する他の問題は、ファイルサーバから送信されたＩＰパケット５８２がＮＡＴあるいはファイアウォールによってブロックされ、ノートブック３５へのその配信を遮断される可能性があることである。パッシブＦＴＰと呼ばれるこの手順の改変は、ファイアウォールの問題を回避することができるが、現在ほとんどのＮＡＴルータはＦＴＰを認識しており、適切な資格情報や認証でファイル転送をサポートしている。
【０２３８】
ポート＃２０で利用可能なＦＴＰサービスに加えて、またはそれに代えて、ＳＳＨファイル転送プロトコルとしても知られている「セキュアファイル転送プロトコル」がある。転送には、セキュアシェルまたはＳＳＨポート＃２２（セキュアログインとセキュアポート転送に使用されるものと同じもの）を使用する。代替のファイル転送アプリケーションとしては、あまり採用されていない「ファイル転送アクセス・管理」（ＦＴＡＭ）や、ＺＩＰやその他のアルゴリズムを使用したデータ圧縮などがある。
【０２３９】
［ＷｅｂブラウザとＷｅｂサーバ］
レイヤ７アプリケーションのもう１つの広いクラスは、「ハイパーテキスト」と呼ばれる特別なフォーマッティング技術を使用するプログラムで構成されている。これらのアプリケーションには、ハイパーテキスト文書を格納する「Ｗｅｂサーバ」、それらを読んで表示する「ウェブブラウザ」、及び迅速なアクセスを容易にするための専用の登録済みポート割り当てを用いる専用の通信転送プロトコルが含まれる。主要なコンポーネントであるＷｅｂブラウザは、インターネット、イントラネット、または他のパケット交換ネットワークからハイパーテキスト文書をダウンロードして表示するように設計された、映像指向の通信プログラムである。ブラウザのネットワークコンパニオンであるＷｅｂサーバは、ファイルへのアクセスを要求するブラウザにハイパーテキスト文書を配布するために使用される高速コンピュータである。ハイパーテキストは、単純な電子メールビューアからは利用できない埋め込みフォーマッティングされた電子メールを表示するためにも使用できる。
【０２４０】
動作中、ブラウザは他のブラウザと直接接続するのではなく、両方でアクセス可能な１つ以上のウェブサーバを含む中間媒体を介して情報を交換する。文書を公開するために、ユーザは、インターネットに接続された任意のサーバ上にホストされている「ウェブページ」または他のプライベートネットワークまたは公衆ネットワークまたはクラウドに文書またはイメージを単に「投稿」する。文書を投稿するユーザは、投稿されたファイルに誰がアクセスできるか、読み取り専用または編集権限を持っているか否かを決定する。文書をホストするウェブサーバは、文書の発信者によって所有または管理されてもよいし、掲示されたコンテンツ及びウェブページ設計に関与しない非利害関係者が代表してもよい。
【０２４１】
ハイパーテキストベースの文書は、ＨＴＭＬまたは「ハイパーテキストマークアップ言語」と呼ばれる特殊な文書フォーマット言語を使用して、表示されるウィンドウに最も適合するように動的に調整されたテキスト、グラフィック及びビデオコンテンツを表示する。ＨＴＭＬの機能は、表示される資料をダウンロードし、ページ単位で動的にフォーマッティングすることである。各ページは、ハードコードされたソフトウェアからロードされたテキスト、またはファイルまたはデータベースからダウンロードされたテキストを含む静的及び動的サイズのフィールドの両方を含むことができる。ＨＴＭＬページコンテンツにデータベースを使用する利点は、データベースを頻繁に定期的に更新できることと、Ｗｅｂページが自動的に調整されることである。それ以外の場合は、コンテンツの変さらに合わせて全てのＷｅｂページを再設計しなければならない。ＨＴＭＬでは、固定位置フッター、ヘッダー、サイドバー、フィールドなどのオブジェクトの位置と、テキストが動的に折り返されるフローティングオブジェクトが指定される。
【０２４２】
オブジェクト自体は、静的なグラフィックオブジェクトや写真、アニメーショングラフィクス、フラッシュビデオ、オーディオファイル、ビデオやＨＤムービーなどを表すことができる。テキストのように、書式はハードコード化されていても動的にリンクされていてもよい。リンクされたオブジェクトは、１つのフォーマットまたはオブジェクトタイプから別のフォーマットまたはオブジェクトタイプへのプレゼンテーションレイヤ５の機能を使用して動的に変換され得る。例えば、スプレッドシート内の定義済みフィールドは、ページの描画時に静的スナップショットまたはグラフィックに変換される。他のオブジェクトはまた、他のサーバ及びウェブサイトへのライブリンクを含むことができ、クリックされると、ウェブページビューアのコンピュータに関する情報、個人及び連絡先情報、または好み及び興味を、ビューアの事前承認の有無にかかわらず転送することができる。本質的に、リンクをクリックすることは、リンクされたウェブページのホストの利用規約の暗黙の承認とみなされる。例えば、新しい車のバナー広告をクリックすると、新しい車の購入に関心のある人のためにデータベースに情報が送信され、新しい車のプロモーションの不要な「スパム」メールが視聴者の個人メールに送信される。動的なウェブページ上では、バナー広告フィールドの内容は、その時から自動的に自動車広告を表示することができるが、全てはビューアがリンクをクリックして広告を見るという単一のアクションに基づいている。インターネットマーケティング会社は、ビューアの行動の収集が真実か意図しないものであるか否かを知ることがなくても、業者及び広告主にそのような情報を販売する。
【０２４３】
重要な点として、ハイパーテキストベースの文書では、要求されたウェブページを作成するために使用されるテキストやほとんど全てのオブジェクトは、ウェブページの最初のＨＴＭＬダウンロードには含まれず、最初のＨＴＭＬページがロードされた後に読み込まれる。文書及びオブジェクトは、前述のＦＴＰプロトコルを使用してロードされるのではなく、代わりにＨＴＴＰまたは「ハイパーテキスト転送プロトコル」と呼ばれるより動的なプロセスを利用する。ＨＴＴＰは、プレゼンテーションレイヤ６で動作し、ウェブブラウザなどのレイヤ７アプリケーションにサービスを提供するアプリケーション及びデータフォーマットを表す。
【０２４４】
レイヤ４のトランスポートレイヤでは、ＨＴＴＰはＷｅｂアクセスのための独自の予約ポート＃、特にポート＃８０で動作する。ポート＃８０は、ＦＴＰポート２１などのファイアウォールやセキュリティソフトウェアによって承認され、ブロックされないことが多いため、ポート８０は、閲覧許可されていない文書やアクセスを取得したい、またはサーバ上の悪意のある攻撃により、ハッカーや敵対者からの無意味なＦＴＰ要求やＨＴＴＰ要求をサービスするように強制することによって通常の機能のサポートを妨げる「サービス妨害」攻撃を開始しようとするハッカーにとって好都合なターゲットである。
【０２４５】
ＨＴＴＰを介してウェブページをダウンロードする手順は、図３５Ａに示されており、ＩＰアドレス「ＮＢ」及びアドホックポート＃９９９９を有するノートブック３５が、ＩＰアドレス「Ｓ１」においてＩＰパケット５９０を使用して、ＩＰアドレス「Ｓ１」のウェブサーバ２１ＡからのＨＴＭＬ文書を要求する。ウェブページを要求するために、ＩＰパケット５９０はウェブサーバのポート＃８０を指定する。これに応答して、次にウェブサーバ２１Ａは、パケット５９１のアドレスとポート番号とを交換することによって、すなわち発信元がＩＰアドレス９９９９のポート＃８０になり、宛先がＩＰアドレス「ＮＢ」のポート＃９９９９になるようにすることによって、ＨＴＭＬペイロードを付加し、ＩＰパケット５９１を返送する。ＨＴＭＬデータは、高いペイロードの信頼性を保証するためにＴＣＰベースの接続を使用して伝送される。
【０２４６】
ＨＴＭＬコードを受信した後、ノートブックのブラウザはＨＴＭＬファイルを読み取り、ＩＰ呼び出しを１つずつ特定してウェブページにコンテンツをダウンロードする。図示の例では、グラフィックスの最初の呼び出しは、最初のダウンロードと同じウェブサーバ２１Ａからコンテンツをダウンロードすることであるので、ノートブック３５は宛先ＩＰアドレス「Ｓ１」及びポート＃８０にＩＰパケット５９２を再び準備する。ノートブックのポートが動的に割り当てられるので、ＩＰパケット５９２の発信元はアドホックポート＃１０００１に変更されるが、ＩＰアドレスは「ＮＢ」から変化しない。応答ウェブサーバ２１Ａは、ＩＰパケット５９３のペイロードにＪＰＥＧをカプセル化し、発信元アドレスと宛先アドレスとを交換して、発信元がＩＰアドレス「Ｓ１」のポート＃８０であり、宛先がＩＰアドレス「ＮＢ」のポート１０００１となるようにする。ノートブック内のブラウザは、ＩＰパケット５９３を受信すると、ペイロードをアンラップし、プレゼンテーションレイヤ６を使用してグラフィックスフォーマットをブラウザ互換フォーマットに変換し、次いで、ブラウザページ、すなわちレイヤ７アプリケーションに画像をサイズ決定してインストールする。
【０２４７】
図示されているように、ＨＴＭＬページにおける次のオブジェクトダウンロード要求は、ウェブサーバＳ１からではなく、全く異なるサーバ、具体的にはＩＰアドレス「Ｓ５」を有するメディアサーバ５１１からである。従って、ノートブック３５内のウェブブラウザは、宛先ポート番号「８０」への別のＨＴＴＰ要求としてＩＰパケット５９４を準備するが、今回は宛先がＩＰアドレス「Ｓ５」である。発信元ＩＰアドレスが「Ｓ１」のままであるとき、動的ポート割り当てでは、発信元ポート＃が再び変更され、今回はポート＃１００２０に変更される。それに応答して、メディアサーバ５１１は、そのＩＰアドレス「Ｓ５」及びポートアドレス８０を有する発信元からのＩＰパケット５９５を、ノートブックの最新のＩＰアドレス「ＮＢ」及びポート＃１００３０にして準備する。ＩＰパケット５９５にカプセル化された添付されたペイロードは、ＭＰＥＧを含む。パケットが受信されると、プレゼンテーションレイヤ６は、ファイルを準備してアプリケーションレイヤ７に供給し、レイヤ７では、ブラウザアプリケーションがそれらをインストールし、ＨＴＭＬコードの読み取りとウェブページの作成を完了するまで継続する。
【０２４８】
従って、ＨＴＭＬを使用すると、ウェブページのコンテンツは、ＦＴＰを使用して送信されるファイルのように単一のダウンロードから構築されるのではなく、それぞれが特定のコンテンツを配信する異なるサーバへの呼び出しを連続して使用して構築される。この概念は図３５Ｂに図解されており、ＨＴＭＬ生成ページ５９１、テキスト及びＪＰＥＧ５９３がウェブサーバ「Ｓ１」のポート番号８０からダウンロードされ、ＭＰＥＧビデオ５９５がメディアサーバ５１１のポート番号８０からダウンロードされ、ＰＮＧ写真５９６及びＪＰＥＧ５９７は、ファイルサーバ２７のポート８０から入ってくる。このようにして、複数の発信元からウェブページが構築される。種々のテキスト、グラフィック、及びオーディオ・ビデオ要素を要求するＨＴＭＬコードの他に、文書の作成を担当する中心のコマンドまたはコントロールは存在しない。例えば、１つのサーバがトラヒック輻輳からのそれ自身のローディングのために応答が遅い場合、ウェブページ５９１の描画はハングアップし、完了する前にしばらく停止することがある。この中断は、例えばヤフー（登録商標）のようなウェブページのホストとは無縁かもしれないが、代わりにＨＴＭＬウェブページによって呼び出されたリンクされたサーバ（ＣＮＮ（登録商標）やＦＯＸニュース（登録商標）のサーバなど）から引き起こされる可能性がある。
【０２４９】
ＨＴＭＬウェブページのリスクの１つは、ハッカーやマルウェアがユーザに関する情報を収集する機会であり、特にユーザの自宅住所、クレジットカード番号、ＰＩＮ、社会保障番号などを誠実に必要とする有効な倫理的ビジネスの体裁で個人情報のフィッシングを行うサイバーパイレーツサイトにリダイレクトする場合などである。
【０２５０】
［ワールドワイドウェブ］
普遍的ではないにしても、非常に普及しているＨＴＭＬの１つは、ワールドワイドウェブ上で利用可能な文書、特に「ｗｗｗ」で始まるアドレスをブラウザに入力することによって達成されるウェブアドレスに関するウェブブラウジングである。作業中に、ユーザがブラウザのアドレスバーへウェブアドレス（「ユニフォーム・リソース・ロケータ」またはＵＲＬとも呼ばれる）を入力、例えば、「http://www.yahoo.com」を入力すると、ブラウザはその直近にあるルータに問い合わせを送信して、ターゲットとなるＩＰアドレスを決定する。以前に図３に示したこのプロセスは、ノートブック６０がＩＰパケットを、ポート＃５３要求でルータ６２Ａに送信することを含み、ポート番号はＤＮＳルックアップに対するサービス要求を特定する。ルータ６２ＡはＤＮＳ要求をドメインネームサーバルータ６２Ａに転送し、ドメインネームサーバルータ６２Ａはターゲットドメインの数値ＩＰアドレスを供給する。例えば、サーバ６６Ａが数字のＩＰアドレス「Ｓ１１」を有するヤフー（登録商標）のウェブサーバである場合、ＤＮＳサーバ７１はそのＩＰアドレスをルータ６２Ａに返し、ＩＰアドレス「Ｓ１１」及びウェブページ宛先ポート＃８０を有するＩＰパケットが構築される。
【０２５１】
多くの文書はワールドワイドウェブ上でアクセス可能であるが、全てのインターネット文書がウェブ上に投稿されるわけではないことに留意されたい。たとえば、パブリックネットワーク経由でアクセス可能なウェブページの中には、wwwプレフィックスを使用しないものがあり、これは主にハッカーがそれらを検索しないようにするためである。この他のウェブサーバには、ファイアウォールの背後に隠れているプライベートネットワークまたはイントラネットを利用しているものがあり、ファイアウォールの背後または「仮想プライベートネットワーク」すなわちＶＰＮと呼ばれる暗号化されたパイプやトンネルを使用してアクセスできる。ワールドワイドウェブのユニークな特性を理解するためには、その利点と強み、欠点と脆弱性の両方に責任を担っている、開発と進化を理解することが重要である。
【０２５２】
歴史的には、ワールドワイドウェブとブラウザの発明に先立ち、インターネットを介した通信は、主にＦＴＰプロトコルを使用した電子メールとファイル転送に依存していた。その後１９８９年に、Tim Berners-Leeは、クライアントとサーバの間の最初の正常なインターネット通信のデモンストレーションを「ハイパーテキスト転送プロトコル」すなわちＨＴＴＰを使って行った。その後、イリノイ大学アーバナ・シャンペーン校のスーパーコンピューティングアプリケーションセンターのMarc Andreesenは先駆的な直感的なインターフェース、複数のインターネットプロトコルのサポート、マッキントッシュ（登録商標）及びマイクロソフト・ウィンドウズ（登録商標）環境との互換性で有名な最初のフル機能のブラウザであるモザイク（Ｍｏｓａｉｃ）を開発し、これはＦＴＰ、ＮＮＴＰ、ｇｏｐｈｅｒなどの以前のプロトコルの下位互換性をサポートし、インストールが簡単で、堅牢な安定性と良好な信頼性を有していた。重要な意味として挙げられるのは、モザイクは、別のウィンドウでグラフィックスを開くのではなく、１ページに画像とテキストを一緒に表示する最初のブラウザであった。
【０２５３】
モザイクは、ネットスケープ・ナビゲータ（登録商標）として商業化され、インターネット革命とパーソナル・ビジネス・アプリケーション用のウェブサイトの普及促進に貢献した。今日では無数のブラウザが存在するが、今日最も広く使われているブラウザは、Ｍｏｚｉｌｌａ（登録商標）とネットスケープの直系の子孫であるＦｉｒｅｆｏｘ（登録商標）の他、Ｍｉｃｒｏｓｏｆｔ  Ｅｘｐｌｏｒｅｒ（登録商標）、Ａｐｐｌｅ  Ｓａｆａｒｉ（登録商標）、Ｇｏｏｇｌｅ  Ｃｈｒｏｍｅ（登録商標）等である。ウェブ検索エンジンである別のクラスのアプリケーションが同時に登場し、ワールドワイドウェブ上の文書やコンテンツの検索を容易化した。今日Ｇｏｏｇｌｅ（登録商標）やＹａｈｏｏ（登録商標）などの検索エンジンが市場を支配している。
【０２５４】
ビジネスがインターネットに集まるにつれて、Ａｍａｚｏｎ（登録商標）、ｅＢａｙ（登録商標）、Ｂａｒｎｅｓ＆Ｎｏｂｌｅ（登録商標）、Ｂｅｓｔ  Ｂｕｙ（登録商標）、Ａｌｉｂａｂａ（登録商標）などの一般的なサイトでウェブベースの販売と購入が行われ、電子商取引が生まれた。まもなく、市場の断片化により、一般的な電子商取引ウェブサイトを提供するのではなく、特定のタイプの製品またはサービスに特化したベンダーが続いた。たとえば、Ｐｒｉｃｅｌｉｎｅ（登録商標）、Ｅｘｐｅｄｉａ（登録商標）、Ｏｒｂｉｔｚ（登録商標）、Ｓａｂｒｅ（登録商標）などの旅行や輸送の比較ショッピングに基づく業者は、航空会社の専用ｅマーケットプレイスとともに急速に成長した。ユーザが音楽、ビデオ、電子書籍、ゲーム、ソフトウェアからなる「コンテンツ」をダウンロードしたい場合、ＡｐｐｌｅのｉＴｕｎｅｓ（登録商標）やＡｐｐＳｔｏｒｅ（登録商標）、Ｗａｌｍａｒｔ（登録商標）、Ａｍａｚｏｎ  ＭＰ３（登録商標）、Ｇｏｏｇｌｅ  Ｐｌａｙ（登録商標）、Ｓｏｎｙ  Ｕｎｌｉｍｉｔｅｄ  Ｍｕｓｉｃ（登録商標）、Ｋｉｎｄｌｅ  Ｆｉｒｅ（登録商標）、Ｗｉｎｄｏｗｓ  Ｓｔｏｒｅ（登録商標）などのプロバイダがオンラインサービスを提供する。ｉＴｕｎｅｓ（登録商標）、Ｇｏｏｇｌｅ  Ｐｌａｙ（登録商標）、Ｎｅｔｆｌｉ（登録商標）、Ｈｕｌｕ  Ｐｌｕｓ（登録商標）、Ａｍａｚｏｎ  Ｐｒｉｍｅ（登録商標）などのオーディオ／ビデオストリーミングサービスと、ｉＨｅａｒｔラジオやＣｏｍｃａｓｔ  Ｘｆｉｎｉｔｙ（登録商標）などやケーブルプロバイダは、特に世界中の航空機、バス、リムジン、ターミナルやカフェで提供されているＷｉＦｉサービスの増加とともにますます人気が高まっている。
【０２５５】
プライバシーとセキュリティに対する懸念にもかかわらず、今日の子供や若い成人は公のウェブサイトに膨大な個人情報を掲載している。「ソーシャルメディア」と呼ばれる業種は、個人が個人的な意見や経験を時系列に投稿した文書の便利な発信、更新、編集するウェブログすなわち「ブログ」をサポートするウェブサイトから始まった。その後、ＹｏｕＴｕｂｅ（登録商標）が、能力を有するアーティスト志望の人達がホームメイドの動画を投稿して配信することを可能にした。Ｆａｃｅｂｏｏｋ（登録商標）はこのトレンドをさらに発展させ、このサービスでは、ブログやビデオの投稿をインタラクティブなフォーマットで時系列に結合し、各人の「ホームページ」の視聴者は、読んだり見たりしたことが「お気に入り」であるときを含めてコメントを投稿する。Ｆａｃｅｂｏｏｋ（登録商標）は連絡先管理、Ｆａｃｅｂｏｏｋ（登録商標）への追加する友だちの連絡先リストの検索機能を拡張し、アカウントオーナーのホームページへアクセスを要求するか、無視することで誰かを「友人」にすることができるようにした。人々の個人的な連絡先管理機能を使用することによって、Ｆａｃｅｂｏｏｋ（登録商標）のユーザの数は指数関数的に増加し、古い連絡先情報をもつ人々がソーシャルメディア上でお互いを再発見できるようになった。その後、同様のソーシャルメディア手法が、デート、マッチングサービスや性的サービス（合法または違法）の利用のために、及び連絡先サービス業界のサービスを利用する（例えばＬｉｎｋｅｄＩｎ（登録商標）を使用する）専門家の世界に適用された。
【０２５６】
インターネットとＯＳＩパケット交換ネットワークと同じオープンソースの考え方に基づいて、ワールドワイドウェブには中央の命令や制御がないため、従って規制されていない状態にあるため、政府や規制当局がコンテンツを管理、制限、検閲することは困難である。さらに、個人情報を公開することで、犯罪者が公開情報を収穫するターゲットを「調査」して、パスワードを推定したり、行動を監視したり、ＧＰＳや取引情報を使って捜し出すことさえ容易になった。場合によっては、例えばＣｒａｉｇ'ｓ  Ｌｉｓｔ（商標）と呼ばれるオープンソースの連絡先及び紹介サービスで、性犯罪者と殺人犯が、その犯罪の犠牲者を集めるために自分達の素性と意図を偽装することも起きた。犯罪者やハッカーがワールドワイドウェブやソーシャルメディアを使ってターゲットを監視することの他に、最近のニュースでは、政府が、そうすべき理由や令状もなく市民の電子メール、音声通話、ウェブサイト、ブログ、さらには日常の動きまで追跡し、監視する可能性が示されている。そのような侵入を正当化するために使用される一つの主張は、公共の場所や公共ネットワーク上で自由に配布される情報は「公正なゲーム」であり、人気映画「マイノリティ・リポート」の「将来の犯罪」と同様に犯罪やテロが起こる前に機先を制して予防する必要があることが、そのような積極的な監視やスパイの正当な理由であるというものである。
【０２５７】
個人情報の盗難やそのような望ましくない政府の侵入に対する反応として、消費者は、Ｓｎａｐｃｈａｔ（登録商標）や、あなたが知っていて信用している相手として相手方の確認または「認証」を要求するセキュリティとプライバシーを強化した電話サービスのようなサイトに移行しつつある。しかし、今述べたような「信頼ゾーン」は、パケット交換通信ネットワークにおいて利用可能なセキュリティ方式に依存する。この出願の冒頭部の内容から明らかなように、これらのネットワーク、通信プロトコル、ウェブサイト、及びデータストレージは安全ではなく、仮に安全であるならば今日の報道でサイバー犯罪の事例が報告されることはない。
【０２５８】
［Ｅメール（電子メール）アプリケーション］
パケット交換ネットワーク上で最も一般的で最も古い用途の１つは、電子メールまたは「Ｅメール」である。このプロセスが図３６に示されており、数値ＩＰアドレス「ＮＢ」及び動的ポート割り当てを有するノートブック３５は電子メールＩＰパケット６０１を電子メールサーバ６００にアップロードする。カプセル化されたＳＭＴＰ電子メールペイロードに加えて、ＴＣＰベースの電子メールＩＰパケット６０１は、その発信元ＩＰアドレス「ＮＢ」及びそのアドホックポート＃１０５００とともに、その宛先ＩＰアドレス「Ｓ９」及びその宛先ポート＃２１または代替的には宛先ポート＃４６５を有する。ポート＃２１は、シンプルメール転送プロトコルすなわちＳＭＴＰを使用する電子メールサービスを表しているが、ポート＃４６５は、ＳＳＬ技術に基づく「安全な」バージョンのＳＭＴＰＳを表す。しかし、最近のニュースでは、ＳＳＬが壊れやすく、ハッカーに対する完全に影響を受けないものでないことが判明したとの報告がある。
【０２５９】
電子メールサーバ６００は、電子メールＩＰパケット６０１を受信したことに応答して、ポート＃２１を使用するか、またはＳＳＬポート＃４６を使用して発信元ＩＰアドレス「Ｓ９」のメールサーバ６００からポート１０５００で宛先ＩＰアドレス「ＮＢ」に送信されたＳＭＴＰ確認を含むＩＰパケット６０２を戻すことによってその受信を確認する。一方、電子メールサーバ６００は同時に、発信元ＩＰアドレス「Ｓ９」及びＩＭＡＰポート＃２２０から宛先ＩＰアドレス「ＤＴ」及びアドホックポート＃１２０００のデスクトップ３６に、ＩＰパケット６０５のＩＭＡＰメッセージとして電子メールをプッシュする。電子メールメッセージを受信すると、デスクトップ３６は、ポート１２０００の発信元ＩＰアドレス「ＤＴ」から宛先ＩＰアドレス「Ｓ９」及びポート２２０へＩＰパケット６０４を用いて電子メールサーバ６００に対するＩＭＡＰメッセージを確認する。従って電子メール配信は、ノートブック３５、電子メールサーバ６００、及びデスクトップ３６の受信者からの送信者を含む三者間取引を含む。通信では、送信者はＳＭＴＰプロトコルを使用し、メッセージ受信者はＩＭＡＰプロトコルを使用してメッセージを確認する。ＩＭＡＰ交換により、サーバとデスクトップのデータベースが更新され、ファイルレコードが一致することが保証される。電子メールサーバは仲介者として機能するので、ノートブックからサーバへのＩＰパケット６０１またはデスクトップへのＩＰパケット６０５をインターセプトすること、または電子メールサーバ６００に格納されたファイル自体をハッキングすることのいずれかによって、コミュニケをインターセプトする機会が存在する。あるいは、メールの配信にはファイルサーバの同期を行わずに、「プレーン・オールド・ポストオフィス」すなわちＰＯＰ３アプリケーションを使用することもできる。
【０２６０】
［その他のレイヤ７アプリケーション］
ファイル管理、Ｗｅｂブラウザ、ＤＮＳサーバ、電子メール機能の他に、通信及びブロードキャストアプリケーションとともに、Ｔｅｌｎｅｔ、ネットワーク管理、周辺機器ドライバ、バックアップユーティリティ、セキュリティプログラムを使用したターミナルエミュレーションなど、数多くのアプリケーションが存在する。例えばバックアップアプリケーションとしては、ＴＣＰベースの「ネットワークファイルシステム」すなわちＮＦＳ（現在は４番目のインカーネーション）とともに、Ａｎｄｒｏｉｄ  ｉＯＳ（登録商標）、Ａｐｐｌｅ  Ｔｉｍｅ  Ｍａｃｈｉｎｅ（登録商標）、Ａｐｐｌｅ  ｉＣｌｏｕｄ（登録商標）、Ｃａｒｂｏｎｉｔｅ（登録商標）、Ｂａｒｒａｃｕｄａ（登録商標）、Ｄｒｏｐｂｏｘ（登録商標）、Ｇｏｏｇｌｅドライブ（登録商標）、Ｍｉｃｒｏｓｏｆｔ  Ｏｎｅ  Ｄｒｉｖｅ（登録商標）、Ｂｏｘ（登録商標）のカスタムバージョンを含む商用バックアップソフトウェア等が挙げられる。動作中、クラウドストレージは、電子メールサーバと同様の方法で、ネットワークに接続されたドライブにデータを保存する。データは、ファイル所有者によって、または権限が許可されている場合は第三者によって取り出される。電子メールのトランザクションと同様に、送信中及びサーバに格納されたときにデータをハッキングする機会が数多く存在する。
【０２６１】
通信及び放送アプリケーションとしては、「セッション開始プロトコル」すなわちＳＩＰ、音声やＩＰ電話（ＶｏＩＰ）、「インターネットリレーチャット」すなわちＩＲＣなどマルチメディア通信セッションを制御するために広く使用されるシグナリングプロトコル、「ネットワークニュース転送プロトコル」（ＮＮＴＰ）の他にテキストの形式でメッセージを転送するためのアプリケーション層プロトコル、及びニュースサーバ間でニュース記事を転送し、記事を投稿するために使用されるアプリケーションプロトコル等が挙げられる。Ｓｋｙｐｅ（登録商標）、Ｌｉｎｅ（登録商標）、ＫａｋａｏＴａｌｋ（登録商標）、Ｖｉｐｅｒ（登録商標）、ＷｈａｔｓＡｐｐ（登録商標）などのＯＴＴキャリアは、カスタマイズされたアプリケーションを利用してＶｏＩＰを使用してインターネット上でテキスト、画像、音声を配信する。
【０２６２】
その他のアプリケーションには、プリンタ、スキャナ、カメラなどのカスタマイズされた周辺機器ドライバも含まれる。ネットワークアプリケーションとしては、「シンプルネットワーク管理プロトコル」すなわちＳＮＭＰと、ルータ、スイッチ、モデム・アレイ、及びサーバを含むＩＰネットワーク上のデバイスを管理するためのインターネット標準プロトコル、自律したインターネットシステム間でルーティング及び到達可能性の情報を交換するための標準化された外部ゲートウェイとしての「境界ゲートウェイプロトコル」すなわちＢＧＰアプリケーション、及びプライベートネットワーク及びイントラネットで利用可能なサービス、ユーザ、システム、ネットワーク、及びアプリケーションに関する情報の共有を許可することにより、ディレクトリを管理するための「軽量ディレクトリアクセスプロトコル」及びＬＤＡＰ等が挙げられる。ＬＤＡＰ接続アプリケーションの１つの機能は、１つのログインが１つのイントラネットを介して接続された複数のデバイスにアクセス可能なことである。その他のネットワークアプリケーションには、ＣＭＩＰすなわち「共通管理情報プロトコル」等がある。
【０２６３】
もう１つの重要なネットワークアプリケーションは、ＤＨＣＰすなわち「動的ホスト構成プロトコル」である。ＤＨＣＰは、ホームネットワーク及びＷｉＦｉルータから企業ネットワーク、キャンパスネットワーク、及び地域ＩＳＰすなわちインターネットサービスプロバイダに及ぶネットワークサーバからＩＰアドレスを要求するために使用される。ＤＨＣＰはＩＰｖ４とＩＰｖ６の両方に使用される。
【０２６４】
サービスの質
【０２６５】
ネットワークの性能を考えるとき、いくつかの要因が考えられ、すなわち、
・データレート、すなわち帯域幅、
・サービスの質、
・ネットワークとデータのセキュリティ、
・ユーザのプライバシー
が考えられる。
【０２６６】
上記の考慮事項のうち、データレートは数百万バイト／秒、すなわちＭｂｐｓで容易に定量化される。一方、サービス品質またはＱｏＳには、レイテンシー（待ち時間）、音質、ネットワーク安定性、断続的な動作または頻繁なサービス中断、同期や接続の失敗、信号強度の低下、アプリケーションの停止、緊急時の機能ネットワークの冗長性などを含むいくつかの要因を含まれる。
【０２６７】
プログラム、ファイル、及びセキュリティ関連の検証では、データの正確さが重要な要素である。どの要素が重要かは、パケット交換ネットワークを介して運ばれるペイロードの性質によって決まる。対照的に、リアルタイムアプリケーションを含む音声及びビデオの場合、パケット配信時間に影響を及ぼす要因が重要である。品質要因と、それらがビデオ、音声、データ、テキストなどのさまざまなアプリケーションにどのように影響するかは、図３７に示す表に定性的に示されている。一貫した高データレートＩＰパケット波形６１０Ａによって代表される良好なネットワーク状態は、最小時間遅延、明確に強い信号強度、信号歪み、安定動作、及びパケット伝送損失がないものである。短期間の中断を伴うより低いデータレートのパケット波形６１０Ｂによって表される断続的なネットワークは、ビデオ機能に最も大きな影響を与え、不快なほど遅いビデオダウンロードを引き起こし、ビデオストリーミングを受け入れ難くする。ＩＰパケット波形６１０Ｃによって例示される規則的な短時間の中断を伴いより低い実効データスループット速度を引き起こす輻輳したネットワークは、断続的な動き、ファジーな画像、及び不適切な着色及び輝度を伴ってビデオ映像をひどく劣化させるだけでなく、エコー、さらには会話やサウンドトラックから全体の削除さえ引き起こす。しかし、輻輳したネットワークでは、再ブロードキャストの要求を繰り返すことによってＴＣＰを使用してデータが供給され得る。
【０２６８】
ＩＰパケット波形６１０Ｄによって示されるように、不安定なネットワークは、予測できない期間の多数のデータ停止を伴う低いデータスループット率を示す。不安定なネットワークはまた、波形６１０Ｄにおいて濃い影の付いたパケットによって表される破損したＩＰパッケージを含み、これは、ＴＣＰベースのトランスポートでは再送が必要であり、ＵＤＰトランスポートでは単に破損したデータや不適切なデータとして破棄される。ネットワークの一部のレベルでは電子メールも断続的になり、ＩＭＡＰの同期は失敗する。軽量のデータフォーマットのため、ほとんどのＳＭＳ及びテキストメッセージは、ネットワークの輻輳が深刻な場合でも配信遅延が発生するものの転送されるが、添付情報はダウンロードされない。不安定なネットワークでは、全てのアプリケーションが失敗し、配信が予想されるファイルを待機するコンピュータまたは携帯電話の通常の動作フリーズすることさえある。このような場合、ビデオはフリーズし、音声が途切れて聞こえなくなり、数分以内に１０回以上もＶｏＩＰ接続が繰り返し落ち、場合によっては完全に接続できなくなる。同様に、電子メールは、コンピュータのアイコンがいつまでも回転し続ける形で、ストールまたはフリーズする。プログレスバーは完全に停止する。テキストメッセージもバウンスし、「配信不能」となる。
【０２６９】
重要なサーバやスーパーＰＯＰの停電、過負荷の通話量、巨大なデータファイルやＵＨＤムービーの送信、一部のサーバやネットワークに対する重大なサービス拒否攻撃など、多くの要因がネットワークの不安定化につながる可能性があり、ネットワークのＱｏＳを追跡する重要な要因には、そのパケット廃棄率とパケットラテンシー（待ち時間）がある。廃棄パケットは、ＩＰパケットが配信されず、永久的なものとして「タイムアウト」した場合や、ルータまたはサーバがＩＰパケットのヘッダーのチェックサムエラーを検出した場合に発生する。ＵＤＰを使用するパケットの場合、パケットは失われ、レイヤ７アプリケーションは、何かが失われたことを知るべく十分にスマートでなければならない。ＴＣＰがレイヤ４トランスポートに使用される場合、パケットは再送信のために要求され、潜在的にすでにオーバーロードされている可能性のあるネットワークへのロードをさらに追加する。
【０２７０】
ＱｏＳ、伝搬遅延を決定する他の要因は、ノード間でのＩＰパケットの遅延として、または発信元から宛先への一方向に、あるいは発信元から宛先へ及び宛先から発信元への往復遅延として、いくつかの方法で定量的に測定することができる。図３８では、ＵＤＰとＴＣＰのトランスポートプロトコルを使用したパケット配信に対する伝搬遅延の影響を比較している。インターモーダルネットワーク伝播遅延が増加すると、ＶｏＩＰ会話のような往復通信を実行するために必要な時間が長くなる。ＵＤＰトランスポート６２１の場合、往復遅延は伝搬遅延とともに線形に増加する。長い伝播遅延はより高いビット誤り率と相関するので、失われたＵＤＰパケットの数は増加するが、ＵＤＰは破棄されたパケットの再送を要求するので、往復時間は遅延の増加に対して線形のままである。ＴＣＰトランスポート６２０は、パケット配信を確認するために必要なハンドシェイクのために、ＵＤＰよりも送信される各パケットについて実質的により長い往復時間を示す。ビット誤り率が低いままであり、ほとんどのパケットが再送を必要としない場合、ＴＣＰ伝播遅延は、インターモーダル伝播遅延に対して線形に増加するが、より高いレート、すなわちＴＣＰ６２０のラインの傾きで増加する。しかしながら、通信ネットワークが伝搬遅延の増大につれて不安定になると、廃棄されたパケットの再送信のためのプロトコルの必要性のために、ライン６２２によって示されるＴＣＰ転送から生じる往復時間は指数関数的に増加する。したがって、ＶｏＩＰは、ＶｏＩＰやビデオストリーミングなどの時間の影響を強く受けるアプリケーションに対しては禁忌である。
【０２７１】
全てのパケット通信は統計的であり、同じ伝搬時間を有する２つのパケットがないので、ネットワークの単一方向の待ち時間を推定する最良の方法は、同様のサイズの多数のＩＰパケットの往復時間を測定し、割って単一方向レイテンシーを推定することによる方法である。１００ｍｓ未満のレイテンシーは極めて良好であり、２００ｍｓまでは非常に良いと考えられ、３００ｍｓまでは許容可能と考えられる。インターネット上で実行されているＯＴＴアプリケーションが容易に遭遇する５００ｍｓの伝搬遅延に対して、その遅延はユーザにとって不快になり、通常の会話に干渉する。音声通信では、特に、そのような長い伝搬遅延は「悪いもの」として現れ、残響をもたらす可能性があり、「弦をはじいた様な」または金属的なサウンドの音声を作りだし、相手が相手の最後のコメントに応答するのを待っている間に通常の会話を中断し、壊れた理解できない音声を出力することがある。
【０２７２】
明確化のために述べると、通信の片方向のレイテンシー（待ち時間）は、レイヤ３ＩＣＭＰユーティリティ（http://www.speedtest.netの無料ネットワークスピードテストなど）によって実行されるｐｉｎｇテストとは異なるが、これらの相違する理由は、一つにはＩＣＭＰパケットは実際のＩＰパケットに比べて一般的に軽量であるため、ｐｉｎｇテストではＴＣＰの「再送要求」機能を使用しないため、及びインターネット上パブリックネットワーク上でｐｉｎｇテストのルートが実際のパケットルートと一致する保証はないため、である。要するに、ｐｉｎｇが長い遅延を経験する場合、ネットワークにまたはデバイスとネットワークとの間のいずれかのリンク（例えばＷｉＦｉルータまたはラストマイル）に何らかの問題があるのだが、良好なｐｉｎｇの結果がでても、それ自体では、実際のパケットの伝播遅延の小ささを保証することはできない。
【０２７３】
ネットワークセキュリティを向上させるために、ハッキング、スニッフィング、またはスパイ行為を防ぐために、暗号化と検証のメソッドが採用されることが多い。しかし、重い暗号化と複数の鍵の暗号化プロトコルは、会話相手のＩＤを絶えず再確認し、追加の遅延を作り出し、有効なネットワーク待ち時間を増加させ、セキュリティ向上の代価としてＱｏＳを低下させる。
【０２７４】
サイバーセキュリティとサイバープライバシー
【０２７５】
コミュニケーションにおける他の２つの主要な考慮すべき事項は、サイバーセキュリティとサイバープライバシーである。関連しているが、２つの問題は多少異なる。ネットワークセキュリティ、コンピュータセキュリティ、セキュリティを確保した通信を含む「サイバーセキュリティ」は、コンピュータまたは通信ネットワーク、ネットワークアクセス可能なリソース、またはネットワークに接続されたデバイスに含まれるデータへの不正アクセス、誤用、変更、または拒否を監視、インターセプト、及び防止するための方法を含む。そのようなデータは、個人情報、バイオメトリックデータ、財務記録、健康記録、私的な通信及び記録、並びに私的な写真画像やビデオ記録を含み得る。ネットワークに接続されたデバイスには、デスクトップ、ファイルサーバ、電子メールサーバ、ウェブサーバ、データベース、個人データストレージ、クラウドストレージ、インターネット接続アプライアンス、ネット接続された車、個人が使用する公的共有デバイス（ＰＯＳターミナル、ガスポンプ、ＡＴＭ等）が含まれる。
【０２７６】
明らかに、機密情報への不正アクセスを試みるサイバー犯罪者やコンピュータハッカーが犯罪を起こしている。違法に入手したデータに個人的な個人情報が含まれている場合、その攻撃は被害者の個人情報の侵害にもなる。しかし、逆にサイバー犯罪を必要とすることなくプライバシー流出が発生し、実際には阻止できない可能性がある。今日のネットワークに接続された世界では、セキュリティ侵害を必要とせずに、個人情報の不正使用が発生する可能性がある。多くの場合、１つの目的のためにデータを収集する企業は、別の目的のためにデータを使用することに関心のある他のクライアントにデータベースを販売することを選択することがある。マイクロソフト社がＨｏｔｍａｉｌ（登録商標）を購入したときですら、潜在的な顧客をスパムすることに関心のある広告主にメールリストを販売したことはよく知られていた。そのような行動がサイバープライバシーの侵害とみなされるべきか否かは、依然として意見の問題とされている。
【０２７７】
インターネットプライバシー、コンピュータプライバシー、及びプライベートコミュニケーションを含む「サイバープライバシー」は、各人の非公開情報及び個人情報及びその使用（情報の収集、保存、表示または他人との共有を含む）をコントロールする個人の個人的権利または義務を含む。非公開個人情報には、身長、体重、年齢、指紋、血液型、運転免許証番号、パスポート番号、社会保障番号、または名前を知らなくても個人を識別するのに役立つ個人情報などの個人のＩＤ情報が含まれる。将来、個人のＤＮＡマップさえも法的記録の問題になる可能性がある。個人ＩＤ情報とは別に、いわゆる個人情報とは別の非公開の私的情報には、私たちが購入する服のブランド、頻繁にアクセスするウェブサイト、喫煙や飲酒の習慣の有無、銃の所有者か否か、運転する車の種類、それまでの病歴、家族には特定の病気や病気の病歴があるか否か、どんな種類の人に惹かれているかということさえ含まれる。
【０２７８】
この個人情報は、個人の所得、税額、不動産訴訟、犯罪記録、交通違反、ソーシャルメディアサイトに掲載されたあらゆる情報に関連する公的記録と組み合わされて、利害関係者のための強力なデータセットを形成する。人口統計学的、個人的、財政的、生物医学的、行動傾向に関する情報を捕捉し、今日のパターン、傾向及び統計的相関関係のデータを採取する大規模なデータセットの意図的な収集を「ビッグデータ」という。保険会社、ヘルスケア、製薬会社、医療過誤弁護士などの医療業界は全て、ビッグデータとして保存されている個人情報に深い関心を持っている。自動車及び消費材製造企業は同様に、市場戦略及び広告予算の方向を決めるために、そのようなデータベースへのアクセスを望んでいる。最近の選挙では、投票者の意見や回避すべき政治的論争の争点をよりよく理解するために、政治家さえもビッグデータを参考にし始めている。
【０２７９】
サイバープライバシーの問題は、今日のビッグデータが個人情報を取得しているか否かではなく、データセットがあなたの氏名を保持しているか否か、またはあなたの氏名が分からなくてもあなたを特定するための十分な個人情報を保持しているか否かではない。例えば、当初、米国政府は、民間医療アカウントが開設されると、医療費負担適正化法（ＡＣＡ）に基づいて使用されたhealthcare.govウェブサイトによって収集された個人情報が破壊されると述べた。そして、最近発覚したこととして、米国政府のためのデータ収集を促進する第三者法人が、収集したデータを保持し使用する権利をもつという政府との契約に署名していたことが明らかになり、米国政府に預けられた非公開個人情報も実際に非公開ではないことが分かった。
【０２８０】
最後に、同様の技術的手法を用いて政府と犯罪組織によって監視が行われていることを述べなければならない。犯罪者がそのようなデータを収集する法的権利を持っていないことは明らかであるが、権限のない政府の監視のケースは、国によって大幅に変わる。例えば米国のＮＳＡは、アップル、グーグル、マイクロソフトなどにクラウドやデータベースへのアクセスを提供するように繰り返し圧力をかけてきた。政府関係者でさえ、会話とコミュニケが盗聴され、傍受されている。マイクロソフトの一部門であるＳｋｙｐｅ（登録商標）が発信者のコンテンツを監視するか否か尋ねられたとき、Ｓｋｙｐｅ（登録商標）のＣＩＯは唐突に「ノーコメント」と答えた。
【０２８１】
［サイバー犯罪とサイバー監視の方法］
サイバーセキュリティの関連に焦点を当てると、デバイス、ネットワーク、コンピュータデータへの不正アクセスを得るための多数の手段が存在する。一例として、図３９は、サイバー犯罪を実行し、セキュリティを確保したネットワークに不正な侵入をするために使用されるさまざまなマルウェアとハッカーの技術を示している。
【０２８２】
例えば、インターネットに接続されたタブレット３３を使用する個人は、ビジネスオフィスの電話９に電話をかけたり、テレビ３６にメッセージを送信したり、電話６で回線交換ＰＯＴＳネットワークを使用している国の友人に電話をかけたり、ウェブストレージ２０からファイルをダウンロードしたり、電子メールサーバ２１Ａを介して電子メールを送信することができる。全てのアプリケーションがインターネットとグローバルな相互接続性を有する通常のアプリケーションを表しているが、ネットワーク全体を通じて監視、サイバー犯罪、詐欺、個人情報の盗難の機会が数多く存在する。
【０２８３】
例えば、セルラー無線アンテナ１８及びＬＴＥ基地局１７を介して、または短距離無線アンテナ２６及び公衆ＷｉＦｉ基地局１００を介してネットワークに接続するタブレット３３の場合には、不正侵入者は無線リンクを監視することができる。同様に、ＬＴＥコール２８は、傍受用無線受信機またはスニファ６３２によって監視または「盗聴」することができる。同じスニファ６３２は、ＷｉＦｉ通信２９、及びケーブルＣＭＴＳ１０１とケーブルモデム１０３との間のケーブル１０５上の受信端をモニタするように調整することができる。
【０２８４】
一部の例では、ＬＴＥコールが、サイバーパイレーツ偽タワー６３８によって傍受され、タブレット３８とセルラータワー１８との間に迂回通信経路６３９を確立することもできる。パケット交換ネットワークを介してルータ２７、サーバ２１Ａ及びサーバ２１Ｂ、及びクラウドストレージ２０への送信を含む通信は、中間攻撃６３０においても他人による攻撃を受ける。盗聴器６３７は、ＰＳＴＮゲートウェイ３から電話機６へのＰＯＴＳ回線上のコール、及びＰＢＸサーバ８からオフィス電話機９への企業ＰＢＸ回線上のコールを傍受することができる。
【０２８５】
一連のセキュリティ違反を行うことによって、スパイウェア６３１は、タブレット３３、ルータ２７、ＰＳＴＮブリッジ３、クラウドストレージ２０、ケーブルＣＭＴＳ１０１、またはデスクトップ３６にインストールできる。トロイの木馬６３４は、タブレット３３またはデスクトップ３６にインストールされ、パスワードをフィッシングする可能性がある。ワーム６３６も、特にコンピュータがアクティブＸ機能を有効にしたＭｉｃｒｏｓｏｆｔのオペレーティングシステムを実行している場合に、デスクトップ３６を攻撃するために使用され得る。最後に、サービス拒否攻撃を開始するために、ウイルス６３３は、番号２１Ａ、２１Ｂ、２１Ｃのサーバ、デスクトップ３６、タブレット３３など、ネットワークに接続された任意の数のデバイスを攻撃することができる。
【０２８６】
図４０では、通信ネットワーク及びインフラストラクチャのどの部分に対して、各形態のマルウェアが動作するかを簡略化して表示したものが図示されている。サーバ２１Ａ、ファイバリンク２３及びサーバ２１Ｂが含まれた図示されたクラウド２２において、サイバー攻撃は、ウイルス６３３、中間攻撃６３０、政府監視６４０、及びサービス拒否攻撃６４１を含み得る。通信ネットワークのラストマイルは、さらに広範はマルウェアやサイバー攻撃の機会を提供し、ローカルの電話会社／ネットワーク、ラストリンク、及びデバイスの３つのセクションに分かれている。図示されているローカルの電話／ネットワークは、高速ファイバ２４、ルータ２７、ケーブルＣＭＴＳ１０１、ケーブル／ファイバ１０５、ケーブルモデム１０３、ＷｉＦｉアンテナ２６、及びＬＴＥ無線タワー２５を含む。ネットワーク無線スニファ６３２のこの部分では、スパイウェア６３１、ウイルス６３３、及び人間による中間攻撃６３０が全て可能である。
【０２８７】
ラストリンクのデバイスへのローカル接続では、ネットワーク接続は、スパイウェア６３１、無線スニファ６３２、盗聴６３７、及び偽タワー６３８の影響を受ける有線１０４リンク、ＷｉＦｉリンク２９、及びＬＴＥ／無線リンク２８を含む。例えば、タブレット３３、ノートブック３５、デスクトップ３６を含み、加えてスマートフォン、スマートテレビ、ＰＯＳ端末なども含むことができるデバイス本体は、スパイウェア６３１、トロイの木馬６３４、ウイルス６３３、及びワーム６３６を含む多種の攻撃の対象となる。
【０２８８】
このような監視方法やスパイ装置は、市販されておりオンライン市場で容易に入手できる。図４１Ａは、イーサネット（登録商標）ローカルエリアネットワーク上のトラヒックを監視するために使用されるデバイス６５０と、ＷｉＦｉデータをモニタするための同じ機能を提供するデバイス６５１との２つのデバイスを示す。セルラー通信を監視するために使用される２つの市販の装置６５２及び６５３が図４１Ｂに示されている。図３９のネットワークグラフィックでは、光ファイバクラウド接続２３のスニッフィング６３２が脅威として特定されていないが、研究中に、光通信のための非侵襲的なデータスニファ、すなわちファイバを切断する必要ないか、または一時的にであっても正常な動作が損なわれずに使用できるスニファが現在存在していことが明らかとなった。図４１Ｃに示すように、装置６５５は、光ファイバ６５６の急な湾曲部での光漏れを捕捉することによって光ファイバ通信スニッフィングを行う。保護外装が予め取り外されている場合には、光ファイバ６５６をデバイス６５５のクランプに挿入すると、ファイバ６５６が、小さい半径のＵターン部で押し込まれ、そこで光６５７が光センサ６５９に漏れて、情報が解析のために電子ケーブル６６０によってラップトップ６６１に運ばれる。
【０２８９】
ハッキングと監視方法の使用以外にも、携帯電話の会話やインターネット通信を監視するための多種多様な商用スパイウェアが容易に利用可能である。図４２に示す表は、トップ１０の評価スパイウェアプログラムの機能と、従業員、子供、及び配偶者の情報を有効利用するためにスパイする能力などの広告されている機能を比較している。この機能セットは驚くほど包括的であり、そこには電話、写真、ビデオ、ＳＭＳ／ＭＭＳテキスト、サードパーティのインスタントメッセージング、電子メール、ＧＰＳロケーショントラッキング、インターネット利用、アドレス帳、カレンダーイベント、バグ、コントロールアプリ、さらにはリモートコントロール機能等、驚くほど説得力のある数のサイバープライバシーを侵害する方法が含まれている。
【０２９０】
実際、サイバー攻撃は頻繁になり、毎日トラッキングされている。図４３に示すようなトラッキングサイトの１つは、マウントされた攻撃の場所、期間、種類を含むセキュリティ違反とデジタル攻撃をグローバルマップに表示する。サイバー攻撃を開始するには、一般に次のようないくつかの段階または技術の組み合わせが必要である。すなわち
・ＩＰパケットスニッフィング、
・ポートスキャン（ポート問い合わせ）、
・プロファイリング、
・詐欺、
・パケットハイジャック、
・サイバー感染、
・監視、
・サイバーパイレーツサイト管理
等が必要である。
【０２９１】
［ＩＰパケットスニッフィング］
サイバー犯罪者は、無線監視デバイスを使用して、ユーザ、そのトランザクション、及びそのアカウントに関する重要な情報を得ることができる。図４４に示すように、ＩＰパケットの内容は、２名のユーザ間のパスのどこでも取得すなわち「スニッフィング」できる。例えば、ユーザ６７５ＡがＩＰパケット６７０内のファイル（例えば写真またはテキスト）を自分のノートブック３５から友人６７５Ｂの携帯電話３２に送信すると、サイバーパイレーツ６３０は、送信者の最後のリンク６７３Ａをインターセプトし、送信者のローカルネットワーク６７２Ａをインターセプトし、クラウド６７１を監視し、受信者のローカル電話会社６７２Ｂをインターセプトするか、または受信機の最後のリンク６７３Ｂをインターセプトすることのいずれかによって、任意の数の場所でＩＰパケットを発見することができる。インターセプトされたＩＰパケット６７０に含まれる観測可能なデータは、通信で使用されるデバイスのレイヤ２ＭＡＣアドレス、受信側の送信者のレイヤ３アドレス、すなわちパケットの宛先を含み、ＵＤＰ、ＴＣＰなどのトランスポートプロトコルが使用される。ＩＰパケットには、要求されているサービスのタイプを潜在的に定義している送受信デバイスのレイヤ４ポート番号と、データファイル自体も含まれており、ファイルが暗号化されていない場合には、ファイルに含まれるデータをサイバーパイレーツ６３０が直接読み取ることも可能となる。
【０２９２】
ペイロードが暗号化されていない場合、口座番号、ログインシーケンス、パスワードなどのテキスト情報を読み取ることができ、それが価値あるものである場合、盗まれ、犯罪目的のために悪用されることがある。ペイロードにビデオや絵文字の情報が含まれている場合、コンテンツがどのレイヤ６アプリケーションフォーマットを採用しているかを判断するためにいくつかの追加作業が必要であるが、一度特定されれば、コンテンツを、閲覧、公開、またはおそらく通信相手の一方または両方を脅かすために使用することが可能となり得る。このようなサイバー攻撃は、サイバーパイレーツが個人的に通信相手を知ることはないため、「中間攻撃者」と呼ばれている。
【０２９３】
前述したように、クラウド内のＩＰパケットルーティングは予測不可能なので、雲６７１を監視することはより困難となり、すなわち監視が困難になる理由は、サイバーパイレーツ６３０はＩＰパケットの重要な情報に最初に遭遇したときに補足しなければならず、かつ後続のパケットが同じ経路とスニッフィングされたパケットに従わないことがあるからである。ラストマイルのデータを傍受することは、同じ会話を構成する一連の関連するパケットを観察する確率が高くなるが、その理由は、ローカルルータは通常、少なくともパケットが顧客自身のキャリア外のＰＯＰに到達するまで、所定のルーティングテーブルに従うからである。例えば、コムキャスト社のクライアントは、パケットがコムキャスト社の管理範囲及びカスタマーサービス領域を超えて地理的に移動するまで、完全にコムキャスト社が所有するネットワークを使用して、ルーティングチェーンの上にＩＰパケットを渡す可能性が高い。
【０２９４】
同じ２つのＩＰアドレス間の連続したパケットが十分に長い間発生した場合、会話全体を細かく再現することができる。例えば、ＳＭＳテキストメッセージがラストマイルで同じネットワークを通過する場合、サイバーパイレーツ６３０は、ＩＰアドレス及びポート＃によって、テキストを運ぶ複数のＩＰパケットが、同じ２つのデバイス、すなわち携帯電話３２とノートブック３５の間の会話を表すことを特定することができる。従って、アカウント番号とパスワードが異なるメッセージでテキスト化されるか、または不完全に多くのパケットに送信されたとしても、パケット識別子の一貫性により、サイバーパイレーツは会話を再構築してアカウント情報を盗むことができる。アカウント情報を盗めば、オフショア銀行に送金することが可能となり、またはアカウントのパスワードとセキュリティに関する質問を変更することによって、つまり一時的にＩＤ盗難を使ってアカウント権限を奪うことさえできる。
【０２９５】
ペイロードが暗号化されていても、ＩＰアドレス及びポート番号を含む残りのＩＰパケット６７０は暗号化されない。十分なコンピューティングパワーにアクセスできるサイバーパイレーツは、多数のＩＰパケットを繰り返しスニッフィングした後、暗号のパスワードを破るまで組織的に全ての組み合わせを試みる。鍵が破られると、パケット及び全ての後続のパケットは、サイバーパイレーツ６３０が解読して使用することが可能となる。「パスワード推測」によるログインパスワードのクラックの確率は、パケットスニッフィングが以下に説明するユーザ及びアカウント「プロファイリング」と組み合わされると大幅に向上する。「中間攻撃者」では、サイバーパイレーツが彼らに直接アクセスできないため、通信デバイスは通常は関与していないことに注意されたい。
【０２９６】
［ポートスキャン］
デバイスに侵入するもう１つの方法は、そのＩＰアドレスを使用して多くのレイヤ４ポートを調べ、全ての要求が応答を受信するかどうかを確認することである。図４５に示すように、一旦サイバーパイレーツ６８０がパケットスニッフィングまたは他の手段からＩＰアドレス「ＣＰ」を有する携帯電話３２をターゲットデバイスとして特定すると、サイバーパイレーツ６８０は、携帯電話３２上のポートに対して一連の問い合わせを開始し、セキュリティの確保されていないポートすなわちオープンポート、サービス及び保守ポート、またはアプリケーションバックドアを探す。ハッカーの問い合わせプログラムは全てのポート番号を体系的に循環することができるが、攻撃は通常、ｐｉｎｇのためのポート＃７、ＦＴＰのためのポート＃２１、ｔｅｌｎｅｔターミナルエミュレーションのためのポート＃２３、シンプルメールのためのポート＃２５など、悪名高い脆弱なポートに焦点を当てて行われる。図示のように、パケット６８０Ａ、６８０Ｂ、６８０Ｃ及び６８０Ｄを連続的に送信することによって、サイバーパイレーツ６６０は、この例では要求６８０Ｄの発生した携帯電話３２からの応答を待つ。応答が送信されるたびに、サイバーパイレーツはターゲットデバイスのオペレーティングシステムに関する詳細を学習する。
【０２９７】
ポートスキャンプロセスでは、サイバーパイレーツ６３０は本物のＩＤを公開したくないので、メッセージを受信するのに、図中「ＰＡ」という記号で記載されている、個人として追跡できない偽装疑似アドレスを使用する。また、サイバー犯罪者は盗まれたコンピュータとアカウントを使用する可能性があるため、他の誰かがターゲットデバイスをハッキングしようとしているように見え、追跡された場合、調査者は彼らではない無罪の人にそれを戻す。
【０２９８】
［プロファイリング］
ユーザとアカウントのプロファイリングとは、サイバーパイレーツが、公開されている情報を使用してターゲット、アカウント、及び個人履歴を調べて、パスワードを解読し、アカウントを特定し、資産を判定するプロセスである。ハッカーは、スニッフィングなどの手段を使用してターゲットのＩＰアドレスを取得すると、トレースルート・ユーティリティを使用してデバイスのアカウントのＤＮＳサーバを見つけることができる。その後、インターネット上の「Ｗｈｏ  ｉｓ」機能を利用することにより、アカウント所有者の氏名を見いだすことができる。プロファイリングでは、サイバー犯罪者がインターネット上を検索し、アカウント所有者に関する利用可能な全ての情報を収集する。情報源には、不動産取引、自動車登録、結婚と離婚、租税先取特権、駐車券、交通違反、犯罪記録などの公的記録が含まれる。多くの場合、大学や専門家のウェブサイトには、自宅住所、電子メールアドレス、電話番号、個人の生年月日が含まれている。Ｆａｃｅｂｏｏｋ、ＬｉｎｋｅｄＩｎ、Ｔｗｉｔｔｅｒなどのソーシャルメディアサイトを調査することで、サイバー犯罪者は重要な詳細情報を収集することができ、このような情報には、家族や友人、ペットの名前、前の自宅の住所、同級生、個人的な大事な出来事、恥ずかしい出来事、家族の秘密、そして個人的な敵を含む写真やビデオのファイルが含まれる。
【０２９９】
サイバーパイレーツの次のステップは、このプロファイルを使用して、プロファイルに基づいてユーザのパスワードを「推測」し、ターゲットデバイスと同じ個人の他のアカウントをハッキングすることである。一旦サイバー犯罪者が１つのデバイスのパスワードをクラッキングしてしまえば、人は記憶を容易にするためにパスワードを再利用する傾向があるため、サイバー犯罪者が他のアカウントに侵入する可能性は非常に高い。その時点で、人のＩＤを盗み、金銭を移動し、警察の捜査の対象にしてしまい、全ての資産を盗んで、その人の生活を本質的に破壊することが可能にもなり得る。例えば、本明細書の冒頭で説明したように、盗まれたアカウントから長いパスワードリストを収集するサイバー犯罪者は、同じパスワードとログイン情報を使用してコンサートやスポーツイベントへのプレミアムチケットを何百万ドルも違法に購入する。
【０３００】
［詐欺師］
サイバーパイレーツが誰かに偽装して、不正なサイバーセキュリティ資格情報を使用して通信やファイルにアクセスした場合、サイバーパイレーツは「詐欺師」として行動している。詐欺師タイプのサイバー攻撃は、サイバー犯罪者が個人アカウントに関する十分な情報またはアクセス権を所有して、被害者のアカウントを奪取し、不当に被害者の代理となって個人に対してメッセージを送信し、彼らがハッキングされたアカウントの所有者がそれを行ったと誤解させる形で発生し得る。最近、例えば、発明者の一人の個人的な友人が、彼女の「ＬＩＮＥ」パーソナルメッセンジャーアカウントをハッキングされた。アカウントを引き継いだサイバー犯罪者は、「車の事故があり、緊急融資のための資金が必要だ」という虚偽のメッセージを友人に送った。アカウントがハッキングされていることを知らないので、彼女の友人はリクエストが本当であり、彼女に急いで資金援助を行った。疑われるのを避けるためか、各友人に送られたリクエストは１，０００米ドル以下であった。幸運にも、送金する直前に、友人の一人が彼女に電話して送金情報を再確認したことで、詐欺が明らかになった。この電話がかけられなければ、これが詐欺師からのリクエストで、回線のアカウントの所有者がその名義で送金されたことも送金を要求されたことすら知らない状態だったと、誰も知ることはできなかったと思われる。
【０３０１】
別の形式の虚偽表示は、デバイスがセキュリティ特権を与えられ、サーバまたは他のネットワーク接続されたデバイスと情報を交換できるようになっており、サイバーパイレーツのデバイスが何らかの手段によって自らを認証されたサーバとして偽装する場合に発生し、犠牲者のデバイスは、サイバーパイレーツサーバへ詐欺サーバとは知らずにファイルや情報を委ねてしまうことになる。この方法は、バックアップクラウドが詐欺師のものであったことを除いて、有名人に通常のようにｉＣｌｏｕｄ（登録商標）を使ってプライベート画像ファイルをバックアップさせるために使用されたと言われている。
【０３０２】
詐欺師の別の形態は、人の電話または開いているブラウザに物理的にアクセスしている人が、電子メールを送信や電話への応答を行ったり、そこからさらに他の人のアカウントやデバイスからテキストメッセージを送信したりするなどの詐欺行為を行った場合に発生する。受信側は、既知のデバイスまたはアカウントに接続されているため、そのデバイスまたはアカウントを操作している人物が所有者であることを前提としている。詐欺の内容は、Ｆａｃｅｂｏｏｋに恥ずかしいコメントをフレンド投稿するといったいたずら的なもの、または誰かの配偶者が個人的な電話に返答するか、非公開にすべき性質の私的なテキストメッセージをインターセプトするような、より個人情報に関連する性質のものであり得る。この不正アクセスの結果が、嫉妬、離婚、報復的な訴訟につながる可能性がある。オフィスやカフェなどでトイレに行っている間にデバイスを一時的に監督しないままにすると、後の「感染」と題する部分で説明するように、詐欺師が個人情報や企業情報に素早くアクセスしたり、不正な電子メールを送信したり、ファイルを転送したり、マルウェアをデバイスにダウンロードする危険性がある。
【０３０３】
詐欺をベースにしたサイバー攻撃は、デバイスが盗難された場合にも重要である。このような場合では、たとえデバイスがログアウトしていても、泥棒はログインコードを破るのに十分な時間を有している。「ｆｉｎｄ  ｍｙ  ｃｏｍｐｕｔｅｒ」機能、すなわちサイバーパイレーツがデバイスに初めてログオンすると、ネットワーク上の盗難されたデバイスの位置を特定し、コンピュータのファイルを消去する機能は、もはや有効でなくなる。ハイテクに精通した犯罪者は現在、携帯電話やＷｉＦｉ接続がない場合にのみ、デバイスをアクティブにすれば良いことを知っているからである。このリスクは、パスラインセキュリティが単純な４桁の個人識別番号（ＰＩＮ）または暗証番号である携帯電話の場合に特に高いものとなる。わずか９９９９通りの組み合わせしかないので、ＰＩＮを破るのは時間の問題である。
【０３０４】
デバイスを保護するための重要な問題は、詐欺師のアクセスを防止することである。詐欺を防ぐには、一定の間隔でユーザのＩＤを認証し、必要な情報と特権にアクセスする権限があることを保証するための堅牢な手段が必要である。デバイスセキュリティはチェーン内の最も弱いリンクであることが多い。デバイスのセキュリティが破られるならば、堅牢なネットワークセキュリティの必要性が疑わしいものとなる。
【０３０５】
［パケットハイジャック］
パケットハイジャックは、ネットワークを通過するパケットの正常なフローを悪意のあるデバイスを介して迂回させるサイバー攻撃を含む。この例は図４６に示されており、ここではＩＰアドレス「ＮＢ」及びアドホックポート＃９９９９を有するノートブック３５が、ＩＰアドレス「ＣＰ」及びＦＴＰデータポート＃２０を有する携帯電話（図示せず）にＩＰパケット６７０としてファイルを送信している。通常の状況下では、ＩＰパケット６７０は、ノートブック３５からＷｉＦｉルータ２６への経路を通過し、高速有線接続２４によってクラウド内のサーバ２２Ａに接続されたルータ２７に達する。
【０３０６】
しかし、ルータ２７の完全性がサイバーパイレーツ６３０からのサイバー攻撃によって損なわれた場合、ＩＰパケット６７０はＩＰパケット６８６Ａに書き換えられる（図では、明確化のため、ＩＰアドレスとポート番号のみが示されている簡略化された形式で図示されている）。ＩＰパッケージを経路変更するために、宛先アドレス及びポート番号は、携帯電話のものからサイバーパイレーツ６３０のデバイスのもの、具体的にはＩＰアドレス「ＰＡ」及びポート＃２００００に変更される。次いで、サイバーパイレーツ６３０のデバイスは、ＩＰパケットのペイロードから必要な情報を取得し、場合によってはＩＰパケットのペイロードの内容を変更する。不正なペイロードは、「感染」というトピックで後に説明するように、任意の数の種類の不正な犯罪を行ったり、情報を収集したり、マルウェアを携帯電話にダウンロードしたりするために使用される可能性がある。
【０３０７】
ハイジャックされたパケット、すなわちＩＰパケット６８６Ｂは、ポート＃９９９９からの発信元ＩＰアドレス「ＮＢ」を有する元のＩＰパケット６７０のようにポート＃２０の携帯電話ＩＰアドレス「ＣＰ」に送信されるように改変され、パケットが有線接続２４の代わりに有線接続６８５Ｂ上を移動する点が異なってくる。あるいは、ハイジャックされたＩＰパケットは、損なわれたルータ２７に返され、その後、有線接続２４を介してクラウドに送られる。サイバーパイレーツ６３０は、パケットハイジャックの犯罪の効果を最大限にするためにパケットハイジャック時にそのＩＤを隠す必要があるため、レイヤ３ＩＣＭＰ機能「ｔｒａｃｅｒｏｕｔｅ」でさえも通信の真の経路の特定が困難になるように、ＩＰパケットの真のルーティングを隠す。ただし、ハイジャックによりパケットルーティングに著しい遅延が追加された場合、異常な遅延がネットワークオペレータによる調査を促す可能性がある。
【０３０８】
［サイバー感染］
サイバー攻撃の最も狡猾なカテゴリの１つは、情報を収集し、詐欺を行い、トラヒックをリダイレクトし、他のデバイスを感染させ、悪化させたり、閉鎖したりするマルウェアを標的デバイスまたはネットワークにインストールする「サイバー感染」すなわちサービス妨害をさせなくする状態を引き起こすことである。サイバー感染は、電子メール、ファイル、ウェブサイト、システム機能拡張、アプリケーションプログラム、またはネットワークを通じて広がる。図４２の表に記載されているマルウェアの１つの一般的なクラス「スパイウェア」は、あらゆる種類のトランザクション情報を収集し、それをサイバーパイレーツに渡す。「フィッシング」の場合には、慣れ親しんだログインページのように見えるウェブページやアプリケーションシェルがアカウントのログインや個人情報の入力を求め、得た情報をサイバーパイレーツに転送する。さらに他のマルウェア感染では、ハードウェアを制御することが可能で、例えば前述のパケットハイジャックを実行するようにルータを制御する等を行う。このような場合、サイバーパイレーツは自分の目的のために有益な情報や制御を得ようとする。
【０３０９】
ウイルス、ワーム、トロイの木馬等のサイバー感染の別のクラスは、重要なファイルを上書きするか、または無意味な機能を繰り返し実行して、デバイスが通常の作業を行うのを防ぐように設計されている。基本的には、サービスを拒否したり、パフォーマンスを低下させたり、デバイスを完全に停止させたりする。これらの悪意のある感染は、本質的に破壊的であり、有害な目的、競合他社のビジネスにおいて通常の業務を行えなくする目的、または単純に可能であるかどうかを見たいと考えるハッカーの楽しみを動機として使用される。
【０３１０】
［監視］
サイバー犯罪を超えた脅威と監視。そのような場合、私立探偵または知人を雇うかまたは強制して、音声の会話、データ交換、及び場所を監視するために、デバイスまたはプログラムをターゲットのパーソナルデバイスにインストールさせる。探偵は対象者がそれを知ることなくターゲットのデバイスに一時的にアクセスしなければならないので、捕まる危険性がより高い。例えば、ＳＩＭカードで、電話のネットワークアクセス特権をコピーすることができるが、同時にターゲットのコール及びデータトラヒックを監視するサイバー犯罪者に情報を送信させるものが市販されている。
【０３１１】
他の形式の監視には、カジノにあるものと同様に、人の行動や電話を監視する秘密のビデオカメラの使用が含まれる。ビデオ監視により、デバイスのパスワードすなわちＰＩＮは、ログインプロセス中にユーザのキーストロークを観察するだけで学習できる。十分なカメラがあれば、最終的にログインプロセスが記録される。疑いを起こさせずにカメラネットワークにアクセスするためには、サイバーパイレーツが建物、店舗、または通りにある既存のカメラ監視システムをハックし、他人のネットワークモニタへのアクセスを介して疑いをもたない犠牲者の行動を監視することができる。ビデオ監視とパケットスニッフィングを組み合わせることで、その後サイバー攻撃を開始するためのさらに包括的なデータセットが得られる。
【０３１２】
［サイバーパイレーツによる管理（侵入）］
サイバーパイレーツが情報を得ることのできるもう１つの手段は、ハッキングし、デバイス、サーバ、またはネットワークのシステム管理権限にアクセスすることである。従って、システム管理者のログインをハッキングすることによって、あるユーザのアカウントに無許可でアクセスするのではなく、システムを使用しているユーザに知られずに、重要なアクセスと特権がサイバーパイレーツに利用可能になる。システム管理者はシステムの警察として働くので、その犯罪活動を把握できる者はいない。本質的には、腐敗した管理システムやネットワークでは、警察の取り締まりできる者がいない。
【０３１３】
［結論］
インターネット、パケット交換ネットワーク、７層のオープンソースイニシアチブネットワークモデルの普遍的な採用による普遍性と相互運用性は、過去２０年にわたり、世界規模の通信が比類のない規模で拡大し、スマートフォンからタブレット、コンピュータ、スマートテレビ、車、さらには家電製品や電球に至るまで幅広く使用されることを可能にした。イーサネット（登録商標）、セルラー、ＷｉＦｉ、及びケーブルテレビの接続の基礎となるインターネットプロトコルすなわちＩＰの世界的な採用は、統一された通信が得られただけでなく、できる限り多くのデバイスやシステムに侵入しようとするハッカーやサイバー犯罪者の課題を大幅に簡素化した。今日の通信ネットワークを攻撃するために利用可能なソフトウェアとハードウェアの方法が大量にあることを考えると、唯一の防御として単一のセキュリティ方法を用いるのは十分ではない。代わりに、高度なサイバー攻撃からの保護を確実にするために、全てのデバイス、ラストリンク、ローカルの電話／ネットワーク、及びクラウドネットワークを保護する体系的なアプローチが必要である。利用される方法は、ＱｏＳ、ネットワークレイテンシー、ビデオまたは音質を犠牲にすることなく、本質的なサイバーセキュリティとサイバープライバシーを提供するものでなければならない。暗号化は安全な通信とデータストレージでこの次世代を開発する上で重要な要素であるべきであるが、ネットワークのセキュリティは暗号化の方法論にのみ依存してはならない。
【先行技術文献】
【特許文献】
【０３１４】
【特許文献１】米国特許第７，９２１、３２０号明細書
【発明の概要】
【課題を解決するための手段】
【０３１５】
本発明によれば、データ（広義には、テキスト、音声、映像、グラフィック、及び他の全ての種類のデジタル情報またはファイル）は、セキュア動的通信ネットワーク及びプロトコル（ＳＤＮＰ）ネットワークまたは「クラウド」を通じて伝送される。ＳＤＮＰクラウドは、世界中のあらゆる場所に配置されたサーバ、あるいは他の種類のコンピュータまたはデジタル装置（本明細書中では「サーバ」と総称する）にホストされた複数の「ノード」（「メディアノード」と呼ばれる場合もある）を含む。２以上のノードを、単一のサーバ上に配置することも可能である。一般的に、データは、メディアノード間で、光ファイバケーブルを通じて伝送される光、無線またはマイクロ波スペクトルの無線波、銅ワイヤまたは同軸ケーブルにより伝送される電気信号、あるいは衛星通信により伝送されるが、本発明は、デジタルデータをある地点から他の地点に伝送することができる任意の手段を幅広く含む。本発明に係るＳＤＮＰネットワークは、ＳＤＮＰクラウド、並びに、ＳＤＮＰクラウド及びクライアントデバイス間の「ラストマイル」リンクを含む。上記のクライアントデバイスとしては、例えば、セルフォン（スマートフォン）、タブレット、ノート型コンピュータ、デスクトップ（デスクトップ型コンピュータ）、モバイル電子機器、ＩｏＴ（Internet-of-Things）デバイスまたはアプリケーション、自動車または他の車両が挙げられる。ラストマイル通信はまた、セルフォン通信塔、家庭に接続されるケーブルまたはファイバ、及び公衆Ｗｉｆｉルータを含む。
【０３１６】
ＳＤＮＰクラウド内のメディアノード間で通信するときは、データは、固定長または可変長のデジタルビット列である「パケット」の形態で伝送され、スクランブル化、暗号化、分割、またはそれらと逆の処理であるアンスクランブル化、復号、混合などの技術を用いて偽装される。（注意：本明細書では、「または（ｏｒ）」は、文脈上他の意味を有する場合を除き、その接続詞的な意味（及び／または（ａｎｄ／ｏｒ））で使用される。）
【０３１７】
スクランブル化は、データパケット内のデータの配列順番を変更する。例えば、データパケット内にその順番に配列されたデータセグメントＡ、Ｂ、及びＣを、データセグメントＣ、Ａ、及びＢの順番に並べ替える。スクランブル化操作と逆の操作は、「アンスクランブル化」と呼ばれる。アンスクランブル化は、パケット内のデータの配列順番を元の配列順番（上記の例では、Ａ、Ｂ、Ｃの順番）に戻す。データパケットのアンスクランブル化操作と、それに続くスクランブル化操作との組み合わせを、「再スクランブル化」と称する。スクランブル化されたパケットを再スクランブル化するときは、パケットは、前回のスクランブル化操作のときと同一または異なる方法でスクランブル化される。
【０３１８】
第２の操作の「暗号化」は、パケット内のデータを、送信者及び他の認可された者、並びに暗号化と逆の操作である「復号」を実施する者のみに理解可能なサイファテキストと呼ばれる形態に符号化することである。サイファテキストデータパケットの復号操作と、それに続く再度の暗号化操作との組み合わせを、本明細書中では「再暗号化」と称する。この再暗号化での暗号化操作は、一般的に、ただし必須ではないが、前回の暗号化のときと異なる方法を用いる。
【０３１９】
第３の操作の「分割」は、その名称が示すように、パケットを２以上のより小さなパケットに分割することを含む。分割と逆の操作である「混合」は、２以上の分割されたパケットを再結合して、元の単一のパケットに戻すことと定義される。以前に分割及び混合されたパケットの分割は、前回の分割操作のときと同一または異なる方法で行われる。分割操作及び混合操作の順番は可逆的であり、分割は混合によって元に戻すことができる。またその逆に、複数の入力を混合した出力は、分割することによってその構成要素（複数の入力）に戻すことができる。（注意：スクランブル化及びアンスクランブル化、暗号化及び復号、並びに分割及び混合は、互いに逆の処理なので、ある処理を実施するのに使用されるアルゴリズムまたは方法の情報は全て、それと逆の処理を実施するのに必要とされる。したがって、特定のスクランブル化、暗号化、または分割アルゴリズムについて言及するときは、そのアルゴリズムの情報により、それと逆の処理の実施が可能となることを理解されたい。）
【０３２０】
本発明によれば、ＳＤＮＰクラウドを通過するデータパケットは、スクランブル化または暗号化されるか、あるいはスクランブル化または暗号化の一方または両方と分割との組み合わせが施される。加えて、パケットを解読者にとってより複雑にするために、またはパケットを所定の長さにするために、「ジャンク（意味を持たない）」データがパケットに追加される。さらに、パケットは、パースされる、すなわち個別の部分（断片）に分割される。コンピュータ用語では、パース（parse）は、コンピュータ言語の命令文、コンピュータ命令、またはデータファイルを、コンピュータにとって有用な複数の部分に分割することを意味する。パースはまた、命令またはデータパケットの目的を不明にするか、またはデータを特定のデータ長さを有するデータパケットに分割するのに用いられる。
【０３２１】
データパケットのフォーマットはＳＤＮＰ内のインターネットプロトコルに従うが、メディアノードのアドレスは、標準的なインターネットアドレスではない。すなわち、メディアノードのアドレスは、インターネットＤＳＮサーバによって識別することはできない。したがって、メディアノードは、インターネットを介してデータパケットを技術的には受信できるが、アドレスの認識または問い合わせに対しては応答できない。さらに、インターネットのユーザは、たとえメディアノードにコンタクトできたしても、メディアノードからは、該ノードへのアクセスに必要な識別認証情報を有していない偽者と認識されるので、メディアノード内のデータにアクセス及び分析することはできない。具体的には、メディアノードが、ＳＤＮＰネームサーバまたはそれと同等の機能を有するデバイス内の指定サーバ上で実行される有効なＳＤＮＰノードとして登録されていない限り、該ノードから他のＳＤＮＰメディアノードに送信されたデータパケットは、無視され廃棄されることとなる。同様に、ＳＤＮＰネームサーバに登録されたクライアントのみが、ＳＤＮＰメディアノードにコンタクトすることができる。登録されていないサーバと同様に、登録されたＳＤＮＰクライアント以外のソースから受信したデータパケットは、無視され、即座に廃棄される。
【０３２２】
「単一ルート」と呼ばれる比較的単純な実施形態では、データパケットは、ＳＤＮＰクラウド内の一連のメディアノードを介した単一ルートを通じて伝送され、クラウドに入るときに通るメディアノードでスクランブル化され、クラウドから出るときに通るメディアノードでアンスクランブル化される（この２つのノードは、「ゲートウェイノード」または「ゲートウェイメディアノード」と呼ばれる）。若干より複雑な実施形態では、パケットは、各メディアノードで、前のメディアノードで使用されたものとは異なるスクランブル化方法を用いて再スクランブル化される。別の実施形態では、パケットは、クラウドに入るときに通るゲートウェイノードで暗号化、クラウドから出るときに通るゲートウェイノードで復号される。また、これに加えて、パケットは、クラウド内で通る各メディアノードで再暗号化してもよい。所与のノードは、パケットをスクランブル化または暗号化するときに毎回同一のアルゴリズムを使用するので、この実施形態は、「静的」なスクランブル化または暗号化と称する。
【０３２３】
パケットに２以上の操作（例えば、スクランブル化及び暗号化）を施す場合、それらと逆の操作は、元の操作の実施順と逆の順番で実施することが好ましい。例えば、パケットがスクランブル化された後に暗号化され、メディアノードから送信される場合、次のメディアノードに到着したパケットは、復号された後にアンスクランブル化される。パケットは、メディアノード内に存在するときにのみ、その元の形態に再生成される。パケットは、メディアノード間で伝送されるときは、スクランブル化、分割／混合、または暗号化されている。
【０３２４】
「マルチルート」データ伝送と呼ばれる別の実施形態では、パケットは、ゲートウェイノードで分割され、これにより生成された複数のパケットが、ゲートウェイノード以外はメディアノードを共有しない一連の「並列」な経路を通ってクラウドを横断する。複数のパケットはその後（一般的には出口のゲートウェイノードで）混合され、これにより元のパケットが再生成される。したがって、たとえハッカーが単一パケットの意味を理解できたとしても、ハッカーは、メッセージ全体の一部しか得ることはできない。また、パケットは、分割の前または後に、ゲートウェイノードでスクランブル化及び暗号化されてもよい。また、複数のパケットは、それが通過する各メディアノードにおいて、再スクランブル化または再暗号化されてもよい。
【０３２５】
さらなる別の実施形態では、パケットは、ＳＤＮＰクラウド内の単一ルートまたは一連の並列経路だけを通じてではなく、互いに交差する部分を多数含む複数の経路を通じて伝送される。この実施形態は、可能性がある経路のイメージがメッシュに似ているので、「メッシュ伝送」と称される。上述した実施形態と同様に、パケットは、ＳＤＮＰクラウド内の各メディアノードを通過するときに、スクランブル化、暗号化、及び分割／混合される。
【０３２６】
パケットがＳＤＮＰネットワークを通るルートは、メディアノードセグメント自体、または好ましくは「デュアルチャンネル」または「トリチャンネル」実施形態では専用のシグナリングサーバ上で実行される別個のシグナリングノードにより実施されるシグナリング機能により決定される。このシグナリング機能は、各パケットが送信クライアントデバイス（例えばセルフォン）から送信されるときに、そのパケットのルートを、ネットワークの状況（例えば伝搬遅延）並びにその通信の優先度及び緊急性に基づいて決定する。そして、そのルート上の各メディアノードに、そのノードがパケットを受信する予定であることを通知すると共に、そのノードが受信したパケットの送信先を指示する。各パケットはタグにより識別され、シグナリング機能は、各メディアノードに、そのノードから送信される各パケットにどのタグを付与するかを指示する。一実施形態では、データタグは、各データのサブパケットに添付されサブパケットの識別に使用されるデータフィールドであるＳＤＮＰヘッダーまたはサブヘッダーに含められ、各サブパケットは、パケット内の特定のデータ「スロット」に格納された、１または複数のソースからのデータセグメントを含む。任意の２つのメディアノード間でのデータ伝送中に、複数のサブパケットが、１つのより大きなデータパケット内に存在し得る。
【０３２７】
ルーティング機能は、分割及び混合機能と連携して行われる。パケットが分割された場合には、各サブパケットのルートを決定すると共に、サブパケットが再結合（混合）されるノードに対してそのサブパケットを混合するように命令する必要があるためである。マルチルート実施形態では、ＳＤＮＰネットワークを横断して出口ゲートウェイノードに到着するまでに、パケットの分割及び混合は１回または複数回行われる。パケットを分割するノードとそのパケットを分割して生成するサブパケットの数の決定、及びそのサブパケットの伝送ルートとそのサブパケットを混合して元のパケットを再生成するノードの決定は全て、該シグナリング機能が別個のシグナリングサーバにより実施されるか否かに関わらず、シグナリング機能により制御される。分割アルゴリズムは、分割されるデータパケットのデータセグメントについて、各サブパケット内に含めるデータセグメント、並びにサブパケット内での各データセグメントの順番及び位置を指定する。混合アルゴリズムは、サブパケットを混合するノードにおいて、分割のときと逆の処理を実施して元のパケットを再生成する。当然ながら、シグナリング機能により再分割の命令を受けた場合、そのノードは、その分割処理を実施するときの時間及びステートに対応する、前の分割のときと別個の分割アルゴリズムに従ってパケットを再度分割する。
【０３２８】
シグナリング機能により、メディアノードが、複数のパケットを、それが分割されたパケット（サブパケット）であるかまたは互いに異なるメッセージに関連するかに関わらず、ネットワークを通じて「次のホップ」上の特定の送信先メディアノードに送信するように命令された場合、とりわけ、複数のサブパケットが次のホップのための共通の送信先メディアノードを共有する場合には、そのメディアノードは、その複数のパケットを結合して単一の大きなパケットを生成する（郵便局において、宛先が同一の複数の手紙を１つの箱に入れ、その箱をその宛先に送ることに似ている）。
【０３２９】
本発明の「動的」な実施形態では、ＳＤＮＰクラウド内の各メディアノードは、それを通る一連のパケットに対して、同一のスクランブル化、暗号化、または分割アルゴリズムまたは方法を使用しない。例えば、所与のメディアノードでは、あるパケットに対しては、特定のスクランブル化、暗号化、または分割アルゴリズムを使用してスクランブル化、暗号化、または分割を行い、その次のパケットに対しては、前回のとは別個のスクランブル化、暗号化、または分割アルゴリズムを使用してスクランブル化、暗号化、または分割を行う。この「動的」な操作により、ハッカーがパケットの解読に使用できる時間が非常に短くなり（例えば１００ミリ秒）、また、たとえパケットの解読に成功してもその情報はすぐに使えなくなるので、ハッカーが直面する困難性を著しく高めることができる。
【０３３０】
動的な実施形態では、各メディアノードは、いわゆる「ＤＭＺサーバ」に接続されている。ＤＭＺサーバは、ノードにおけるデータ伝送部分とは別個の部分と見なすこともでき、メディアノードがそれから出力されるパケットに対して適用する可能性があるスクランブル化、暗号化、及び分割アルゴリズムのリストまたはテーブルを含むデータベース（「セレクタ」）を有する。セレクタは、メディアノードですら知らず、かつ全てのＤＭＺサーバが所与の時点で同一のセレクタを有しているために「共有秘密」と呼ばれる多数の情報の一部である。
【０３３１】
メディアノードは、スクランブル化されたパケットを受信したとき、動的な実施形態では、そのパケットのアンスクランブル化に使用するアルゴリズムを該ノードに知らせるのに使用される「シード」も受信する。シードは、それ自体は意味を持たない偽装した数値であるが、頻繁に変更されるステート（例えば、前のメディアノードでパケットをスクランブル化したときの時間）に基づいている。前のノードがパケットをスクランブル化したときに、該ノードに接続されたＤＭＺサーバは、そのときのステートに基づいてシードを生成する。当然ながら、ステートは、該ノードに接続されたＤＭＺサーバがパケットのスクランブル化に使用するアルゴリズムを選択するのにも使用される。選択されたアルゴリズムは、送信側ノードに、そのパケットのスクランブル化方法に関する命令の形態で伝達される。したがって、送信側ノードは、パケットのスクランブル化方法の命令と、次のメディアノードに伝送されるシードとの両方を受信する。ＤＭＺサーバ内で動作するシード生成器は、その処理が実施される時間でのステートに基づくアルゴリズムを使用してシードを生成する。シード生成器及びそのアルゴリズムは、メディアノードの共有秘密の一部であるが、生成されたシードは、秘密情報ではない。アルゴリズムにアクセスしない限り、数値シードは意味を持たないからである。
【０３３２】
したがって、パケットルート上の次のメディアノードは、スクランブル化されたパケットと、そのパケットに関連するステート（例えば、そのパケットがスクランブル化された時間）に由来するシードとを受信する。シードは、そのパケット自体に含めてもよいし、そのパケットが受信側ノードに送信される前に、そのパケットと同一のルートまたは別のルート（例えばシグナリングサーバ）を介して送信してもよい。
【０３３３】
シードの受信方法に関わらず、受信側ノードは、受信したシードをそれに接続されたＤＭＺサーバに送信する。ＤＭＺサーバは、共有秘密の一部であるスクランブル化アルゴリズムのセレクタまたはテーブルを有しているので、送信側ノードのＤＭＺサーバのセレクタと同様に、シードを使用して、パケットのスクランブル化に使用されたアルゴリズムを識別すると共に、受信側ノードにパケットのアンスクランブル化方法を指示することができる。したがって、受信側ノードは、スクランブル化されていない形態のパケットを再生成し、元のデータを復元することができる。一般的に、パケットは、次のノードに送信される前に、別のスクランブル化アルゴリズムに従って再びスクランブル化されることとなる。この場合、受信側ノードは、そのＤＭＺサーバからスクランブル化アルゴリズム及びシードを取得して、上記のプロセスを繰り返す。
【０３３４】
したがって、パケットは、ＳＤＮＰネットワークを通じて伝送されるに従って、各ノードで別個のスクランブル化アルゴリズムに従ってスクランブル化される。また、それと共に、各ノードにおいて、次のノードがそのパケットをアンスクランブル化することを可能にする新しいシードが生成される。
【０３３５】
本発明の別の実施形態では、実際のステート（例えば時間）が、ノード間で伝送される（すなわち、送信側ノードは受信側ノードにシードを送信する必要がない）。送信側メディアノードと受信側メディアノードとの両方に接続されたＤＭＺサーバは、任意の時点での識別アルゴリズムを含む隠し数字生成器（これも、共有秘密の一部である）を含む。送信側ノードに接続されたＤＭＺサーバは、可能性があるスクランブル化アルゴリズムのセレクタまたはテーブルからスクランブル化アルゴリズムを決定するための隠し数字を、ステートを使用して生成する。送信側ノードは、ステートを受信側ノードに送信する。シードとは異なり、隠し数字は、ネットワークを通じて送信されず、メディアノードとそのＤＭＺサーバとの間のプライベート通信を通じて送信される。受信側メディアノードが、入力データパケットに関するステートを受信したとき、該ノードに接続されたＤＭＺサーバ内の隠し数字生成器は、そのステートを使用して、同一の隠し数字を生成する。生成された数字は、セレクタまたはテーブルが、パケットのアンスクランブル化に使用するアルゴリズムを決定するのに使用される。ステートは、パケットに含めて伝送してもよいし、パケットを送信する前に、パケットの送信ルートと同一または別のルートを通じて送信側ノードから受信側ノードに伝送してもよい。
【０３３６】
動的暗号化及び分割に使用される技術は、動的スクランブル化に使用されたものと同様であるが、動的暗号化では、「鍵」がシードの代わりに使用される。ＤＭＺサーバにより保持された共有秘密は、暗号化及び分割アルゴリズムのセレクタまたはテーブルと、鍵生成器とを含む。対称鍵暗号化の場合、送信側ノードは、受信側ノードに、該ノードのＤＭＺサーバで、パケットの暗号化に使用されたアルゴリズムを識別し、それによりファイルを復号するのに使用される鍵を送信する。非対称鍵暗号化の場合、メディアノードは、情報を要求する。すなわち、まず、受信側ノードが、暗号化鍵を、送信されるデータパケットを含んでいる送信側ノードに送信する。そして、送信側メディアノードは、受信した暗号化鍵に従ってデータを暗号化する。暗号化鍵を生成する受信側メディアノードのみが、その暗号化鍵に対応する復号鍵を有しているので、その暗号化鍵を使用して生成されたサイファテキストを復号することができる。重要なことには、非対称暗号化では、暗号化に使用される暗号化鍵にアクセスしても、データパケットの復号方法に関する情報は得られない。
【０３３７】
分割の場合は、パケットを分割してサブパケットを生成したメディアノードから、そのサブパケットを混合するメディアノードにシードが送信される。この混合ノードに接続されたＤＭＺサーバは、受信したシードを使用して、分割アルゴリズム、すなわちサブパケットの混合に使用するアルゴリズムを決定する。
【０３３８】
上述したように、デュアルまたはトリチャンネル実施形態では、シグナリング機能は、シグナリングサーバと呼ばれる別個のサーバ群上で動作するシグナリングノードにより実施される。このような実施形態では、シード及び鍵は、送信側メディアノードから受信側メディアノードに直接送信されるのではなく、シグナリングサーバを介して送信される。したがって、送信側メディアノードは、シードまたは鍵をシグナリングサーバに送信する。上述したように、シグナリングサーバは、パケットのルートの決定に対して責任を負うので、シグナリングサーバは、各パケットが送信される次のメディアノードを知っている。
【０３３９】
ハッカーによるハッキングをより困難にするために、セレクタ内の可能性があるスクランブル化、分割、暗号化方法のリストまたはテーブルは、特定のシードまたは鍵に対応する方法が変更されるように、定期的に（例えば毎時間または毎日）シャッフルされる。したがって、所与のメディアノードにおいて、日１の時間ｔ１で生成されたパケットに対して使用される暗号化アルゴリズムは、日２の同じ時間ｔ１で生成されたパケットに対して使用される暗号化アルゴリズムとは異なり得る。
【０３４０】
各ＤＭＺサーバは、一般的に、同一の「サーバファーム」内の１または複数のメディアノードと物理的に接続されている。上述したように、メディアノードは、それに接続されたＤＭＺサーバに（例えば、そのパケットが生成された時間またはステートに基づく）シードまたは鍵を提供することにより、該ノードが受信したパケットに対して行う操作に関する指示（命令）を要求するが、メディアノードは、ＤＭＺサーバ内の共有秘密または他の任意のデータまたはコードにはアクセスできない。ＤＭＺサーバは、メディアノードからの要求に応答し、シードまたは鍵を使用して、メディアノードがパケットのアンスクランブル化、復号、または混合に使用するべき方法を決定する。例えば、パケットがスクランブル化されており、メディアノードがそれをアンスクランブル化する方法を知りたい場合、ＤＭＺサーバは、スクランブル化アルゴリズムのリスト（またはセレクタ）を検索して、シードに対応する特定のアルゴリズムを見つける。ＤＭＺサーバはその後、見つけたアルゴリズムに従ってパケットをアンスクランブル化するように、メディアノードに命令する。要するに、メディアノードは、シードまたは鍵に具現化された問い合わせをＤＭＺサーバに送信し、ＤＭＺサーバは、その問い合わせに応答してメディアノードに命令を送信する。
【０３４１】
メディアノード（ＤＮＳにより認識されるＩＰアドレスを有していないのにも関わらず）は、インターネットを介してアクセス可能であるが、ＤＭＺサーバは、メディアサーバに接続されたネットワークに対してワイヤまたは光ファイバを介したローカルネットワーク接続のみを有するインターネットからは完全に分離される。
【０３４２】
「単一チャンネル」の実施形態では、シード及び鍵は、送信側メディアノード及び受信側メディアノード間でデータパケット自体の一部として送信されるか、またはデータパケットの送信前に、データパケットの送信ルートと同一のルートを使用して、別個のパケットに含めて送信される。例えば、パケットを暗号化するときは、メディアノード＃１は、暗号化を実施したときの時間に基づく暗号化鍵をパケット内に含める。そして、暗号化鍵を含むパケットがメディアノード＃２に到着すると、メディアノード＃２は、該ノードに接続されたＤＭＺサーバに暗号化鍵を送信する。そして、ＤＭＺサーバは、受信した鍵を使用して、パケットを復号するための復号方法をセレクタから選択する。メディアノード＃２はその後、パケットをメディアノード＃３に送信する前に、ＤＭＺサーバにパケットの再暗号化方法を問い合わせる。繰り返すが、ＤＭＺサーバは、セレクタにより選択された暗号化方法をメディアノード＃２に知らせると共に、選択された暗号化方法に対応するステートを反映した鍵をメディアノード＃２に送信する。メディアノード＃２は、暗号化を実施し、暗号化されたパケット及び鍵を（個別にまたはパケットの一部として）メディアノード＃３に送信する。鍵はその後、同様の態様で、メディアノード＃３により、パケットを復号するのに使用される。この結果、ハッカーがパケットの解読に使用できる、単一の静的復号方法は存在しない。
【０３４３】
上記の例で、時間、すなわち動的な「ステート」状態を、シードまたは鍵に具現化される、スクランブル化、暗号化、または分割方法の決定因子として使用することは、一例にすぎない。任意の可変パラメータ、例えばパケットが通過したノードの数も、使用される特定のスクランブル化、暗号化、または分割方法を選択するためのシードまたは鍵についての「ステート」として使用することができる。
【０３４４】
「デュアルチャンネル」の実施形態では、シード及び鍵は、メディアノード間で直接的に送信されるのではなく、シグナリングサーバから構成されている第２の「命令及び制御」チャンネルを介してメディアノード間で伝送される。シグナリングノードはまた、メディアノードに、ルーティング情報を提供すると共に、パケットのルート上のメディアノードに、そのパケットの分割方法及び他のパケットとの混合方法を知らせる。また、シグナリングノードは、各メディアノードに対して、該ノードの次のメディアノードがそのパケットを認識することができるように、該ノードから送信される各パケットに識別「タグ」を付与するように命令する。シグナリングサーバは、所与のメディアノードに対して、該ノードにパケットを送信したメディアノードと、該ノードから送信されたパケットを受信するメディアノードとのみを知らせることが好ましい。これにより、どのメディアノードも、ＳＤＮＰクラウド内でのパケット伝送ルートの全体を知らない。いくつかの実施形態では、ルーティング機能は、２以上のシグナリングサーバで分割して行ってもよい。例えば、第１のシグナリングサーバで、特定のメディアノードへのルートを決定し、第２のシグナリングサーバで、その特定のメディアノードから別のメディアノードへのルートを決定し、このような処理を出口ゲートウェイノードまで続ける。これにより、どのシグナリングサーバも、データパケットのルーティングの全体を知らない。
【０３４５】
「トリチャンネル」の実施形態では、「ネームサーバ」と呼ばれる第３のサーバ群を使用して、ＳＤＮＰクラウド内の構成要素を識別し、ＳＤＮＰクラウドに接続されたデバイスの識別子及びそれに対応するＩＰまたはＳＤＮＰアドレスに関する情報を保存する。加えて、ネームサーバは、ＳＤＮＰクラウド内のメディアノードを頻繁にモニタし、例えば、アクティブなメディアノードの現在のリスト、及びクラウド内のメディアノードの全ての組み合わせについての伝搬遅延のテーブルを維持する。通信が開始される第１のステップでは、クライアントデバイス（例えばタブレット）は、ＩＰパケットをネームサーバに送信し、データ送信先または着呼者のアドレスまたは他の情報を要求する。さらに、デバイスがクラウドに最初に接続、すなわち登録されるときの最初のコンタクトとしての役割を果たすために、別個の専用ネームサーバが使用される。
【０３４６】
追加的な有益なセキュリティとして、互いに異なるセレクタ、シード及び鍵生成器、並びに他の共有秘密を有する個別のセキュリティ「ゾーン」が、単一のＳＤＮＰクラウド内に設けられる。互いに隣接するゾーンは、両ゾーンの共有秘密を保持し、一方のゾーンのルールに従うデータフォーマットを、他方のゾーンのルールに従うデータフォーマットに変換する能力を有するブリッジメディアノードにより接続される。
【０３４７】
同様に、例えば互いに異なるサービスプロバイダによりホストされた互いに異なるＳＤＮＰクラウド間の通信では、各クラウドのインターフェースブリッジサーバ間に、全二重（すなわち双方向）通信リンクが形成される。各インターフェースブリッジサーバは、各クラウドについての関連共有秘密及び他のセキュリティ情報にアクセスすることができる。
【０３４８】
一般的に、同様のセキュリティ技術が、ＳＤＮＰクラウドとクライアントデバイス（例えばセルフォン、タブレット）との間の「ラストマイル」に適用され得る。クライアントデバイスは、通常、クラウドから離れたセキュリティゾーンに位置するため、まずは、認証ＳＤＮＰクライアントにする必要がある。このステップは、一般的にはＳＤＮＰ管理サーバからのダウンロードにより、クライアントデバイスに、そのデバイスのセキュリティゾーンに特有のソフトウェアパッケージをインストールすることを含む。クライアントデバイスは、クラウド内のゲートウェイメディアノードを介して、ＳＤＮＰクラウドにリンクされる。このゲートウェイメディアノードは、クラウド及びクライアントデバイスのセキュリティゾーンの両方に関する共有秘密にアクセスすることができる。しかし、クライアントデバイスは、ＳＤＮＰクラウドに関する共有秘密にアクセスすることはできない。
【０３４９】
セキュリティレベルを高めるために、クライアントサーバ間で、シグナリングサーバを介して、シード及び鍵が直接的に送信される。したがって、送信側クライアントデバイスは、シード及び／または鍵を受信側クライアントデバイスに直接的に送信する。このような実施形態では、受信側クライアントデバイスが受信したパケットは、送信側クライアントデバイスから送信されたパケットと同一のスクランブル化または暗号化形式を有する。そのため、受信側クライアントデバイスは、送信側クライアントデバイスから受信したシード及び鍵を使用して、パケットのアンスクランブル化または復号を行うことができる。クライアントデバイス間でのシード及び鍵の直接的な送信は、ＳＤＮＰネットワーク自体の動的スクランブル化及び暗号化に加えて行われ、これにより、ネスト化セキュリティと呼ばれる高レベルのセキュリティを提供することができる。
【０３５０】
加えて、クライアントデバイスまたはそれと通信するゲートウェイノードは、データ種類が互いに同一のパケット（例えば、音声パケット、テキストメッセージファイル、ドキュメント、１つのソフトウェア）、またはデータ種類が互いに異なるパケット（例えば、音声パケットとテキストファイル、テキストパケットと動画または写真画像）を、そのパケットがＳＤＮＰネットワークに到着する前に混合し、出口ゲートウェイノードまたは送信先のクライアントは、混合されたパケットを分割して元のパケットを復元する。これは、ＳＤＮＰネットワークにおいて実施されるスクランブル化、暗号化、または分割に加えて行われる。このような場合、送信側クライアントデバイスは、受信側クライアントデバイスに、送信側クライアントデバイスまたはゲートウェイメディアノードで混合されたパケットを分割して元のパケットを再生成するためのパケットの分割方法を命令するシードを送信する。連続的な混合及び分割の実施は、線形順序の操作を含むか、または、クライアントがそれ自体のセキュリティ対策を実行し、かつＳＤＮＰもそれ自体のセキュリティ対策を実行するネスト化構造を用いる。
【０３５１】
本発明の重要な利点は、ＳＤＮＰネットワーク内に単一の制御ポイントが存在せず、ネットワーク内のどのノードまたはサーバも、ある通信がどのように行われ、どのように動的に変化するかについての完全な情報を持たないことである。
【０３５２】
例えば、シグナリングサーバ上で実行されるシグナリングノードは、通信が行われるルート（または、場合によっては、ルートの一部だけ）を知っているが、通信されるデータコンテンツにアクセスすることや、本当の発呼者またはクライアントを知ることはできない。さらに、シグナリングノードは、メディアノードのＤＭＺサーバ内の共有秘密にアクセスすることはできない。そのため、シグナリングノードは、送信中のデータパケットがどのように暗号化、スクランブル化、分割、または混合されたかを知ることはできない。
【０３５３】
ＳＤＮＰネームサーバは、発呼者の本当の電話番号またはＩＰアドレスを知っているが、通信中のデータまたは様々なパケット及びサブパケットのルーティングに対してアクセスすることはできない。シグナリングノードと同様に、ネームサーバは、共有秘密にアクセスすることはできない。したがって、ネームサーバは、送信中のデータパケットがどのように暗号化、スクランブル化、分割、または混合されたかを知ることはできない。
【０３５４】
メディアコンテンツを実際に伝送するＳＤＮＰメディアノードは、発呼者が誰であるか全く分からないし、様々な断片化されたサブパケットがＳＤＮＰクラウド内を伝送されるルートを知ることもできない。実際、各メディアノードは、該ノードに到着する予定のデータパケット（そのタグまたはヘッダーにより識別される）と、そのデータパケットを次にどこに送信するか（すなわち、「次のホップ」）しか知らない。つまり、各メディアノードは、データがどのようにして暗号化、スクランブル化、混合、または分割されたか、または、ステート、数値シード、または鍵を使用して、そのファイルを復元するアルゴリズムをどのようにして選択するかは知らない。入力データパケットのデータセグメントを正しく処理するのに必要な情報は、ＤＭＺサーバだけが知っている。つまり、ＤＭＺサーバだけが、それの共有秘密、すなわちネットワークを通じてまたはメディアノード自体がアクセスできないアルゴリズムを使用して、正しい処理を行うことができる。
【０３５５】
本発明の別の発明的な側面は、ネットワーク遅延を減少させ、伝搬遅延を最小限に抑えることにより、優れたクオリティ・オブ・サービス（ＱｏＳ）を提供すること、並びに、データパケットのサイズを制御することにより、すなわち、単一の高帯域接続に依存するのではなく、クラウドを通じてより小さなデータパケットを並列に送信することにより、エコー及び通話切断を解消することである。ＳＤＮＰネットワークの動的ルーティングは、ネットワークのノードツーノード伝搬遅延の情報を使用して、ある通信についてのその時点での最良のルートを動的に選択する。別の実施形態では、優先度の高いクライアントのために、ネットワークは、レースルーティングを容易にし、複製のメッセージ断片化された形態でＳＤＮＰクラウドを通じて送信し、最も早いデータだけを選択して元の音声またはデータコンテンツに復元することができる。
【０３５６】
本発明に係るＳＤＮＰシステムの様々な利点の中でも、並列及び「メッシュ伝送」実施形態では、パケットはＳＤＮＰクラウド内を伝送されるときに断片化され、それにより、たとえハッカーが個々のサブパケットまたはサブパケット群を解読できたとしても、ハッカーがメッセージを理解することを防止する。そして、「動的な」実施形態では、パケットに適用されるスクランブル化、暗号化、及び分割方法は、頻繁に変更されるので、ハッカーが、ある時点でパケットを連続的に解読することはできない。本発明の実施形態の様々な別の利点は、下記の説明を読むことにより、当業者には容易に明らかになるであろう。
【図面の簡単な説明】
【０３５７】
以下に列記する図面において、同様の構成要素には概ね同様の参照符合が付されている。しかし、ある参照符合が付されたそれぞれの構成要素が、必ずしも同じ参照番号を有する別の構成要素と完全に同一であるとは限らないことに留意されたい。例えば、特定の参照符合が付された暗号化操作は、必ずしも同じ参照符合が付された別の暗号化操作と同一である必要はない。また、単一の参照符合によって集合的に特定されるネットワーク内のサーバなどの構成要素のグループは、必ずしも互いに同一である必要はない。
【０３５８】
【図１】回路ベースの電話ネットワークの概略図
【図２】パケットベースの通信ネットワークの概略図
【図３】パケットベースの通信ネットワークにおけるパケットルーティングの概略図
【図４】パケット交換ネットワーク上での通信のためのＩＰパケットの構成の概略図
【図５Ａ】物理レイヤ１の高帯域幅接続性を示す通信ネットワークの概略図
【図５Ｂ】物理レイヤ１のラストマイル接続性を示す通信ネットワークの概略図
【図６Ａ】２つのデバイス間の物理レイヤ１接続の概略図
【図６Ｂ】３つのデバイス間の共有の物理レイヤ１接続の概略図
【図７Ａ】バスアーキテクチャを使用した３つのデバイス間のデータリンクレイヤ２接続の概略図
【図７Ｂ】ハブアーキテクチャを使用した３つのデバイス間のデータリンクレイヤ２接続の概略図
【図７Ｃ】デイジーチェーンアーキテクチャを使用した３つのデバイス間のデータリンクレイヤ２接続の概略図
【図８Ａ】ネットワークスイッチを含む３つのデバイス間のデータリンクレイヤ２接続の概略図
【図８Ｂ】ネットワークスイッチの概略図
【図８Ｃ】ネットワークスイッチの動作の概略図
【図９】イーサネット（登録商標）プロトコルを使用したＩＰパケットのデータリンクレイヤ２構成のグラフ図
【図１０】イーサネット（登録商標）から無線へのネットワーク・ブリッジの簡略図
【図１１】ＷｉＦｉプロトコルを使用したＩＰパケットのデータリンクレイヤ２構成のグラフ図
【図１２Ａ】ＷｉＦｉネットワークアクセスポイントの双方向操作の概略図
【図１２Ｂ】ＷｉＦｉリピータの双方向操作の概略図
【図１３】セルラーネットワーク上の電話、テキスト、及びデータ通信の進化のグラフ図
【図１４Ａ】４Ｇ／ＬＴＥ通信ネットワークにおける周波数分割のグラフ図
【図１４Ｂ】４Ｇ／ＬＴＥ通信で使用されるＯＦＤＭエンコーディングのグラフ図
【図１５】４Ｇ／ＬＴＥプロトコルを使用するＩＰパケットのデータリンクレイヤ２構成のグラフ図
【図１６】ケーブルモデム通信ネットワークの概略図
【図１７】ケーブルモデム通信ネットワークのデータリンクレイヤ２構成の概略図
【図１８】ＤＯＣＳＩＳ３ベースのケーブルモデルで使用されるトレリスエンコーディングのグラフ図
【図１９】ＤＯＣＳＩＳプロトコルを使用する通信パケットの、データリンクレイヤ２構成のグラフ図
【図２０】３つのデバイス間のネットワークレイヤ３接続の概略図
【図２１】７レイヤＯＳＩモデルに従ってカプセル化された通信パケットのグラフ図
【図２２】ＩＰｖ４及びＩＰｖ６の通信パケットを比較するネットワークレイヤ３構造のグラフ図
【図２３】ＩＰｖ４プロトコルに従ったＩＰパケットのグラフ図
【図２４】ＩＰｖ６プロトコルに従ったＩＰパケットのグラフ図
【図２５】ＩＰｖ４及びＩＰｖ６プロトコルに従って構成されたアドレスフィールドのグラフ図
【図２６】ＩＰパケット及び対応するペイロード内のプロトコル／ネクストヘッダーフィールドのグラフ図
【図２７】３つのデバイス間のトランスポートレイヤ４接続の概略図
【図２８Ａ】ＴＣＰプロトコルを使用するＩＰパケットのトランスポートレイヤ４構成のグラフ図
【図２８Ｂ】ＴＣＰプロトコルのフィールドを説明する表
【図２９】ＴＣＰパケット転送シーケンスのグラフ図
【図３０】ＵＤＰプロトコルを使用するＩＰパケットのトランスポートレイヤ４構成のグラフ図
【図３１Ａ】クライアントからホストへのトランスポートレイヤ４通信の概略図
【図３１Ｂ】ホストからクライアントへのトランスポートレイヤ４通信の概略図
【図３１Ｃ】一般的なＵＤＰ及びＴＣＰポート割り当てを説明する表
【図３１Ｄ】ＵＤＰ及びＴＣＰによって使用される予約されたポートアドレス、及びアドホックポートアドレスに対する割り当てられたブロックを説明する表
【図３２Ａ】ネットワークアプリケーショントランスレータ（ＮＡＴ）の概略図
【図３２Ｂ】ネットワークアプリケーショントランスレータの操作の概略図
【図３３】アプリケーションレイヤ５、レイヤ６、レイヤ７に接続された３つのデバイスの概略図
【図３４】ファイル転送プロトコル（ＨＴＴＰ）用のレイヤ７アプリケーションを使用したコンテンツダウンロードの概略図
【図３５Ａ】ハイパーテキスト転送プロトコルすなわちＨＴＴＰを使用するためのレイヤ７アプリケーションを用いたウェブページダウンロードの概略図
【図３５Ｂ】種々のサーバからのダウンロードから構築されるＨＴＭＬウェブページの図解
【図３６】ＩＭＡＰベースの電子メールのためのレイヤ７アプリケーションの概略図
【図３７】種々のネットワーク状態のサービス品質（ＱｏＳ）を比較する表
【図３８】ネットワークのノード内伝搬遅延の関数としての往復時間（ＲＴＴ）のグラフ
【図３９】通信ネットワークにおけるマルウェアの様々な例の概略図
【図４０】サイバー攻撃に使用されるクラウドおよびラストマイルのネットワーク接続及びマルウェアを単純化して示す図
【図４１Ａ】イーサネット（登録商標）およびＷｉＦｉ通信を監視することができる電子デバイスを示す図
【図４１Ｂ】携帯電話通信を監視することができる電子デバイスを示す図
【図４１Ｃ】光ファイバ通信を監視することができる電子デバイスを示す図
【図４２】市販されている１０種類のスパイウェアプログラムの特徴を比較した表
【図４３】１日のサイバー攻撃事件を示す世界地図
【図４４】可能なＩＰパケットスニッフィングと、パケット交換ネットワーク上の中間者攻撃を示す図
【図４５】ポートスキャンに基づく発見を用いたサイバー攻撃を示す図
【図４６】ＩＰパケットハイジャックを用いたサイバー攻撃を示す図
【図４７】デュアルキー暗号化の概略図
【図４８Ａ】仮想プライベートネットワーク（ＶＰＮ）の概略図
【図４８Ｂ】仮想プライベートネットワークの通信スタックを示す図
【図４８Ｃ】アドホックＶＰＮ上に置かれたＶｏＩＰコールを示す概略図
【図４９Ａ】インターネット上に置かれたオーバートップＶｏＩＰコールを示す概略図
【図４９Ｂ】ピアツーピアネットワーク上に置かれたＶｏＩＰコールを示す概略図
【図５０】従来のネットワークを介するパケット転送を示す概略図
【図５１Ａ】パケットスクランブル化プロセスを示す概略図
【図５１Ｂ】パケットアンスクランブル化プロセスを示す概略図
【図５１Ｃ】様々なパケットスクランブル化アルゴリズムを示す概略図
【図５１Ｄ】静的パラメトリックパケットスクランブル化を示す概略図
【図５１Ｅ】隠し数字を用いた動的スクランブル化を示す概略図
【図５１Ｆ】ディザリングを用いた動的パケットスクランブル化を示す概略図
【図５２】線形ネットワークでの静的パケットスクランブル化を示す概略図
【図５３】パケット再スクランブル化プロセスを示す概略図
【図５４】線形ネットワークでの動的パケットスクランブル化を示す概略図
【図５５Ａ】パケット暗号化プロセスを示す概略図
【図５５Ｂ】パケット復号プロセスを示す概略図
【図５６】暗号化スクランブル化プロセスとそれと逆の処理を示す概略図
【図５７】線形ネットワークでの静的な暗号化・スクランブル化プロセスを示す概略図
【図５８】再スクランブル化・再暗号化を含むＤＵＳＥ再パケット化のプロセスを示す概略図
【図５９】線形ネットワークでの動的な暗号化・スクランブル化を示す概略図
【図６０Ａ】固定長パケットの分割プロセスを示す概略図
【図６０Ｂ】固定長パケットの混合プロセスを示す概略図
【図６１Ａ】様々なパケット混合方法を示す概略図
【図６１Ｂ】連結型パケット混合を示す概略図
【図６１Ｃ】相互配置型パケット混合を示す概略図
【図６２Ａ】混合・スクランブル化方法を示す概略図
【図６２Ｂ】スクランブル化・混合方法を示す概略図
【図６３】線形ネットワークでの静的なスクランブル化・混合を示す概略図
【図６４】線形ネットワークでの動的なスクランブル化・混合を示す概略図
【図６５】様々なパケット暗号化プロセスを示す概略図
【図６６Ａ】線形ネットワークでの動的な暗号化・スクランブル化・混合を示す概略図
【図６６Ｂ】線形ネットワークでの静的なスクランブル化・混合及び動的な暗号化を示す概略図
【図６６Ｃ】「正常に戻す」方法を用いた、線形ネットワークでの動的な混合・スクランブル化・暗号化を示す概略図
【図６６Ｄ】ＤＵＳ−ＭＳＥ操作を用いた正常に戻す方法の詳細を示す概略図
【図６７Ａ】単一出力パケット混合を示す概略図
【図６７Ｂ】複数出力パケット混合を示す概略図
【図６７Ｃ】可変長パケットの混合を示す概略図
【図６７Ｄ】固定長パケットの混合を示す概略図
【図６７Ｅ】混合アルゴリズムを説明するためのフロー図
【図６７Ｆ】分割アルゴリズムを説明するためのフロー図
【図６７Ｇ】２ステップ式混合・スクランブル化アルゴリズムを説明するためのフロー図
【図６７Ｈ】ハイブリッド式混合・スクランブル化アルゴリズムを説明するためのフロー図
【図６７Ｉ】タグ識別を説明するためのフロー図
【図６８Ａ】様々な種類のパケットルーティングを示す概略図
【図６８Ｂ】単一ルートすなわち線形伝送を示す概略図
【図６８Ｃ】マルチルートすなわち並列伝送を示す概略図
【図６８Ｄ】メッシュルート伝送を示す概略図
【図６８Ｅ】メッシュルート伝送の別の実施形態を示す概略図
【図６９】静的マルチルート伝送を示す概略図
【図７０】静的マルチルートスクランブル化を示す概略図
【図７１Ａ】動的マルチルートスクランブル化を示す概略図
【図７１Ｂ】スクランブル化及び分割の様々な組み合わせを示す概略図
【図７１Ｃ】ネスト化された混合、分割、スクランブル化、及び暗号化を示す概略図
【図７２】静的なスクランブル化・分割及び動的な暗号化を示す概略図
【図７３】静的なスクランブル化マルチルート伝送及び動的な暗号化を示す概略図
【図７４】分割、スクランブル化、及び暗号化方法の様々な組み合わせを示す概略図
【図７５】可変長パケットの静的メッシュルーティングを示す概略図
【図７６】可変長パケットの静的スクランブル化メッシュルーティングを示す概略図
【図７７Ａ】メッシュ伝送のための可変長パケットの混合・分割操作を示す概略図
【図７７Ｂ】メッシュ伝送のための固定長パケットの混合・分割操作を示す概略図
【図７７Ｃ】メッシュネットワーク内での通信ノード接続の様々な組み合わせを示す概略図
【図７７Ｄ】非平面的なメッシュネットワークノード接続を示す概略図
【図７８Ａ】再スクランブル化・混合・分割操作を示す概略図
【図７８Ｂ】メッシュ入力のアンスクランブル化・混合操作を示す概略図
【図７８Ｃ】メッシュ出力のための分割・スクランブル化操作を示す概略図
【図７８Ｄ】メッシュ伝送のための再スクランブル化・再混合操作を示す概略図
【図７９Ａ】固定長パケットのスクランブル化・混合操作及びメッシュ伝送のための分割操作を示す概略図
【図７９Ｂ】固定長パケットのスクランブル化・混合操作及びメッシュ伝送のための分割操作の別の実施形態を示す概略図
【図８０】可変長パケットの静的スクランブル化メッシュルーティングを示す概略図
【図８１Ａ】暗号化・混合・分割操作を示す概略図
【図８１Ｂ】メッシュ入力の復号・暗号化操作を示す概略図
【図８１Ｃ】メッシュ出力のための分割・暗号化操作を示す概略図
【図８２Ａ】メッシュ伝送のための暗号化されたパケットの再スクランブル化操作を示す概略図
【図８２Ｂ】メッシュ入力の復号・アンスクランブル化・混合（ＤＵＭ）操作を示す概略図
【図８２Ｃ】メッシュ出力のための分割・スクランブル化・暗号化（ＳＳＥ）操作を示す概略図
【図８３Ａ】メッシュ伝送のためのＳＤＮＰメディアノードを示す概略図
【図８３Ｂ】単一ルートを実施するＳＤＮＰメディアノードを示す概略図
【図８３Ｃ】単一ルートパススルーを実施するＳＤＮＰメディアノードを示す概略図
【図８３Ｄ】冗長ルート複製を実施するＳＤＮＰメディアノードを示す概略図
【図８３Ｅ】単一ルートスクランブル化を実施するＳＤＮＰメディアノードを示す概略図
【図８３Ｆ】単一ルートアンスクランブル化を実施するＳＤＮＰメディアノードを示す概略図
【図８３Ｇ】単一ルート再スクランブル化を実施するＳＤＮＰメディアノードを示す概略図
【図８３Ｈ】単一ルート暗号化を実施するＳＤＮＰメディアノードを示す概略図
【図８３Ｉ】単一ルート再復号を実施するＳＤＮＰメディアノードを示す概略図
【図８３Ｊ】単一ルート再暗号化を実施するＳＤＮＰメディアノードを示す概略図
【図８３Ｋ】単一ルートスクランブル化・暗号化を実施するＳＤＮＰメディアノードを示す概略図
【図８３Ｌ】単一ルートアンスクランブル化・復号を実施するＳＤＮＰメディアノードを示す概略図
【図８３Ｍ】単一ルート再パケット化を実施するＳＤＮＰメディアノードを示す概略図
【図８３Ｎ】メッシュＳＤＮＰゲートウェイ入力を示す概略図
【図８３Ｏ】メッシュＳＤＮＰゲートウェイ出力を示す概略図
【図８３Ｐ】スクランブル化ＳＤＮＰゲートウェイ入力及びアンスクランブル化ＳＤＮＰゲートウェイ出力を示す概略図
【図８３Ｑ】暗号化ＳＤＮＰゲートウェイ入力及び復号ＳＤＮＰゲートウェイ出力を示す概略図
【図８３Ｒ】スクランブル化・暗号化ＳＤＮＰゲートウェイ入力及びアンスクランブル化・復号ＳＤＮＰゲートウェイ出力を示す概略図
【図８３Ｓ】メッシュ再スクランブル化及びメッシュ再暗号化を実施するＳＤＳＮＰゲートウェイを示す概略図
【図８４Ａ】ＳＤＮＰメディアノードの相互接続を示す概略図
【図８４Ｂ】ＳＤＮＰクラウドを示す概略図
【図８４Ｃ】ＳＤＮＰメディアノード間の暗号化通信を示す概略図
【図８４Ｄ】ＳＤＮＰノード間の暗号化通信を示す概略図
【図８５Ａ】ＳＤＮＰクラウドにおけるセルフォンクライアントとのラストマイル通信を示す概略図
【図８５Ｂ】ＳＤＮＰゲートウェイでのアンセキュアラストマイル通信を示す概略図
【図８５Ｃ】ＳＤＮＰゲートウェイでのセキュアラストマイル通信を示す概略図
【図８５Ｄ】ＳＤＮＰゲートウェイでのセキュアラストマイル通信の別の実施形態を示す概略図
【図８６】ＳＤＮＰクラウドに接続される様々なクライアントを示す概略図
【図８７】ＳＤＮＰクラウド内でのパケットルーティングを示す概略図
【図８８Ａ】ＳＤＮＰクラウド内で開始されるパケットルーティングを示す概略図
【図８８Ｂ】ＳＤＮＰクラウド内での最初のクラウドホップパケットルーティングを示す概略図
【図８８Ｃ】ＳＤＮＰクラウド内での２番目のクラウドホップパケットルーティングを示す概略図
【図８８Ｄ】ＳＤＮＰクラウド内での３番目のクラウドホップパケットルーティングを示す概略図
【図８８Ｅ】ＳＤＮＰクラウドゲートウェイからのパケットルーティングを示す概略図
【図８８Ｆ】特定のセッションにおけるＳＤＮＰクラウド内でのパケットルーティングを要約した概略図
【図８９Ａ】ＳＤＮＰクラウド内で開始される別のセッションのためのパケットルーティングを示す概略図
【図８９Ｂ】別のセッションにおけるＳＤＮＰクラウド内での最初のクラウドホップを示す概略図
【図８９Ｃ】別のセッションにおけるＳＤＮＰクラウド内での２番目のクラウドホップを示す概略図
【図８９Ｄ】別のセッションにおけるＳＤＮＰクラウド内での３番目のクラウドホップを示す概略図
【図８９Ｅ】別のセッションにおけるＳＤＮＰクラウド内での４番目のクラウドホップを示す概略図
【図８９Ｆ】別のセッションにおけるＳＤＮＰクラウドゲートウェイからのパケットルーティングを示す概略図
【図８９Ｇ】別のセッションにおけるＳＤＮＰクラウド内でのパケットルーティングを要約した概略図
【図９０】中間者攻撃及びパケットスニッフィングに対して有効なＳＤＮＰパケットコンテンツを示す概略図
【図９１Ａ】ＳＤＮＰパケット伝送の経時的処理を示す概略図
【図９１Ｂ】ＳＤＮＰパケット伝送の経時的処理を示す表
【図９１Ｃ】別のパケット伝送セッションにおけるＳＤＮＰパケット伝送の経時的処理を示す概略図
【図９２Ａ】ＳＤＮＰメディアノードに入力されたＳＤＮＰパケットの処理を示す概略図
【図９２Ｂ】ＳＤＮＰメディアノードから出力されるＳＤＮＰパケットの処理を示す概略図
【図９３】ＳＤＮＰアルゴリズムの選択を示す概略図
【図９４】ＳＤＮＰアルゴリズムの定期的なシャッフルを示す概略図
【図９５Ａ】マルチゾーンＳＤＮＰクラウドを示す概略図
【図９５Ｂ】ＳＤＮＰマルチゾーンのセキュリティ管理を示す概略図
【図９５Ｃ】マルチゾーン全二重ＳＤＮＰブリッジを示す概略図
【図９５Ｄ】複数のクラウドを含むＳＤＮＰネットワークを示す概略図
【図９５Ｅ】ＳＤＮＰクラウド間のアンセキュアリンクを示す概略図
【図９５Ｆ】クラウドツークラウドのためのマルチゾーン全二重ＳＤＮＰブリッジの使用を示す概略図
【図９６Ａ】セキュアなＳＤＮＰゲートウェイ及びタブレットクライアントへのラストマイルの接続を示す概略図
【図９６Ｂ】クラウドインターフェースの機能を示す概略図
【図９６Ｃ】クライアントインターフェースの機能を示す概略図
【図９６Ｄ】クライアントの機能を示す概略図
【図９７Ａ】セキュアなＳＤＮＰクラウドゲートウェイの機能的要素を示す概略図
【図９７Ｂ】セキュアなＳＤＮＰクラウドゲートウェイにおける機能的な要素の相互接続を示す概略図
【図９８】セキュアなＳＤＮＰクラウドゲートウェイにおけるクライアントインターフェースを示す概略図
【図９９Ａ】マルチゾーン伝送におけるキーマネジメントを示す概略図
【図９９Ｂ】スクランブル化されたＳＤＮＰクラウド伝送を伴うマルチゾーン伝送におけるキーマネジメントを示す概略図
【図９９Ｃ】ＳＤＮＰ及びシングルラストマイルルートにおけるスクランブル化を伴うマルチゾーン伝送におけるキーマネジメントを示す概略図
【図９９Ｄ】エンドツーエンドのスクランブル化を伴うマルチゾーン伝送におけるキーマネジメントを示す概略図
【図９９Ｅ】スクランブル化されたＳＤＮＰ及びシングルの再スクランブルされたマルチルートを介したマルチゾーンにおけるキーマネジメントを示す概略図
【図９９Ｆ】ゾーン固有の再スクランブル化を伴うマルチゾーン伝送におけるキーマネジメントを示す概略図
【図１００Ａ】ＳＤＮＰコード検出及び初期化を示す概略図
【図１００Ｂ】ＳＤＮＰコード検出及びマルチゾーン初期化を示す概略図
【図１０１Ａ】ＤＭＺサーバへのＳＤＮＰシークレットの転送を示す概略図
【図１０１Ｂ】シークレットベースのメディアチャネル通信を示す概略図
【図１０１Ｃ】ＳＤＮＰメディアチャネルを介したシークレット及びキー転送を示す概略図
【図１０２】ＳＤＮＰシグナリングサーバを介した動的ＳＤＮＰコントロールを示す概略図
【図１０３Ａ】ＳＤＮＰシグナリングサーバを介したＳＤＮＰキー及びシード転送を示す概略図
【図１０３Ｂ】ＳＤＮＰシグナリングサーバを介したＳＤＮＰキー及びシード転送の他の実施形態を示す概略図
【図１０４】クライアントへのＳＤＮＰ伝送を示す概略図
【図１０５Ａ】クライアントへのシングルチャネルＳＤＮＰキー及びシード転送を示す概略図
【図１０５Ｂ】クライアントへのシングルチャネルＳＤＮＰキー及びシード転送の他の実施形態を示す概略図
【図１０６】クライアントＳＤＮＰアルゴリズムシャッフリングを示す概略図
【図１０７】クライアントへのデュアルチャネルＳＤＮＰキー及びシードを示す概略図
【図１０８】ＳＤＮＰクライアントへのパブリックキー転送を示す概略図
【図１０９】シングルチャネルＳＤＮＰメッシュトランスポートを示す概略図
【図１１０Ａ】メディアチャネルＳＤＮＰアドホック通信のフローチャート（１）
【図１１０Ｂ】メディアチャネルＳＤＮＰアドホック通信のフローチャート（２）
【図１１０Ｃ】メディアチャネルＳＤＮＰアドホック通信のフローチャート（３）
【図１１０Ｄ】メディアチャネルＳＤＮＰアドホック通信のフローチャート（４）
【図１１０Ｅ】メディアチャネルＳＤＮＰアドホック通信のフローチャート（５）
【図１１０Ｆ】メディアチャネルＳＤＮＰアドホック通信のフローチャート（６）
【図１１１Ａ】ＳＤＮＰアドホックな送信シーケンスを要約するフローチャート
【図１１１Ｂ】ＳＤＮＰ送信ルーティングを要約するネットワークマップ
【図１１２Ａ】ＳＤＮＰアドホックな返信シーケンスを要約するフローチャート
【図１１２Ｂ】ＳＤＮＰ返信ルーティングを要約するネットワークマップ
【図１１３Ａ】ＳＤＮＰパケットの準備を示す概略図
【図１１３Ｂ】ＳＤＮＰパケットの準備についての他の実施形態を示す概略図
【図１１４】ＳＤＮＰパケットアーキテクチャの一実施形態を要約する表
【図１１５】クラウド内のシグナリング機能はメディアノードとして機能するものと同じサーバ内で実行され、ファースト及びラストマイルにおけるシグナリング機能は別のシグナリングサーバによって実行される場合のデュアルチャネルＳＤＮＰメッシュ転送の実施形態を示す概略図
【図１１６】クラウド内と、ファースト及びラストマイルとの両方におけるシグナリング機能が別々のシグナリングサーバによって実行される場合のデュアルチャネルＳＤＮＰメッシュ転送の別実施形態を示す概略図
【図１１７】３チャネルＳＤＮＰメッシュ伝送を示す概略図
【図１１８】ＳＤＮＰノード及びデバイス登録を示す概略図
【図１１９】遅延モニタリングのためのＳＤＮＰリアルタイム伝送を示す概略図
【図１２０】遅延モニタリングのためのテストパケットの伝送を示す図
【図１２１】３チャネルＳＤＮＰメッシュ伝送を示す概略図
【図１２２】ＳＤＮＰ冗長ネームサーバを示す概略図
【図１２３】ＳＤＮＰ冗長シグナルサーバを示す概略図
【図１２４Ａ】ＳＤＮＰ３チャネルパケット送信シーケンスを示すフローチャート（１）
【図１２４Ｂ】ＳＤＮＰ３チャネルパケット送信シーケンスを示すフローチャート（２）
【図１２４Ｃ】ＳＤＮＰ３チャネルパケット送信シーケンスを示すフローチャート（３）
【図１２４Ｄ】ＳＤＮＰ３チャネルパケット送信シーケンスを示すフローチャート（４）
【図１２４Ｅ】ＳＤＮＰ３チャネルパケット送信シーケンスを示すフローチャート（５）
【図１２５Ａ】ＳＤＮＰ３チャネルパケット送信シーケンスを要約するフローチャート
【図１２５Ｂ】ＳＤＮＰ３チャネルパケット送信ルーティングを要約するネットワークマップ
【図１２６Ａ】ＳＤＮＰ３チャネルパケット返答シーケンスを要約するフローチャート
【図１２６Ｂ】ＳＤＮＰ３チャネルパケット返答ルーティングを要約するネットワークマップ
【図１２６Ｃ】ＳＤＮＰ３チャネルパケット返答シーケンスの他の実施例を要約するフローチャート
【図１２７】ＳＤＮＰノードパケット再プロセシングを示す概略図
【図１２８】ＳＤＮＰ再パケット化を示す概略図
【図１２９Ａ】バッファリングされたラストノードリアルタイムパケットの再構成を示す概略図
【図１２９Ｂ】バッファリングされたラストノードパケットの再構成を示す概略図
【図１２９Ｃ】バッファリングされたクライアントパケットの再構成を示す概略図
【図１２９Ｄ】クライアントパケット構成を要約したフローチャート
【図１３０】ＳＤＮＰコマンド及び制御シグナルパケットを示す概略図
【図１３１】ＳＤＮＰ動的ルート検出を示す概略図
【図１３２Ａ】パス１―１におけるパケット再構成を示す概略図
【図１３２Ｂ】パス１―２におけるパケット再構成を示す概略図
【図１３２Ｃ】ＳＤＮＰパケット再構成を示す概略図
【図１３３Ａ】トンネルするＳＤＮＰフラグメント転送のＯＳＴレイヤ表現を示す概略図
【図１３３Ｂ】トンネルするＳＤＮＰフラグメント転送のＯＳＴレイヤ表現を示す概略図
【図１３４】ＳＤＮＰパケットレースルーティングの概略図
【図１３５】ＳＤＮＰと他のパケットスイッチを行うネットワーク通信との比較
【発明を実施するための形態】
【０３５９】
約１世紀半の回線交換電話の後、今日の通信システム及びネットワークは、全てこの１０年以内に、イーサネット（登録商標）、ＷｉＦｉ、４Ｇ／ＬＴＥ、及びＤＯＣＳＩＳ３データをケーブルと光ファイバ経由で伝送するインターネットプロトコルを使用したパケット交換通信に移行した。音声、テキスト、画像、ビデオ、及びデータを一括する利点は、信頼性の高いＩＰパケット配信を保証するための冗長パスの使用（つまりインターネットが最初に作られた理由）とともに、比類のないレベルのシステム相互運用性及びグローバルなコネクティビティなど数多くある。しかし、どんなイノベーションでも、新技術が生み出す課題の大きさは、得られるメリットに同程度となることが多い。
【０３６０】
既存の通信プロバイダの短所
【０３６１】
本開示の背景技術の欄全体にわたって詳述されたように、今日の通信は多くの欠点を有する。ＡＴ＆Ｔ（登録商標）、Ｖｅｒｉｚｏｎ（登録商標）、ＮＴＴ（登録商標）、Ｖｏｄａｐｈｏｎｅ（登録商標）など世界の主要な長距離通信事業者が所有するカスタムデジタルハードウェアで構成されている今日の最高性能の通信システムは、一般的に優れた音声品質を提供するがコストが高く、そのようなコストには、高価な月額取扱料、接続料金、長距離料金、複雑なデータレートプラン、長距離ローミング料金、及び多数のサービス料が含まれる。これらのネットワークはプライベートであるため、実際のデータセキュリティは一般に知られておらず、セキュリティ侵害、ハッキング、侵入は通常は一般には報告されない。今日のプレスで報道された盗聴とプライバシー侵害の数を考えると、プライベートキャリア通信セキュリティは、プライベートクラウドではないにせよ、少なくともラストマイル接続では疑わしいままである。
【０３６２】
「インターネットサービスプロバイダ」すなわちＩＳＰは、グローバル・コミュニケーション・チェーンにおいて別のリンクを形成している。本発明の背景に記載されているように、ＶｏＩＰまたは「ボイスオーバーインターネットプロトコル」を使用してインターネットを介して運ばれる音声は、サービス品質またはＱｏＳの問題を抱えている。そのような問題としては、以下のものが挙げられる。
・パケット交換ネットワークであるインターネットは、適時にＩＰパケットを配信するように設計されておらず、低遅延で高ＱｏＳのリアルタイムアプリケーションをサポートするようには設計されていない。
・ＩＰパケットのルーティングに予期しない経路が発生すると、遅延が絶えず変化し、データエラー率が高いバーストが発生し、予期しないコール切断が起こる。
・ＩＰパケットルーティングは、インターネットサービスプロバイダ（ＩＰＳ）の裁量で行われ、ＩＰＳは、パケットがルーティングされるネットワークを制御し、ネットワークを通過する一般的なトラヒック接続品質の低下を犠牲にして、自己のネットワークの負荷を分散するためのルーティングの調整や、ＶＩＰクライアントに対する適切なサービスを行うことがある。
・ＬＩＮＥ（登録商標）、ＫａｋａｏＴａｌｋ（登録商標）、Ｖｉｂｅｒ（登録商標）などのオーバー・ザ・トップすなわちＯＴＴプロバイダはインターネットにフリーライドし、インターネットのヒッチハイカーとして機能し、ネットワークやＱｏＳに影響を与える要因を制御できない。
・適度なデータレートでも妥協のない音声品質の音声を提供できないヘビーウェイトオーディオＣＯＤＥＣが使用される。
・ＴＣＰトランスポートプロトコルに基づくＶｏＩＰでは、ハンドシェーキングやＩＰパケットの再ブロードキャスト中に引き起こされる遅延のために遅延時間が大きくなり、音声が劣化する問題を生じる。補助無しのＵＤＰトランスポートは、ペイロードの完全性を保証しない。
【０３６３】
ＱｏＳの問題とは別に、現在のデバイスやネットワークのセキュリティは、グローバル通信の将来のニーズをサポートするにはまったく受け入れられないレベルである。背景技術の欄で詳述され、かつ図４０に示されているように、ネットワークセキュリティは、通信するデバイスに対するサイバー攻撃（スパイウェア、トロイの木馬、感染、フィッシングなど）、ラストリンクに対するサイバー攻撃（スパイウェア、ＩＰパケットスニッフィング、盗聴、サイバーパイレーツによる「偽」携帯電話タワーのコールインターセプトを含む）、及びラストマイル接続のローカルネットワークまた電話通信会社部分でのサイバー攻撃（スパイウェア、ＩＰパケットスニッフィング、ウイルスなどの感染、及びサイバーパイレーツの「中間攻撃」が関与）などの大規模な攻撃を受けやすい。クラウド自体は、ウイルスなどの感染による攻撃、中間攻撃を開始するサイバーパイレーツからの攻撃、サービス拒否攻撃、及び権限のない政府監視からの攻撃によって任意のクラウドゲートウェイでセキュリティを破ることによって不正なアクセスを受ける可能性がある。要約すると、今日の通信セキュリティは、サイバー犯罪者によって容易に悪用され、サイバー犯罪やサイバープライバシー侵害に有用な多数の脆弱性によって損なわれるが、そのような脆弱性として以下のものが挙げられる。
・宛先ＩＰアドレス、宛先ポート番号、及び宛先ＭＡＣアドレスを含むＩＰパケットの宛先の開示。
・発信元ＩＰアドレス、発信元ポート番号、及び発信元ＭＡＣアドレスを含む、ＩＰパケットの発信元の開示。
・採用されたレイヤ４トランスポートのタイプ、ポート番号によって要求されたサービスのタイプ、ＩＰパケットのペイロードにカプセル化されたアプリケーションデータの開示。
・暗号化されていないファイルにおける、個人及び機密情報、ログイン情報、アプリケーションパスワード、財務記録、ビデオ、写真などを含む、ＩＰパケットのペイロード
・サイバーパーティーが暗号化されたファイルを壊す機会を繰り返すことを可能にする通信のダイアログ。
・ＦＴＰ、電子メール、及びウェブページベースの感染を使用して、スパイウェアやフィッシングプログラム、トロイの木馬を含むマルウェアを通信デバイスやルータにインストールする数多くの機会。
【０３６４】
図４４に示すインターネットプロトコルを使用するパケット交換通信ネットワークの根本的で本質的な弱点の要点を繰り返し述べると、任意の敵対者すなわちサイバーパイレーツがインターセプトしたＩＰパケット６７０からは、ＩＰパケットに含まれるデータの作成にどのデバイスが関与していたか、ＩＰパケットがどこから来たのか、ＩＰパケットがどこに送られているか、どのようにデータが転送されているか（すなわちＵＤＰまたはＴＣＰのいずれか）、どのような種類のサービスが要求されているか（すなわちペイロード内にどのような種類のアプリケーションデータが含まれているか）を確認することができる。これに関して、サイバーパイレーツは、会話の「内容の前後関係」を判定し、暗号化を破る機会を高め、パスワードセキュリティを破り、ファイル、データ、及びペイロードコンテンツへの不正アクセスを得ることができる。
【０３６５】
［暗号化］
前述のように様々なサイバー攻撃に対して防御するために、現在のネットワーク管理者、ＩＴプロフェッショナル、及びアプリケーションプログラムは、主にただ一つの防衛手段−暗号化に依存している。暗号化とは、それにより「平文」とも呼ばれる認識可能なコンテンツ（可読テキスト、実行可能プログラム、可視ビデオ及び画像、または明瞭な音声）を、無意味な文字の文字列として表示される「暗号文」として知られる代替的ファイルタイプに変換する手段である。
【０３６６】
保護されていないファイルを暗号化されたファイルに変換する暗号化プロセスでは、暗号化の変換プロセスの見かけのパターンを明らかにせず、データを同等のテキスト要素に変更するための暗号アルゴリズムと呼ばれる論理アルゴリズムが使用される。暗号化されたファイルは、宛先デバイスによって受信されるまで通信ネットワークまたは媒体を介して送信される。ファイルを受信すると、その後、受信デバイスは、「復号化」として知られるプロセスを使用して元のコンテンツを明らかにするために符号化されたメッセージを復号化する。暗号化と解読の研究は、広く「暗号学」と呼ばれ、数理理論、集合理論、アルゴリズム設計などの数学の要素をコンピュータサイエンスや電気工学と融合させる。
【０３６７】
単純な「シングルキー」または「シンメトリックキー」暗号化技術では、ファイルの暗号化と復号化のプロセスでのロック解除のために、両者が前もって知っている単一のキーワードまたはフレーズを使用できる。例えば、第二次世界大戦では、公開された無線チャンネルで通信される潜水艦や海洋船は暗号化されたメッセージを使用していた。当初は、暗号化はシングルキーベースであった。連合国側の暗号学者は、コードパターンを分析することによって、暗号化キーワードまたはパターンを明らかにした後、知られることなく暗号化ファイルを読み取ることができた。暗号化の方法が複雑になるにつれて、手動でコードを破ることは困難になった。
【０３６８】
コードは機械的な機械ベースの暗号に進化した。当時、コードを壊す唯一の方法は、暗号化機械を盗み、ファイルを暗号化するものと同じツールを使ってメッセージを解読することであった。その問題は、盗んだことを検知されることなく暗号化機械を盗む方法であった。コード機が盗まれたことが判明した場合、敵は単にコードを変更し、すでに動作中の暗号化機械を更新するだけで済む。この原則は今日でも有効であり、最も効果的なサイバー攻撃は、検知されないサイバー攻撃である。
【０３６９】
コンピュータ化と冷戦の到来により、暗号化はより複雑になったが、暗号化コードを解読するために使用されるコンピュータの速度も向上した。セキュリティを確保した通信の開発における各ステップでは、情報を暗号化するための技術とノウハウと、暗号化コードを解読する能力がほぼ足並みを揃えて開発されてきた。暗号化における次の進化の大きなステップは、１９７０年代の、今日も使用されているデュアルキー暗号化技術の革新である。最もよく知られているデュアルキー暗号化方式の１つは、開発者のＲｉｖｅｓｔ、Ｓｈａｍｉｒ、Ａｄｌｅｍａｎにちなんで命名されたＲＳＡ公開鍵暗号方式である。ＲＳＡの公開による認定にもかかわらず、同時代の開発者には同じ原則を独自に考案した者もいた。ＲＳＡは、公開されていない２つの大きな素数に基づいて２つの暗号鍵を使用する。この２つの素数を暗号鍵（ここではＥ鍵と呼ぶ）に変換するために１つのアルゴリズムが使用され、異なる２つの秘密素数を秘密復号鍵（ここではＤ鍵と呼ぶ）に変換するために異なる数学アルゴリズムが使用される。秘密素数を選択したＲＳＡユーザ（本明細書では「鍵発行者」と呼ぶ）は、ファイルを暗号化しようとする者に典型的には１０２４ｂから４０９６ｂのアルゴリズムで生成されたＥ鍵を配布すなわち「公開」する。この鍵は暗号化されていない形式で多くの当事者に配布される可能性があるため、Ｅ鍵は「公開鍵」として知られている。
【０３７０】
鍵発行者と通信したいと望む当事者は、一般に商用ソフトウェアの形で提供される公的に利用可能なアルゴリズムと共にこの公開Ｅ鍵を使用して、特定の鍵発行者に送信されるファイルを暗号化する。暗号化されたファイルを受信すると、鍵発行者は秘密のＤ鍵を使用してファイルを復号化し、平文に戻す。一般的なデュアルキー方式とＲＳＡアルゴリズムの特有の特徴は、ファイルを暗号化するために使用された公開Ｅ鍵を復号化に使用できないことである。鍵発行者が所有する秘密のＤ鍵だけがファイルの復号化の能力を有する。
【０３７１】
ファイル暗号化及び復号化におけるデュアルキー、スプリットキー、またはマルチキー交換の概念は、ＲＳＡまたはいずれかのアルゴリズム方法に特に限定されず、通信方法を一連のステップとして方法論的に特定する。図４７は、例えばスイッチパケット通信ネットワークを介した通信を実現する際のデュアルキー交換を示す。図示のように、携帯電話３２から安全なファイルを受信することを望むノートブック３５は、まず、暗号化のためのＥ鍵６９０と、何らかのアルゴリズムを用いた復号化のためのＤ鍵６９１の２つの鍵を生成する。次に、ノート３５は、ＩＰパケット６９５を運ぶ公衆ネットワーク通信６９２を使用してＥ鍵６９０を携帯電話３２に送る。ＩＰパケット６９５は、暗号化されていない形式で、ノートブック３５のＭＡＣアドレス、ＩＰソースアドレス「ＮＢ」及びポートアドレス＃９９９９とともに、携帯電話３２の宛先ＩＰアドレス「ＣＰ」、ポート＃２１、及びトランスポートプロトコルＴＣＰ、並びにそのペイロードとしてのＥ鍵６９０の暗号化されたコピーを含む。
【０３７２】
次に、携帯電話３２は、合意された暗号化アルゴリズムまたはソフトウェアパッケージを使用して、暗号アルゴリズム６９４Ａ及び暗号化Ｅ鍵６９０を使用して平文ファイル６９７Ａを処理して、セキュリティが確保された通信６９３におけるＩＰパケット６９６のペイロードとして運ばれる暗号化ファイルすなわち暗号文６９８を、携帯電話３２からノートブック３５に送信する。アルゴリズム６９４Ｂは、ＩＰパケット６９６を受信すると、秘密復号鍵、すなわちＤ鍵６９１を用いてファイルを復号する。Ｄ鍵６９１はＥ鍵６９０に対応するので、本質的にアルゴリズム６９４Ｂは両方の鍵を認識し両鍵を用いて暗号文６９８を復号化し、暗号化されていない平文６９７Ｂに戻す。ＩＰパケット６９６のペイロードは、暗号化されたファイル、すなわち暗号文６９８の形で保護されているが、残りのＩＰパケットは暗号化されず、スニッフィング可能で、サイバーパイレーツにより読み出し可能であり、その部分には、ソースＩＰアドレス「ＣＰ」及びポート＃、宛先ＩＰアドレス「ＮＢ」及び関連ポート＃９９９９が含まれる。従って、ペイロード自体を開けない場合でも、通信を監視され得る。
【０３７３】
［バーチャルプライベートネットワーク（ＶＰＮ）］
暗号化に依存するもう１つのセキュリティ方法は、「仮想プライベートネットワーク」すなわちＶＰＮのセキュリティ方法である。ＶＰＮでは、暗号化されたＩＰパケットを使用してネットワーク内にトンネルまたはセキュリティを確保したパイプ（セキュアパイプ）が形成される。ペイロードだけを暗号化するのではなく、ＩＰパケット全体が暗号化され、カプセル化されたパケットをあるＶＰＮゲートウェイから別のＶＰＮゲートウェイに送信するミュールすなわちキャリアとして機能する別の暗号化されていないＩＰパケットにカプセル化される。もともとは、ＶＰＮは、遠隔地に分散されたローカルエリアネットワークを接続するために使用され、例えば、ニューヨーク、ロサンゼルス、及び東京のプライベートネットワークを運営する企業が、ＬＡＮを相互接続して、１つのグローバルプライベートネットワークを共有しているかのように同じ機能を有するものとすることを望んでいる場合に使用されていた。
【０３７４】
基本的なＶＰＮ概念が図４８Ａに示されており、ここではサーバ７００が、無線のＲＦ接続７０４及び有線接続７０１を介して多数のデバイスをサポートする１つのＬＡＮの一部として、「仮想プライベートネットワーク」すなわちコンテンツ７０６及びＶＰＮトンネル７０５を含むＶＰＮによって第２のサーバ７０７に接続され、第２のサーバ７０７はデスクトップ７０９Ａ〜７０９Ｃへの、ノートブック７１１への、及びＷｉＦｉ基地局７１０への無線接続７０８を有する。これらの比較的低い帯域幅のリンクに加えて、サーバ７０７はまた、高帯域幅接続７１２を介してスーパーコンピュータ７１３に接続する。動作中、発信元ＩＰアドレス「Ｓ８」及びポート＃５００を指定するサーバＡからの外部ＩＰパケット７１４は、宛先ＩＰアドレス「Ｓ９」及びポート＃５００でサーバＢに送信される。この外部ＩＰパケット７１４は、データが通過するためのサーバ７００及び７０７が互いに暗号化されたトンネルをどのように形成するかを記述する。外部パケット７１４のＶＰＮペイロードはラストマイルＩＰパケット７１５を含み、このパケットは、発信元ＩＰアドレス「ＤＴ」及び対応するアドホックポート＃１７００１を有するデスクトップ７０２Ｂと、発信元ＩＰアドレス「ＮＢ」及び対応するアドホックポート＃２１を有するノートブック７１１との間の直接通信と、ファイル転送の要求とを提供する。
【０３７５】
仮想プライベートネットワークを使用してこの転送を安全に確立するためには、ＶＰＮトンネル７０５が作成され、実際の通信が送信される前にセッションが開始された。企業の用途では、ＶＰＮトンネル７０５はインターネット上でアドホックに運ばれるのではなく、一般に専用のＩＳＰまたはキャリアが自社のファイバ及びハードウェアネットワークを所有して運営されている。このキャリアは、多くの場合一定のコストに対して特定の帯域幅を保証するべくＶＰＮサービスを必要とする企業との年間または長期の契約を締結している。理想的には、高速専用リンクは、ＶＰＮの性能、ＱｏＳ、またはセキュリティを妨げる中間すなわち「ラストマイル」接続なしで、サーバ７００とサーバ７０７の両方に直接接続する。
【０３７６】
動作中、従来のＶＰＮでは、ＶＰＮを作成するすなわち「ログイン」する第１ステップと、セキュリティを確保したパイプまたはトンネル内でデータを転送する第２のステップの２段階プロセスが必要である。トンネリングの概念は、図４８Ｂに階層的に示されており、ここでは通信スタック７２０及び７２１によって搬送される外部ＩＰパケットは、レイヤ１からレイヤ４にＶＰＮ接続７２２を形成し、レイヤ５を利用して仮想ＶＰセッション７２３を作成し、レイヤ６のプレゼンテーション層を利用して暗号化７２５を容易化し、サーバ７００と７０７との間のゲートウェイ・パイプ７０５へのＶＰＮゲートウェイを実現する。ＶＰＮ接続７２２はインターネットプロトコルを使用してＩＰパケットを送信するが、ＶＰＮの物理レイヤ１及びＶＰＮデータリンクレイヤ２は一般に専用キャリアによってサポートされ、インターネット上での予測不可能なルーティングを使用しない。例えば、デスクトップ７０２Ｃと７０９Ａとの間のデバイス間通信７０６として転送されるアプリケーションレイヤ６データは、あたかもＶＰＮが存在しないかのように通信を確立するために必要な７つのＯＳＩレイヤを全て含むトンネリングデータ７２６として供給される。
【０３７７】
動作中、通信スタック７２０からの外部ＩＰパケットは、一旦サーバ７０７に渡されると、パケットの真のメッセージであるカプセル化データ７２６を開示するために開かれる。このようにして、ＶＰＮトンネルが通信の試みに先立って形成され、会話が終了した後に閉じなければならないことを除き、ＶＰＮトンネルの作成に使用される詳細とは無関係にエンドツーエンド通信が行われる。ＶＰＮトンネルを最初に開かないと、ＩＰパケットの盗聴、ハイジャック、感染などの影響を受けやすいＩＰパケット７１５の暗号化されていない送信が発生する。会話が完了した後でＶＰＮを閉じないと、サイバー犯罪者に対し他人のＶＰＮトンネル内で違法行為を隠す機会を与え、インターセプトされた場合、罪のない人に対して刑事罰が科されることになる可能性がある。
【０３７８】
ＶＰＮは、複数のプライベートローカルエリアネットワークが専用の容量と帯域幅でプライベート接続を使用して相互に接続する一般的な方法であるが、公衆ネットワークとインターネットを介したＶＰＮの使用は両者間の通信に問題がある。ＶＰＮの１つの問題は、ＶＰＮ接続をパケットごとにではなく、使用する前に事前に確立する必要があることである。例えば、パケット交換ネットワークを介して接続されたＶｏＩＰコールの例示である図４８Ｃに示すように、携帯電話７３０が意図された通話受信者に携帯電話７３７で意図された通話受信者に連絡する前に、まず図に示すように簡略化されたアルゴリズムでのステップ７４０に従ってＶＰＮセッションを確立しなければならない。このようにして、ＶＰＮ接続アプリケーションを有する携帯電話７３０は、任意の利用可能なラストマイルルーティング（この場合は無線通信７４１ＡからＷｉＦｉベースステーション７３１へのルーティング）、続けて有線通信７４１Ｂからルータ７３２、次いで有線通信７４１Ｃを通して、ＩＰパケットをＶＰＮホスト７３３に送信する。携帯電話７３０とＶＰＮホスト７３３との間のセッションが確立されると、携帯電話７３０はＶＰＮホスト７３３に対し、ＶＰＮホスト７３４へのＶＰＮトンネル７４１を作成するよう指示し、レイヤ５セッションはレイヤ６によって暗号化されたトンネルとネゴシエートされる。
【０３７９】
ＶＰＮ接続が設定されると、アプリケーション関連ステップ７４５に従って携帯電話７３０は、任意のＶｏＩＰ電話アプリを介して電話をかける、すなわちコールを行う。このステップでは、アプリケーションは、ＶＰＮホスト７３４から携帯電話７３７へのラストマイルで「コールアウト」リンク（アプリのない電話にコールするためのリンク）を確立する必要がある。ＶｏＩＰアプリケーションがそれを行えない、または行うことが許可されていない場合、コールは失敗し、速やかに終了する。そうでない場合、内部側ＩＰパケットは、発呼側携帯電話７３０と宛先携帯電話７３７との間にアプリケーションレイヤ５セッションを確立し、ＩＰテストパケットが適切に解読され、理解可能であることを確認する。
【０３８０】
ステップ７４５に従ってコールを行う（電話をかける）には、電話機内の電話キャリアのＳＩＭカードがＶＰＮトンネルと互換性がないため、コールは、電話機の通常のダイヤルアップ機能からではなく、電話機で実行されているレイヤ７アプリケーションからである必要がある。コールが開始されると、携帯電話７３０は、その通信アプリケーションに従って音声の小片すなわち「スニペット」を表す一連のＩＰパケットを送信する。図示の例では、これらのパケットは、発呼者の携帯電話７３０内のアプリケーションからＷｉＦｉリンク７４６Ａを介してＷｉＦｉ基地局７３１に、次いで有線接続７４６Ｂを介してルータ７３２に、そして最後に有線接続７４６Ｃを介してＶＰＮホスト７３３に送られる。次に、データは、ＶＰＮトンネル７４２を介してＶＰＮホスト７３５への接続７４７によってセキュリティを確保した状態で送信される。一旦ＶＰＮトンネルを離れると、ＶＰＮホストはデータを有線接続７４８Ａでルータ７３５に送り、有線接続７４８Ｂによって携帯電話システムに送り、タワー７３６は通常の電話呼出しとしてコール７３７を行う。携帯電話アプリから同じアプリを実行していない電話に電話をかける（コールする）プロセスをコールアウト機能と呼ぶ。
【０３８１】
前述の例は、公衆ネットワークを介してＶＰＮに接続する際の別の問題を浮き彫りにしている。すなわち携帯電話７３０の発呼者からＶＰＮホスト７３３へのラストマイルリンク及びＶＰＮホスト７３４から携帯電話７３７で呼び出されている人へのコールアウトは、ＶＰＮの一部ではないため、セキュリティ、パフォーマンス、コールＱｏＳを保証するものではない。具体的には、接続７４６Ａ、７４６Ｂ、及び７４６Ｃ、並びにコールアウト接続７４８Ａ、７４８Ｂ、及び７４８Ｃを含む発呼者のラストマイルは、全て盗聴及びサイバー攻撃の対象となる。
【０３８２】
コールが完了し、携帯電話７３７が電話を切ると、ステップ７４９に従ってＶＰＮ７４２は終了しなければならず、ＶＰＮレイヤ５はＶＰＮセッションを終了し、携帯電話７３０はＶＰＮホスト７３３との接続を断つ。
【０３８３】
ただし、所定の手順を実行しても、ＶＰＮを介して電話をかけたり文書を送信したりすることは、以下の理由を含む何らかの理由で失敗しないという保証はない。
・ＶＰＮは、リアルタイムアプリケーション、ＶｏＩＰ、またはビデオをサポートために十分な低レイテンシーで動作しない可能性がある。
・発信者からＶＰＮゲートウェイまたはＶＰＮゲートウェイから通話受信者へのＶＰＮラストマイル接続は、リアルタイムアプリケーション、ＶｏＩＰまたはビデオをサポートするために十分な低レイテンシーで動作しない可能性がある。
・発呼者または意図された受信者への最も近いＶＰＮゲートウェイまでの距離、すなわち「ラストマイル」が非常に遠い可能性、場合によってはＶＰＮなしで通話受信者までの距離よりも遠く離れている可能性があり、これによりネットワークの不安定さ、未知のネットワークによる制御不能なルーティング、可変ＱｏＳ、及び接続の保護されていない部分での中間者攻撃の機会を多数提供することがある。
・ＶＰＮゲートウェイからコール受信者へのＶＰＮラストマイル接続では、「コールアウト」接続とパケット転送またはローカル電話会社へのサポートリンクをサポートしていない場合がある。
・地元の通信事業者または政府検閲官が、国家安全保障または法令遵守の理由で、既知のＶＰＮゲートウェイに出入りする通話または接続をブロックする可能性がある。
・企業のＶＰＮを使用すると、ＶｏＩＰ通話は会社の従業員と指定された許可されたユーザのみに限定され、金融取引やビデオストリーミングがブロックされたり、Ｙａｈｏｏ、Ｇｏｏｇｌｅなどのパブリックメールサーバへのプライベートメールがブロックされたり、ＹｏｕＴｕｂｅ（登録商標）、チャットプログラム、またはＴｗｉｔｔｅｒなどは企業のポリシーに従ってブロックされることがある。
・不安定なネットワークの場合、ＶＰＮオペレータによって手動でリセットされるまで、ＶＰＮが開かれ、発信者のデバイスに接続された常設セッションを保持することがある。これにより、後続の接続のための帯域幅が失われる、または接続料金が高額になる可能性がある。
【０３８４】
［ネットワークの比較］
図４９Ａに示されている「オーバートップ」またはＯＴＴプロバイダによって提供される通信を、公衆ネットワークを使用してアドホックＶＰＮに接続する通信システム（図４８Ｃに示されている）と比較すると、ＶＰＮリンクそれ自体では、両方の通信システムの大半はほぼ同じコンポーネントと接続を有している。具体的には、携帯電話７３０、ＷｉＦｉ無線接続７４６Ａ、ＷｉＦｉ基地局７３１、有線接続７４６Ｂ及び７４６Ｃ、及びルータ７３２を含む発呼者の最後のマイルは、両方の実装において同じラストマイル接続を表す。同様に、相手方のラストマイルでは、携帯電話７３７、携帯電話接続７４８Ｃ、携帯電話基地局及びタワー７３６、有線接続７４８Ａ及び７４８Ｂ、及びルータ７３５は、インターネットバージョン及びＶＰＮバージョンの両方において同一である。主な相違点は、公衆ネットワークにおいて、ＶＰＮホスト７３３とＶＰＮホスト７３４との間のセキュリティを確保された通信７４７を構成するＶＰＮトンネル７４２が、セキュリティが確保されていない通信接続７５５を構成するサーバ／ルータ７５２及び７５４に置き換えられていることである。別の相違点は、ＯＴＴ通信において、ステップ７５０で説明したようにコールが即座に利用可能であり、ＶＰＮをセットアップし、コールの前及び後にＶＰＮセッションを終了するために、ＶＰＮ追加ステップ７４０及び７４９を使用する必要があることである。
【０３８５】
どちらの例でも、ラストマイル接続は、予期せぬコールＱｏＳ、パケットスニッフィングを受けること、サイバー攻撃のリスクをもたらす。サーバ／ルータ７５２及び７７４は、異なるロケール内の異なるＩＳＰによって管理される可能性が高いため、それらのサーバを既存の異なるクラウド、すなわちクラウド７５１及び７５３として解釈することができる。例えばＧｏｏｇｌｅ、Ｙａｈｏｏ、Ａｍａｚｏｎ、及びＭｉｃｒｏｓｏｆｔが所有し運営している公開ネットワークは、インターネットによって相互にリンクされているにもかかわらず、例えば「Ａｍａｚｏｎクラウド」互いに異なるクラウドと見なすことができる。
【０３８６】
図４９Ｂに示す競合ネットワークトポロジー、ピアツーピアネットワーク（ＰＰＮ）は、ルータまたはＩＳＰではなくＰＰＮによって管理されるパケットルーティングを備えた多数のピアから構成されるネットワークを含む。ピアツーピアネットワークは数十年にわたってハードウェアに存在していたが、インターネットサービスプロバイダの管理、コスト、規制を回避する手段としてこの概念を普及させたのはＮａｐｓｔｅｒであった。音楽著作権侵害のために米国政府の規制当局から訴えられたとき、Ｎａｐｓｔｅｒの創設者はそれをやめて、初期のＯＴＴキャリアＳｋｙｐｅに入った。その時、Ｓｋｙｐｅのネットワークは従来のＯＴＴからナップスターのようなＰＰＮに変換された。
【０３８７】
ＰＰＮ操作では、ＰＰＮへのログイン接続を行う全てのデバイスが、ＰＰＮに加わる１つのノードになる。例えば、地域７６１において、ＰＰＮソフトウェアがインストールされた携帯電話７３０がピアツーピアネットワークにログインすると、その地域の他の接続された全てのデバイスと同様にネットワークの一部となる。いずれかのデバイスによって呼び出されたコールは、１つのデバイスから別のデバイスに向かってホップして、目的地である別のＰＰＮ接続デバイスに到達する。例えば、携帯電話７３０がそのＰＰＮ接続を使用して別のＰＰＮ接続デバイス（例えば、携帯電話７６８）を呼び出す場合、コールは、２者間のＰＰＮに物理的に配置された任意の装置を通る迂回経路に沿ってつながる。図示されているように、携帯電話７３０から発するコールは、ＷｉＦｉ７３１によってＷｉＦｉ基地局７３１を介してデスクトップ７６５Ａに、次にノートブック７６６Ａに、デスクトップ７６５Ｂに、次にデスクトップ７６５Ｃに、最後に携帯電話基地局７６７及びタワー７６７を介して携帯電話７６８に接続する。このようにして、全てのルーティングはＰＰＮによって制御され、インターネットはルーティングの管理に関与しないものであった。両方の当事者が利用するので、ネットワークに接続するために使用されるＰＰＮソフトウェアは、ＶｏＩＰベースの音声通信のアプリケーションとしても機能する。
【０３８８】
携帯電話７３０が世界の反対側の非ＰＰＮ装置の携帯電話７３７を呼び出そうとする場合、ルーティングは、特に海または山脈を越えてパケットを送信するために、いくつかのリンクでインターネットを必ず含むことがある。地域７６１におけるルーティングの第１の部分は、以前の例と同様に、携帯電話７３０から開始し、ＷｉＦｉ基地局７３１、デスクトップ７６５Ａ、ノートブック７６６Ａ、デスクトップ７６５Ｂ及び７６５Ｃを介してルーティングされる。この時点で、ノートブック７６６Ｂがネットワークに接続されている場合、コールはそれを介してルーティングされ、そうでない場合、コールは携帯電話基地局及びタワー７６７を介して携帯電話７６８にルーティングされ、次に携帯電話基地局及びタワー７６７に戻されてから、その先に送られる。
【０３８９】
通話が太平洋横断の場合には、コンピュータ及び携帯電話は海上でトラヒックを移送することができないので、通話はクラウド７６３内のサードパーティのサーバ／ルータ７７０まで、及びクラウド７６４内のサードパーティｍｐサーバ／ルータ７７１への接続７４７を通ってインターネットまで必然的にルーティングされることになる。次に、コールはインターネットから出て、デスクトップ７７２を介して地域７６２に入り、ＷｉＦｉ７７３、ノートブック７７６、及び基地局７３６に接続する。ＷｉＦｉ７３３はＰＰＮアプリを実行しないので、ＷｉＦｉ７７３に入る実際のパケットは、タブレット７７５または携帯電話７７４のいずれかに移動し、ＷｉＦｉ７７３に戻ってから有線接続を介して携帯電話基地局及びタワー７３６に送信されなければならない。最後に、携帯電話コール７４８Ｃは、ＰＰＮ対応デバイスではない携帯電話７３７に接続する。これにより、ＰＰＮ地域７６２を出るため、接続はＰＰＮの「コールアウト」を構成する。このようなＰＰＮ方式を使用する場合、ＶＰＮのように、最初にＰＰＮログインを完了することによって、ステップ７６０に従って発呼側デバイスのＰＰＮネットワークへの登録を行う。その後、ステップ７６９に従ってＰＰＮアプリを使用してコールを発信することができる。ＰＰＮ方式の利点は、長距離通話を行うためにハードウェアがほとんどまたは全く必要ないことと、並びに、ＰＰＮに接続された全てのデバイスは、ＰＰＮオペレータをその状態、負荷及びレイテンシーに関して定期的に更新するので、ＰＰＮオペレータはパケットのルーティングを決定して遅延を最小限に抑えることができることである。
【０３９０】
この方式の欠点は、潜在的なセキュリティに対する脅威となり、コールレイテンシ及びコールＱｏＳに予測できない影響を及ぼす多くの未知ノードを含むネットワークをパケットが横断することである。そのため、パケット交換通信ネットワークでは、Ｓｋｙｐｅを除き、レイヤ３以上で動作するピアツーピアネットワークは一般的に採用されていない。
【０３９１】
アドホックＶＰＮプロバイダ、インターネットＯＴＴプロバイダ、及びＰＰＮピアネットワークの比較の概要を、対比させて以下の表に示す。
【０３９２】
【表５】
2020195141.tif 000007
【０３９３】
図示されているように、ＶＰＮ及びインターネットは固定インフラストラクチャを構成するが、ピアツーピアネットワークのノードは、ログインしているユーザ及びＰＰＮに接続されているデバイスによって異なる。この表の内容から、ネットワークの高速長距離接続（例えば、海洋及び山脈を横切るネットワーク）は、ＶＰＮの場合にのみ契約上保証され、それ以外の場合には予測不可能である。ラストマイルの帯域幅は、インターネットプロバイダーとＶＰＮプロバイダの両方に依存するローカルプロバイダであり、ＰＰＮは誰がログインしているかによって全く異なる。
【０３９４】
レイテンシー、すなわち連続して送信されるＩＰパケットの伝播遅延は、ＯＴＴ及びＶＰＮでは管理できないが、その理由は、プロバイダがラストマイルでのルーティングを制御するのではなく、ローカル通信会社またはネットワークプロバイダに依存しており、一方ＰＰＮは、特定の地域のその時間帯にオンラインになっているノード間でトラヒックを転送するためのベストエフォートを使用して、能力が限定されているからである。同様に、ネットワークの安定性については、ＰＰＮはネットワークを維持するためにトラヒックを再ルーティングする能力を有しているが、誰がログインしているかに左右される。一方、インターネットは本質的に冗長であり、配信を保証することはほぼ確実であるが、必ずしも適時に配信されない。アドホックＶＰＮのネットワーク安定性は、ＶＰＮホストへの接続が許可されているノードの数によって異なる。これらのノードがオフラインになると、ＶＰＮは無効になる。
【０３９５】
コールセットアップの観点からは、インターネットは常に利用可能であり、ＰＰＮはコールを行う前にＰＰＮにログインする余分なステップを必要とし、ＶＰＮは複雑なログイン手順を伴うことがある。また、ほとんどのユーザは、ＶＰＮやＰＰＮで使用される別のログインＩＤではなく、使いやすさに主たる有益な機能を見いだしてＯＴＴの電話番号の使用を検討する。リストアップされた３つのネットワークは全て、一般に商用電話事業者を利用するよりはるかに遅れる可変ＶｏＩＰ  ＱｏＳに悩まされている。
【０３９６】
セキュリティの観点からは、３つの選択肢全てが悪く、ラストマイルは読み取り可能なアドレスとペイロードを有するパケットスニッフィングに完全にさらされている。ＶＰＮはクラウド接続の暗号化を提供するが、依然としてＶＰＮホストのＩＰアドレスを公開している。そのため、示されているネットワークの選択肢はいずれもセキュリティが確保されているとはみなされない。従って、暗号化は、レイヤ６プロトコルとして、またはレイヤ７アプリケーション自体の埋め込み部分としてハッキングやサイバー攻撃を防止するためにさまざまなアプリケーションで使用されている。
【０３９７】
［暗号化に対する過剰な信頼］
ＩＰパケットを暗号化するかＶＰＮを確立するかにかかわらず、現在のネットワークセキュリティは、暗号化のみに依存しており、これは現代のパケット交換型の通信ネットワークの弱点の１つである。例えば、ＲＳＡ暗号化を攻撃する方法に関する多くの研究が行われている。素数を大きなサイズに制限することは、総当たり法を使用して解読Ｄ鍵コードを破る危険性を大幅に減少させるが、多項式因数分解法により、より小さな素数ベースの鍵に基づいて鍵を解くことに成功し得ることが実証された。「量子コンピューティング」の進化により、理にかなったサイバー攻撃においてＲＳＡベースの暗号鍵や他の暗号鍵を破壊する実用的な方法につながる懸念がある。
【０３９８】
これまでに存在していたコードの破損の危険に対抗するため、新しいアルゴリズムと、２００１年に米国ＮＩＳＴが採択した「高度暗号化標準」（ＡＥＳ暗号）などの「より大きな鍵」による暗号化方式が登場した。ラインダール暗号に基づいて、換字置換ネットワークとして知られる設計原理は、異なる鍵及びブロックサイズを使用する換字及び置換の両方を組み合わせる。現在の形では、アルゴリズムは１２８ビットの固定ブロック長を採用し、鍵長は１２８ビット、１９２ビット、及び５６ビットの可変長とし、それぞれに対応する、入力ファイル変換で使用されるラウンド回数は１０、１２、及び１４回とされている。実際問題として、ＡＥＳ暗号化は、ソフトウェアまたはハードウェアにおいて、任意の長さの鍵に対して、効率的かつ迅速に実行することができる。暗号方式では、２５６ビット鍵を使用するＡＥＳベースの暗号化をＡＥＳ２５６暗号化と呼ぶ。５１２ビット鍵を使用するＡＥＳ５１２暗号化も利用可能である。
【０３９９】
各新世代が、より良い暗号化方法を作り、より迅速にそれらを壊すべく暗号の水準を上げる一方、利益を得ようとするサイバー犯罪者は、暗号化されたファイルを破るために単にコンピューティングを使用するのではなく、目標に集中することが多い。前述のように、サイバーパイレーツは、パケットスニッフィングとポートスキャンを使用して、会話、企業サーバ、またはＶＰＮゲートウェイに関する貴重な情報を得ることができる。サイバープロファイリングにより、ネットワーク自体を攻撃するのではなく、企業のＣＦＯやＣＥＯのパーソナルコンピュータ、ノートブック、及び携帯電話のサイバー攻撃を開始する方が容易とも考えられる。埋め込みリンクを開くとマルウェアやスパイウェアを自動的にインストールする電子メールを従業員に送信すると、その従業員が必ず接続して作業する必要のある「内部」からネットワークに入るので、ファイアウォールのセキュリティが完全に迂回されてしまう。
【０４００】
データが変化せず、すなわち静的にネットワークを通過する場合にも、暗号化を破る可能性が高まる。例えば、図５０のネットワークでは、パケット７９０、７９２、７９４、及び７９９内の基礎となるデータは、パケットがネットワークを通って移動するときに変更されないままである。図示された各データパケットは、作成時の元の順序から変更されていない、時間的に連続的に並べられたデータまたは音声のシーケンスを含む。データパケットの内容がテキスト形式の場合、シーケンス１Ａ−１Ｂ−１Ｃ−１Ｄ−１Ｅ−１Ｆの暗号化されていない平文ファイルを読むと、コミュニケ番号「１」の「読みやすい」テキストが得られる。データパケットの内容が音声である場合、シーケンス１Ａ−１Ｂ−１Ｃ−１Ｄ−１Ｅ−１Ｆ内の暗号化されていない平文ファイルを、対応する音声コーデック（本質的にソフトウェアベースのＤ／Ａ変換器）によって変換すなわち「再生」すると、オーディオファイル番号「１」の音声になる。
【０４０１】
いずれの場合においても、本開示を通じて、固定サイズのボックスによって表される各データスロットは、所定の数のビット、例えば２バイト（２Ｂ）長を有する。スロット当たりの正確なビット数は、ネットワーク内の各通信ノードが各データスロットのサイズを知っている限り柔軟に変えることができる。各データスロットに含まれているのは、音声、ビデオ、またはテキストのデータであり、これらは図面においては、数字とそれに続く文字によって特定される。例えば、図示のように、データパケット７９０の第１のスロットは、コンテンツ１Ａを含み、ここで数字「１」は特定の通信＃１を示し、文字「Ａ」は通信＃１のデータの第１部分を表す。同様に、データパケット７９０の第２のスロットは、コンテンツ１Ｂを含み、ここで数字「１」は特定の通信＃１を示し、文字「Ｂ」は通信＃１のデータの第２部分を表す。
【０４０２】
例えば、同じデータパケットが仮にコンテンツ「２Ａ」を含んでいた場合、データは、通信＃１とは無関係の異なる通信、具体的には通信＃２における第１のパケット「Ａ」を表す。同種の通信を含むデータパケット群である場合、例えば全てのデータが通信＃１用である場合は、異なる通信を混合するデータパケットよりも分析及び読み取りが容易である。データを適切な順序で順番に並べることで、サイバー攻撃者は、音声、テキスト、グラフィックス、写真、ビデオ、実行可能なコードなどのデータの性質を容易に解釈できる。
【０４０３】
さらに、図示された例では、パケットの発信元及び宛先ＩＰアドレスは一定であるため、すなわち、ゲートウェイサーバ２１Ａ及び２１Ｆに出入りするデータと同じ形式でネットワークを介して転送中にパケットが変更されないままであるため、ハッカーが、データパケットをインターセプトし、ファイルを分析して開くか、会話を聞く機会が増える。
【０４０４】
リアルタイムのネットワークと接続されたデバイスのセキュリティ確保
【０４０５】
今日のパケット交換ネットワークを悩ましている過度のセキュリティ脆弱性に対処しながら、電話、ビデオ、及びデータ通信のサービス品質（ＱｏＳ）を向上させるために、ＩＰパケットルーティングを制御するための新しく革新的で体系的なアプローチ、すなわち個別の技術を含むグローバルネットワークを管理し、同時にエンドツーエンドのセキュリティを促進するアプローチが必要である。このような本発明のパケット交換ネットワークの目標は、以下の基準を含む。
１．リアルタイムの音声、ビデオ、及びデータトラヒックルーティングをネットワーク全体で動的に管理することを含む、グローバルなネットワークまたは長距離通信事業者のセキュリティとＱｏＳを保証すること。
２．通信ネットワークのラストマイルにおける「ローカルネットワークまたは電話会社」のセキュリティ及びＱｏＳを保証すること。
３．セキュリティが確保されていない回線に対するセキュリティを確保した通信の提供を含む、通信ネットワークの「ラストリンク」のセキュリティとＱｏＳを保証すること。
４．通信デバイスのセキュリティを保証し、不適格または不正なアクセスや使用を防ぐためにユーザを認証する。
５．不許可のアクセスを防止するために、デバイスまたはオンラインのネットワークまたはクラウドストレージにデータを格納する安全な手段の実現を容易化すること。
６．財務、個人、医療、バイオメトリックの全てのデータと記録を含む非公開の個人情報のセキュリティとプライバシーの保護を提供すること。
７．オンラインバンキング、ショッピング、クレジットカード、電子決済を含む全ての金融取引のセキュリティとプライバシーの保護を提供すること。
８．Ｍ２Ｍ（マシン・ツー・マシン）、Ｖ２Ｖ（ビークル・ツー・ビークル）、Ｖ２Ｘ（ビークル・ツー・インフラストラクチャ）通信を含む取引及び情報交換に、セキュリティ、プライバシー、及び必要に応じて匿名性を提供すること。
【０４０６】
上記の目標のうち、本開示に含まれる発明主題は、項目＃１に記載された第１のトピック、すなわち、「リアルタイムの音声、ビデオ、及びデータトラヒックルーティングをネットワーク全体で動的に管理することを含む、グローバルなネットワークまたは長距離通信事業者のセキュリティとＱｏＳを保証すること」に関する。このトピックは、リアルタイム通信パフォーマンスを犠牲にすることなく、ネットワークまたはクラウドのセキュリティを実現することと考えることができる。
【０４０７】
用語の説明
【０４０８】
文脈上別の解釈を必要としない限り、セキュリティを確保した動的ネットワークとプロトコルの記述で使用される用語は、以下の意味を有する。
【０４０９】
匿名データパケット：初めの発信元または最終宛先に関する情報が欠けているデータパケット。
【０４１０】
復号（復号化）：データパケットを暗号文から平文に変換するために使用される数学的演算。
【０４１１】
ＤＭＺサーバ：セレクタ、シードジェネレータ、キージェネレータ（鍵発生器）及びその他の共有の秘密の格納に使用されるＳＤＮＰネットワークまたはインターネットから直接アクセスできないコンピュータサーバ。
【０４１２】
動的暗号化／復号化：データパケットがＳＤＮＰネットワークを通過する際に動的に変化する鍵に依存する暗号化及び復号化。
【０４１３】
動的混合（動的ミキシング）：ミキシングアルゴリズム（スプリットアルゴリズムの逆）が、混合データパケットが作成されるときの時間、状態、及びゾーンなどの状態に基づいてシードの関数として動的に変化するミキシングのプロセス。
【０４１４】
動的スクランブル化／アンスクランブル化：データパケットが作成された時間や作成されたゾーンなど、状態に応じて動的に変化するアルゴリズムに依存するスクランブル化とアンスクランブル化。
【０４１５】
動的分割：データパケットが複数のサブパケットに分割されるときの時間、状態、ゾーンなどの状態に基づいて、分割アルゴリズムがシードの関数として動的に変化する分割プロセス。
【０４１６】
暗号化：データパケットを平文から暗号文に変換するために使用される数学的演算。
【０４１７】
断片化データ転送：分割されたデータと混合データのＳＤＮＰネットワークを介したルーティング。
【０４１８】
ジャンクデータ削除（または「デジャンキング」）：元のデータの復元のため、データパケットの元の長さを回復するために、データパケットからジャンクデータを削除すること。
【０４１９】
ジャンクデータ挿入（または「ジャンキング」）：実際のデータ内容を難読化するため、またはデータパケットの長さを管理するために、意味のないデータをデータパケットに意図的に導入すること。
【０４２０】
鍵：秘密アルゴリズムを使用して鍵を生成する鍵生成器に時間などの状態を入力することによって生成される、偽装されたデジタル値。鍵は、セレクタからパケット内のデータを暗号化するアルゴリズムを選択するために使用される。鍵は、公的またはセキュリティを確保されていないラインを介して状態に関する情報を安全に渡すために使用できる。
【０４２１】
鍵交換サーバ：ネットワークオペレータのスパイ行為の可能性を防止するために、公開暗号鍵をクライアントに（特にクライアントが管理する鍵管理のため、すなわちクライアントベースのエンドツーエンド暗号化のため）、選択に応じて対称鍵暗号化を使用するサーバに配布するために使用される、ＳＤＮＰネットワークオペレータから独立したサードパーティにホストされるコンピュータサーバ。
【０４２２】
ラストリンク：クライアントのデバイスと、それが通信するネットワーク内の最初のデバイス（通常は無線タワー、ＷｉＦｉルータ、ケーブルモデム、セットトップボックス、またはイーサネット（登録商標）接続）との間のネットワーク接続。
【０４２３】
ラストマイル：ラストリンクを含むＳＤＮＰゲートウェイとクライアント間のネットワーク接続。
【０４２４】
混合（ミキシング）：異なるソース及びデータタイプからのデータの結合により、認識できないコンテンツを有する１つの長いデータパケット（または一連のより短いサブパケット）を生成すること。以前に分割されたデータパケットをミキシングさせて元のデータコンテンツを復元する場合もある。ミキシング操作には、ジャンクデータの挿入、削除、及び解析も含まれ得る。
【０４２５】
パース（構文解析）：データパケットを格納または送信のために短いサブパケットに分割する数値演算。
【０４２６】
スクランブル化：データパケット内のデータセグメントの順序またはシーケンスがその自然順序から認識不可能な形式に変更される操作。
【０４２７】
分割：データパケット（または一連のシリアルデータパケット）が複数の宛先にルーティングされる複数のサブパケットに分割される操作。分割操作には、ジャンクデータの挿入や削除も含まれ得る。
【０４２８】
ソフトスイッチ：通信スイッチ及びルータの機能を実行する実行可能コードを含むソフトウェア。
【０４２９】
ＳＤＮＰ：本発明に従って作られた高セキュリティの通信ネットワークを意味する「Ｓｅｃｕｒｅ  Ｄｙｎａｍｉｃ  Ｎｅｔｗｏｒｋ  ａｎｄ  Ｐｒｏｔｏｃｏｌ（セキュリティを確保した動的ネットワーク及びプロトコル）」の頭字語。
【０４３０】
ＳＤＮＰ管理サーバ：実行可能コードと共有秘密をグローバルに、または特定のゾーンに分散するために使用されるコンピュータサーバ。
【０４３１】
ＳＤＮＰブリッジノード：ＳＤＮＰクラウドを１つのＳＤＮＰクラウドと、異なるゾーンおよびセキュリティ資格情報を持つ別のクラウドに接続するＳＤＮＰノード。
【０４３２】
ＳＤＮＰクライアントまたはクライアントデバイス：一般的にネットワークのラストマイルを介して接続するＳＤＮＰクラウドに接続するために、ＳＤＮＰアプリケーションを実行するネットワーク接続デバイス（通常は携帯電話、タブレット、ノートブック、デスクトップ、またはＩｏＴデバイス）。
【０４３３】
ＳＤＮＰクラウド：ＳＤＮＰ通信ノード操作を実行するためのソフトスイッチ実行可能コードを実行している相互接続されたＳＤＮＰサーバのネットワーク。
【０４３４】
ＳＤＮＰゲートウェイノード：ＳＤＮＰクラウドをＳＤＮＰラストマイルとクライアントに接続するＳＤＮＰノード。ＳＤＮＰゲートウェイノードは、ＳＤＮＰクラウドとラストマイルの少なくとも２つのゾーンにアクセスする必要がある。
【０４３５】
ＳＤＮＰメディアノード：シグナリングサーバすなわちシグナリング機能（暗号化／復号、スクランブル化／アンスクランブル化、ミキシング／スプリット、タグ付け、およびＳＤＮＰヘッダー及びサブヘッダーの生成を含む）を実行する別のコンピュータからの命令に従って、特定の識別タグを有する着信データパケットを処理するソフトスイッチ実行可能コード。ＳＤＮＰメディアノードは、特定のタグを有する着信データパケットを識別し、新たに生成されたデータパケットを次の宛先に転送する役割を果たす。
【０４３６】
ＳＤＮＰメディアサーバ：ＳＤＮＰメディアノードの機能をデュアルチャネル及びトライチャネル通信で実行し、シングルチャネル通信でＳＤＮＰシグナリングノード及びＳＤＮＰネームサーバノードのタスクを実行するソフトスイッチをホストするコンピュータサーバ。
【０４３７】
ＳＤＮＰネームサーバ：トライチャネル通信でＳＤＮＰネームサーバノードの機能を実行するソフトスイッチをホストするコンピュータサーバ。
【０４３８】
ＳＤＮＰネームサーバノード：ＳＤＮＰクラウドに接続された全てのＳＤＮＰデバイスの動的リストを管理するソフトスイッチ実行可能コード。
【０４３９】
ＳＤＮＰネットワーク：ＳＤＮＰクラウドだけでなく、ラストリンクとラストマイル通信を含む、クライアント−クライアント間の高セキュリティの通信ネットワーク全体。
【０４４０】
ＳＤＮＰノード：コンピュータサーバ上で動作するソフトウェアベースの「ソフトスイッチ」を含むＳＤＮＰ通信ノード、あるいはＳＤＮＰネットワークに接続され、メディアノード、シグナリングノード、またはネームサーバノードのいずれかのＳＤＮＰノードとして機能するハードウェアデバイス。
【０４４１】
ＳＤＮＰサーバ：ＳＤＮＰメディアサーバ、ＳＤＮＰシグナリングサーバ、またはＳＤＮＰネームサーバのいずれかを備え、適切なソフトスイッチ機能をホストしてＳＤＮＰノードとして動作するコンピュータサーバ。
【０４４２】
ＳＤＮＰシグナリングノード：当事者間のコールまたは通信を開始し、コール元（発呼元）基準及びノード間伝播遅延の動的テーブルに基づいて、断片化されたデータ転送の複数のルートの全てまたは一部を決定し、ＳＤＮＰメディアの着信および発信データパケットの管理方法。
【０４４３】
ＳＤＮＰシグナリングサーバ：デュアルチャネルおよびトライチャネルＳＤＮＰ通信でＳＤＮＰシグナリングノードの機能を実行し、デュアルチャネル通信でＳＤＮＰネームサーバノードの任務を実行するソフトスイッチをホストするコンピュータサーバ。
【０４４４】
セキュリティ設定：シードジェネレータやキージェネレータが、秘密アルゴリズムを、常に変化するネットワーク時間などの入力状態と共に使用して生成し、従ってパブリックまたはセキュリティが確保されていないラインを介して安全に送信することが可能な、シードや鍵などのデジタル値。
【０４４５】
シード（Ｓｅｅｄ）：秘密アルゴリズムを使用してシードを生成するシードジェネレータに、時間などの状態を入力することによって生成される偽装デジタル値。シードは、セレクタからパケット内のデータをスクランブル化または分割するためのアルゴリズムを選択するために使用される。シードは、パブリックまたはセキュリティが確保されていないラインを介して状態に関する情報を安全に渡すために使用できる。
【０４４６】
セレクタ：共有秘密情報の一部であるとともに、１つまたは複数のパケットのスクランブル化、アンスクランブル化、暗号化、復号、分割、またはミキシングのための特定のアルゴリズムを選択するためにシードまたは鍵と共に使用される可能性のある、スクランブル化、暗号化または分割アルゴリズムのリストまたはテーブル。
【０４４７】
共有秘密（情報）：ＳＤＮＰネットワークまたはインターネット経由でアクセスできないＤＭＺサーバにローカルに保存されるシードジェネレータ、キージェネレータ、ゾーン情報、およびアルゴリズムシャッフルプロセスで使用されるアルゴリズムのみならず、スクランブル化／アンスクランブル化、暗号化／復号化、および混合／分割アルゴリズムのテーブルまたはセレクタを含む、ＳＤＮＰノード操作に関する機密情報。
【０４４８】
ステート（状態）：シードや鍵などのセキュリティ設定を動的に生成するために、また混合、分割、スクランブル化、暗号化などの特定のＳＤＮＰ操作のアルゴリズムを選択するために使用される、ロケーション、ゾーン、またはネットワーク時間などの入力。
【０４４９】
時間（Ｔｉｍｅ）：ＳＤＮＰネットワークを介して通信を同期させるために使用されるユニバーサルネットワーク時間。
【０４５０】
アンスクランブル化：スクランブル化されたデータパケット内のデータセグメントを元の順序またはシーケンスに復元するために使用されるプロセス。アンスクランブル化はスクランブル化の逆関数である。
【０４５１】
ゾーン：共通のセキュリティ資格情報と共有秘密を共有する特定の相互接続されたサーバのネットワーク。ラストマイル接続は、ＳＤＮＰクラウドとは別のゾーンを含む。
【０４５２】
セキュア動的ネットワーク及びプロトコル（Secure Dynamic Network And Protocol ：ＳＤＮＰ）の設計
【０４５３】
リアルタイムでのパケット遅延を最小限に抑え、安定した呼接続を確実にし、かつ高信頼性の音声通信及び映像ストリーミングを伝送すると共に、パケット交換通信に対するサイバー攻撃及びハッキングを防止するために、本開示に係るセキュリティが確保された（以降、「セキュア」とも称する）動的ネットワーク及びプロトコル、すなわちＳＤＮＰは、下記の複数の処理原則に基づいて設計した。
・リアルタイム通信は、常に、遅延時間が最も短い経路を使用して行うべきである。
・データパケットの不正な検査またはスニッフィングによって、パケットの送信元、送信先、及びその内容が分からないようにすべきである。
・データパケットのペイロードは、適当な期間にハッキングされる危険を冒さずに、別個の暗号化アルゴリズムを使用して動的に再暗号化（すなわち、復号及びその後の再度の暗号化）するべきである。
・復号された後であっても、全てのデータパケットのペイロードは、依然として判読不能なペイロード、例えば、複数の会話と、無関係なデータと、ジャンクパケットフィラーとの組み合わせを動的にスクランブル化したものを含む。
【０４５４】
上記のガイドラインの実施は、下記の様々な実施形態のいくつかまたは全てに含まれる様々なユニークかつ発明的な方法、機能、特徴、及び実行を含む。
・ＳＤＮＰは、インターネットを介してアクセスできないプロプライエタリコマンド及び制御ソフトウェアを使用して実現される通信会社（すなわち通信システム）のソフトスイッチ機能を含む、１または複数の専用クラウドを使用する。
・全てのクラウド内通信は、ＩＰアドレスではなく、ＳＤＮＰアドレス及び動的ポート（すなわちプロプライエタリＮＡＴアドレス）に基づいて、プロプライエタリクラウド内の専用のＳＤＮＰパケットルーティングを使用して行われる。ＳＤＮＰアドレスは、インターネットを通じてまたはＳＤＮＰクラウドの外部では、使用またはルーティングすることはできない。
・ＳＤＮＰネットワークは、全てのリアルタイム通信を、頻繁に識別し、遅延時間が最も短い経路を使用して動的にルーティングする。
・クラウドツークラウド及びラストマイル通信を除いては、セキュアまたはリアルタイム通信はＳＤＮＰクラウドの外部またはインターネットを介してルーティングされず、一般的に不可視アドレスによるシングルホップルーティングを使用する。
・データパケット内に含まれるルーティングデータは、互いに隣接する２つのデバイス間のシングルホップのためのルーティングを識別し、前の及び次のサーバのＳＤＮＰまたはＩＰアドレスのみを識別する。
・発呼者または着呼者の電話番号またはＩＰアドレス、すなわちクライアントの各ソースアドレス及び送信先アドレスは、ＩＰパケットのヘッダー内にも、暗号化されたペイロード内にも存在しない。
・命令及び制御に関連する共有秘密は、インターネットを介してアクセスできないセキュアＤＭＺサーバ内にインストールされたシステムソフトウェア内に存在する。
・ＳＤＮＰパケット通信は、互いに異なる３つのチャンネル、すなわち、ＳＤＮＰクラウド内のエレメントの識別に使用される「ネームサーバ」、コンテンツ及びデータのルーティングに使用される「メディアサーバ」、及びにパケット及び発呼の命令及び制御に使用される「シグナリングサーバ」を通じて行うことができる。
・ルーティング情報が、鍵及び数値シード（必要に応じて）と共に、発呼または通信の前に、かつコンテンツとは別個に、独立的なシグナリングチャンネルを通じて全ての参加メディアサーバに供給される。シグナリングサーバは、メディアサーバに対して、ネットワークを横断するパケットの前の及び次の送信先のみを提供する。
・メディアパケットは、他のソースからの断片化されたデータ種類が異なるデータを含む他のパケットと動的に混合及び再混合された、会話、ドキュメント、テキスト、またはファイルの一部しか表さない断片化されたデータを含む。
・ファースト及びラストマイル通信を保護するために、シグナリングサーバ関連通信をメディア及びコンテンツ関連パケットから分離することを含む特別なセキュリティ方法が用いられる。
・パケット伝送は、コンテンツ種類依存性であり、音声及びリアルタイム映像またはストリーミングは改良型ＵＤＰに基づくが、パケット損失または遅延の影響を受けやすいシグナリングパケット、命令及び制御パケット、データファイル、アプリケーションファイル、システムファイル、及び他のファイルは、ＴＣＰ伝送を用いる。
・デバイスが本当のクライアントでありクローンではないことを確認すると共に、通信を行っている者がそのデバイスの真のオーナーであり偽者ではないことを認証するために、特定のセキュリティ及び認証方法が用いられる。
【０４５５】
ＶｏＩＰ及びリアルタイムアプリケーションにおいて低遅延及び高ＱｏＳを有するセキュア通信を確実にするために、本開示に係る「セキュア動的ネットワーク及びプロトコル（Secure Dynamic Network And Protocol）」すなわちＳＤＮＰは、下記の構成要素を含む本発明に係る「動的メッシュ」ネットワークを使用する。
・動的に適合可能なマルチパス、及び遅延を最小化したメッシュルーティング
・動的なパケットスクランブル化
・パケット分割、混合、パース、及びジャンクビットパケットフィラー（junk bit packet fillers）を使用した動的な断片化
・ネットワークまたはクラウドの全体に渡っての動的なノード内ペイロード暗号化
・アドレス偽装及びニーズツーノウ（need-to-know）ルーティング情報による動的ネットワークプロトコル
・メディア及びコンテンツを、シグナリング、命令及び制御、及びネットワークアドレスから分離した複数チャンネル通信
・データ種類に特有のフィーチャ及びコンテキスチュアルルーティングによる動的に適合可能なリアルタイム通信プロトコル
・ユーザ鍵管理によるクライアント暗号化ペイロードのサポート
・混雑したネットワークでの高ＱｏＳのための軽量音声ＣＯＤＥＣ
【０４５６】
上述したように、ＳＤＮＰ通信は、マルチルートまたはメッシュ伝送に依存して、データパケットを動的にルーティングする。本発明に係るＳＤＮＰ通信では、インターネットＯＴＴ及びＶｏＩＰに使用される単一経路のパケット通信とは対照的に、データパケットのコンテンツは、情報を含んでいるコヒーレントパケットによって共通のソースまたは発呼者から直列的に搬送されるのではなく、断片化された形態で搬送される。複数のソース及び発呼者から送信されたコンテンツを動的に混合及び再混合することにより、データ種類が互いに異なるデータ、コンテンツ、音声、映像、及びファイルとジャンクデータフィラーとを組み合わせた不完全な断片が生成される。本開示に係るデータ断片化及び通信の利点は、暗号化及びスクランブル化されていないデータパケットであっても、それらはデータ種類が互いに異なる互いに無関係なデータの組み合わせであるため、解読するのはほぼ不可能だということである。
【０４５７】
断片化されたパケットの混合及び分割を、パケットスクランブル化及び動的暗号化と組み合わせることにより、動的に暗号化、スクランブル化、フラグメント化されたデータのハイブイリッド化されたパケットは、そのデータの生成、パケット化、及び動的再パケット化に使用された共有秘密、鍵、数値シード、時間、及びステート変数を持っていない任意の者または観察者には全く判読及び解読不能な意味を持たないパケットとなる。
【０４５８】
さらに、各パケットの断片化コンテンツと、それの生成に使用された秘密情報は、新しい断片及び新しいセキュリティ要素（例えば、変更されたシード、鍵、アルゴリズム、及び秘密情報）によりパケットが再構成されるまでの一秒足らずの間でのみ有効である。このように、サイバーパイレーツがステート依存性ＳＤＮＰデータパケットを解読するのに要する時間が制限されることにより、ＳＤＮＰのセキュリティはさらに高められる。サイバーパイレーツは、十分の１秒で何万年分（解読に要する時間の１２乗）もの計算を実行しなくてはならないためである。
【０４５９】
上述した方法の組み合わせは、静的な暗号化により実現されるセキュリティよりもはるかに高いレベルの多次元的なセキュリティを可能にする。したがって、本開示に係るセキュア動的ネットワーク及びプロトコルは、本明細書中では、「ハイパーセキュア（hyper-secure）」ネットワークとも称す。
【０４６０】
［デバイスパケットのスクランブル化］
本発明によれば、パケット交換網ネットワークを介したセキュア（セキュリティが確保された）通信は、ハッキング防止及びセキュリティ確保のいくつかの要素に依存し、そのうちの１つはＳＤＮＰパケットのスクランブル化を含む。ＳＤＮＰパケットのスクランブル化は、データセグメントの配列を並べ替えて、情報を判読不能で無益なものにすることを含む。図５１Ａに示すように、スクランブル化されていないデータパケット９２３を、スクランブル化操作９２４（Scrambling Process）により処理し、スクランブル化データパケット９２５を生成する。このスクランブル化操作９２４は、任意のアルゴリズム、数値的手法、またはシーケンシング手法を使用することができる。アルゴリズムは、静的な方程式であり得、例えばスクランブル化が実施された時間（time）９２０などの「ステート（State）」に基づく動的変数または数値シード、または、シード生成器（Seed Generator）９２１により例えばスクランブル化が実施された時間９２０などのステートに基づくアルゴリズムを使用して生成された数値シード（seed）９２９を含み得る。例えば、各データが、単調増加するユニークな数に変換される場合は、全てのシード９２９はユニークなものとなる。時間９２０及びシード９２９は、特定のアルゴリズムを選択及び識別するのに使用され、また、利用可能なスクランブル化方法、すなわちスクランブル化方法リスト９２２（Scrambling Algorithms）から特定のスクランブル化操作９２４を選択するのにも使用される。データフロー図では、図示の便宜上、このパケットスクランブル化操作及びシーケンスは、パケットスクランブル化操作９２６（Packet Scrambling）として概略的または記号的に表示する。
【０４６１】
図５１Ｂは、スクランブル化操作９２４と逆の操作であるアンスクランブル化操作９２７（Unscrambling Process）を示す。このアンスクランブル化操作９２７は、スクランブル化データパケット９２５の生成に使用されたステート（時間）９２０及びそれに対応するシード９２９を再使用してスクランブル化を解除し、スクランブル化が解除されたデータである、スクランブル化されていないデータパケット９２３を生成する。パケットスクランブル化に使用されたものと同一のステート（時間）９２０を使用して、アンスクランブル化操作９２７では、スクランブル化方法リスト９２２から選択される、スクランブル化に使用されたものと同一のスクランブル化方法を再び使用しなければならない。スクランブル化アルゴリズムリスト９２２では「スクランブル化」という用語が用いられているが、このアルゴリズムテーブルは、「アンスクランブル化」の実施に必要とされる、スクランブル化と逆の操作を識別して選択するのに使用される。すなわち、スクランブル化アルゴリズムリスト９２２は、データパケットのスクランブル化及びアンスクランブル化の両方に必要な情報を含んでいる。この２つの操作は、互いに逆の順番で実施される同一のステップを含むので、スクランブル化アルゴリズムリスト９２２は、「スクランブル化／アンスクランブル化」アルゴリズムリスト９２２と称することもできる。しかしながら、明確にするために、このテーブル（リスト）は、スクランブル化の機能についてのみ称し、それと逆の機能（アンスクランブル化）については称さないものとする。
【０４６２】
アンスクランブル化操作９２７の実施のために選択されたスクランブル化アルゴリズムが、パケットスクランブル化に使用されたアルゴリズムと一致しない場合、あるいは、シード９２９またはステート（時間）９２０が、スクランブル化が実施された時間と一致しない場合、アンスクランブル化操作は、元のスクランブル化されていないデータパケットの９２３の復号に失敗し、パケットデータが失われることとなる。データフローズ図では、図示の便宜上、このパケットアンスクランブル化操作及びシーケンスは、パケットアンスクランブル化操作９２８（Packet Unscrambling）として概略的または記号的に表示した。
【０４６３】
本発明によれば、スクランブル化操作が可逆的である限り、すなわち、各ステップを元の処理のときと逆の順番で繰り返すことにより、データパケット内の各データセグメントをその元の適切な位置に戻すことができる限り、スクランブル化操作の実施に数値アルゴリズムが使用される。数学的には、許容可能なスクランブル化アルゴリズムは、可逆的なものである。すなわち、例えば下記のように、関数Ｆ（Ａ）がその逆関数Ｆ−１（Ａ）を有するか、またはその逆関数に変換できる。
Ｆ−１［Ｆ（Ａ）］＝Ａ
これは、関数Ｆにより処理されたデータファイル、配列、文字列、ファイル、またはベクターＡは、その後、逆関数Ｆ−１を使用して処理することにより、数値及び配列が壊れていない元の入力Ａに復号できることを意味する。
【０４６４】
このような可逆操作の例は、図５１Ｃに示す静的スクランブル化アルゴリズムであり、ミラーリングアルゴリズム及び位相シフトアルゴリズムを含む。ミラーリングアルゴリズムでは、あるデータセグメントは、ミラーリング処理の係数すなわち「Ｍｏｄ」により定義された対称線を中心とした鏡像となるように、他のデータセグメントとスワップ（位置交換）される。図示したＭｏｄ−２ミラーリング（Mod-2 Mirroring）では、元の入力データパケット９３０の互いに連続する２つのデータセグメント毎にスワップされる。つまり、１番目及び２番目のデータセグメント間、３番目及び４番目のデータセグメント間、５番目及び６番目のデータセグメント間（以下同様）の位置、すなわち数学的には、１．５番目、３．５番目、５．５番目、・・・、（１．５＋２ｎ）の位置に位置する対称線を中心として、データセグメント１Ａ及び１Ｂの位置が交換され、データセグメント１Ｃ及び１Ｄの位置が交換され、データセグメント１Ｅ及び１Ｆの位置が交換され（以下同様）、これにより、スクランブル化された出力データパケット９３５が生成される。
【０４６５】
Ｍｏｄ−３ミラーリング（Mod-3 Mirroring）では、互いに連続する３つのデータセグメント毎に、その１番目及び３番目のデータセグメントの位置が交換され、それらの中間の２番目のパケットは元の位置から変更されない。したがって、データセグメント１Ａ及び１Ｃの位置が交換されるが、データセグメント１Ｂは元の位置（互いに連続する３つのデータセグメントにおける真ん中の位置）から変更されない。同様に、データセグメント１Ｄ及び１Ｆの位置が交換されるが、データセグメント１Ｅは元の位置（互いに連続する３つのデータセグメントにおける真ん中の位置）から変更されない。このようにして、スクランブル化されたデータパケット出力９３６が生成される。Ｍｏｄ−３ミラーリングでは、ミラーリングの対称線は、２番目、５番目、８番目、・・・、（２＋３ｎ）番目の位置に位置する。
【０４６６】
Ｍｏｄ−４ミラーリング（Mod-4 Mirroring）では、互いに連続する４つのデータセグメント毎に、１番目及び４番目のデータセグメントの位置が交換され、かつ２番目及び３番目のデータセグメントの位置が交換され、これにより、入力データパケット９３１からスクランブル化された出力データパケット９３７が生成される。したがって、データセグメント１Ａはデータセグメント１Ｄと位置が交換され、データセグメント１Ｂはデータセグメント１Ｃと位置が交換される。Ｍｏｄ−４ミラーリングでは、ミラーリングの対称線は、互いに連続する４つのデータセグメントにおける２番目のデータセグメントと３番目のデータセグメントとの間（例えば、２番目のデータセグメントと３番目のデータセグメントとの間、６番目のデータセグメントと７番目のデータセグメントとの間）の位置、すなわち数学的には、２．５番目、６．５番目、......、（２．５＋４ｎ）番目の位置に位置する。Ｍｏｄ−ｍミラーリング（Mod-m Mirroring）では、入力データパケット９３２のｍ番目のデータセグメントが、最初の、すなわち０番目のデータセグメントと位置が交換され、ｎ番目のデータセグメントが（ｍ−ｎ）番目のデータセグメントと位置が交換され、これにより、スクランブル化された出力データパケット９３８が生成される。
【０４６７】
図５１Ｃには、フレームシフトと呼ばれる別のスクランブル化方法がさらに示されている。このフレームシフトでは、各データセグメントは、左側または右側に、１フレーム、２フレーム、またはそれ以上のフレームだけ位置がシフトされる。例えば、単一フレーム位相シフト（1-Frame Phase Shift）では、各データセグメントは、１フレームだけ位置がシフトされる。具体的には、１番目のデータセグメントは、２番目のデータセグメントの位置に位置がシフトされ、２番目のデータセグメントは、３番目のデータセグメントの位置に位置がシフトされ（以下同様）、これにより、スクランブル化された出力データパケット９４０が生成される。なお、入力データパケット９３０の最後のフレーム（図示した例では、フレーム１Ｆ）は、１番目のデータセグメント１Ａの位置に位置がシフトされる。
【０４６８】
２フレーム位相シフト（2-Frame Phase Shift）では、入力データパケット９３０の１番目のデータセグメント１Ａは、３番目のデータセグメント１Ｃの位置に２フレーム分位置がシフトされ、４番目のデータセグメント１Ｄは、スクランブル化された出力データパケット９４１の最後（６番目）のデータセグメントの位置に位置がシフトされる。そして、最後から２番目（５番目）のデータセグメント１Ｅは、１番目のデータセグメントの位置に位置がシフトされ、最後（６番目）のデータセグメントＦは、２番目のデータセグメントの位置に位置がシフトされる。同様に、４フレーム位相シフト（4-Frame Phase Shift）では、入力データパケット９３０の各データセグメントは４フレーム分位置がシフトされ、１番目のフレーム１Ａはフレーム１Ｅと位置が交換され、フレーム１Ｂはフレーム１Ｆと位置が交換され、フレーム１Ｃはフレーム１Ａと位置が交換され（以下同様）、これにより、スクランブル化された出力データパケット９４２が生成される。最大フレーム位相シフト（Maximum Phase Shift）の場合、１番目のフレームＡは最後のフレームと位置が交換され、２番目のフレーム１Ｂは１番目のフレームの位置に位置がシフトされ（すなわち、出力データパケット４３２の最初のフレームとなり）、３番目のフレームは２番目のフレームの位置に位置がシフトされる（以下同様）。１つのフレームが最大位相を超えて位相シフトされると、出力データは入力データから変化しない。図示した例は、位相シフトのシフト方向は右側である。このアルゴリズムでは、位相シフトのシフト方向は左側であってもよいが、その場合は、結果は異なるものとなる。
【０４６９】
本開示に係る上述したアルゴリズム及び同様の方法は、本明細書では、静的スクランブル化アルゴリズムと称する。スクランブル化操作が１回だけ行われ、それにより、入力データセットをユニークな出力に変換するからである。さらに、上述したアルゴリズムでは、スクランブル化の実施方法の決定は、データパケットの値に依存しない。図５１Ｄに示すように、本発明によれば、パラメータ的なスクランブル化は、スクランブル化方法が、データパケット自体に含まれているデータに由来する値に基づいて、可能性があるスクランブル化アルゴリズム（例えば、Ｓｏｒｔ＃Ａ、Ｓｏｒｔ＃Ｂなど）のテーブルから選択されることを意味する。例えば、各データセグメントを、そのデータセグメントに含まれるデータの計算に基づいて、数値に変換することができると仮定する。データセグメントの数値を決定するための１つの可能性があるアプローチは、データセグメント内のビットデータの１０進数または１６進数相当値を用いることである。データセグメントが多重項を含む場合、数値相当値は、データセグメント中の数字を合計することにより求められる。データセグメントのデータはその後単一の数字または「パラメータ」に組み合わされ、その後、使用するスクランブル化方法の選択に用いられる。
【０４７０】
図示した例では、スクランブル化されていないデータパケット９３０は、ステップ９５０において、各データセグメントについての数値を含んでいるデータテーブル９５１にパラメータ的に変換される。図示のように、０番目のフレームであるデータセグメント１Ａは、数値「２３」を有し、１番目のフレームであるデータセグメント１Ｂは、数値「１２５」を有する（以下同様）。その後、ステップ９５２において、データパケット９３０全体についての単一のデータパケット値が抽出される。図示した例では、合計値９５３（Sum）の「１００２」は、テーブル９５１からの全データセグメント値の線形合計、すなわちパラメータ値を合算したものを示す。ステップ９５４では、このパラメータ値（すなわち合計値９５３）を条件テーブル（すなわち、ソフトウェアでは予め規定された条件付実行構文（if-then-else statements））のセットと比較して、つまり、合計値９５３をテーブル９５５における多数の非重複数値範囲と比較して、使用するべきソートルーチンを決定する。この例では、パラメータ値「１２００」は、１０００から１４９９の範囲に入るので、ソート＃Ｃ（Ｓｏｒｔ＃Ｃ）を使用するべきであると決定される。ソートルーチンが選択されると、パラメータ値はもはや不要となる。スクランブル化されていない入力データ９３０はその後、ステップ９５６において、選択された方法でスクランブル化され、スクランブル化されたデータパケット出力９５９が生成される。図示した例では、テーブル９５７に要約されたソート＃Ｃは、各データセグメントの相対移動のセットを含む。このセットでは、スクランブル化されたデータパケット９５９の第１のデータセグメント、すなわち０番目のフレームは、左側に３フレーム分移動（３つシフト）するように定義されている。１番目のフレームは、元の位置から変更されない（すなわち移動しない）データセグメント１Ｂを含む。２番目のフレームは、元の位置から左側に２つシフトしたデータセグメント１Ｅを含む。３番目のフレームも同様であり、３番目のフレームは、元の位置から左側に２つシフトしたデータセグメント１Ｆを含む。スクランブル化されたデータパケット出力９５９の４番目のフレームは、元の位置から右側に２つシフトした（すなわち＋２移動した）データセグメント１Ｃを含む。５番目のフレームは、元の位置から右側に５つ位置がシフトした（すなわち＋５移動した）データセグメント１Ａを含む。
【０４７１】
このようにして、テーブル９５７に要約されたソート＃Ｃにより、各データセグメントは新しい位置に一意的に移動し、これにより、パラメータ的に決定されたスクランブル化データパケット９５９が生成される。スクランブル化データパケットをアンスクランブル化するときは、同一のソート方法（ソート＃Ｃ）を使用して、上記の処理を逆の順番で行う。アンスクランブル化操作を実施するために同一のアルゴリズムが選択されることを確実にするために、データパケットのパラメータ値９５３は、スクランブル化操作により変更されない。例えば、各データセグメントのパラメータ値の線形合計を用いて、数の順番に関係なく、同一の数値が生成される。
【０４７２】
動的スクランブル化方法は、システムのステート（例えば、時間）を使用して、データパケットがスクランブル化されたときの条件を識別し、これにより、アンスクランブル化操作を実行するときに、スクランブル化のときと同一の方法を選択することが可能となる。図５１Ｂに示したシステムでは、ステートを使用して、偽装数値シードが生成される。偽装数値シードは、パッケージの送信側または受信側デバイスに送信され、スクランブル化アルゴリズムをテーブルから選択するのに使用される。あるいは、ステート自体が送信側または受信側デバイスに送信され、送信側または受信側デバイスに配置された隠し数字生成器で、スクランブル化／アンスクランブル化アルゴリズムの選択に使用される隠し数字を生成するのに使用される。図５１Ｅに示すこのような構成では、ステート（例えば時間）９２０は、隠し数字生成器９６０（Hidden Number Generator）により隠し数字９６１（Hidden Number：HN）を生成し、スクランブル化アルゴリズムリスト９６２からスクランブル化方法を選択するのに使用される。隠し数字９６１を使用してスクランブル化アルゴリズムテーブル９６２から選択されたアルゴリズムが使用して、スクランブル化操作９６３（Scrambling）により、スクランブル化されていないデータパケット９３０をスクランブル化データパケット９６４に変換する。図５１Ｅに示すように、ステート９２０は、隠し数字生成器９６０に、直接的に送信してもよいし、シード生成器９２１を経由して送信してもよい。
【０４７３】
スクランブル化アルゴリズムを選択するのに、数値シードのみを使用するのではなく、隠し数字を使用することの利点は、データストリームの分析により、すなわちスクランブル化データの繰り返しセットをそれに対応する数値シードと統計的に相関させることにより、スクランブル化テーブルがサイバー犯罪的に再構成される可能性を排除できることである。シードは、データストリーム中で可視的であり、それ故にスパイされることあるが、隠し数字生成器は、共有秘密に基づいて隠し数字「ＨＮ」を生成することができる。そのため、隠し数字ＨＮは、データストリーム中に存在せず、スパイまたはスニッフィングをされない。すなわち、隠し数字は、ネットワークを通じて送信されず、数値シードに基づきローカルで生成される。数値シードの目的は偽装であるため、隠し数字生成器でのこの数学的操作により、ハッカーを阻止するための追加的なセキュリティ層が得られる。
【０４７４】
アルゴリズムが選択されると、数値シードは、スクランブル化操作９６３のアルゴリズムにおける入力変数としても使用される。このように数値シードを２回使用することにより、ハッカーによる分析をさらに混乱させることができる。シードは、アルゴリズムを直接的に選択しないが、アルゴリズムと協働して、スクランブル化されたデータセグメントの最終的な配列を決定するからである。同様に、動的スクランブル化データパケットをアンスクランブル化するときは、シード９２９（またはステート（時間）９２０）を、スクランブル化を実施した通信ノード、デバイス、またはソフトウェアから、アンスクランブル化を実施するノードまたはデバイスに送信しなければならない。
【０４７５】
本発明によれば、シード生成器９２１のアルゴリズム、隠し数字生成器９６０、及びスクランブル化アルゴリズムリスト９６２は、ＤＭＺサーバ（後述する）に格納された「共有秘密」情報を意味し、データパケットの送信者または受信者のいずれにも知られていない。共有秘密は、事前に設定されており、送信される通信データパケットには関連せず、例えば、共有秘密の漏出防止を確実にするために様々な認証手続きが行われるコードのインストール時に設定される。後述するように、１セットの盗まれた共有秘密によって、ハッカーが全通信ネットワークにアクセスしたり、リアルタイム通信を妨害したりすることができないように、共有秘密は「ゾーン」に限定される。
【０４７６】
任意の共有秘密に加えて、スクランブル化アルゴリズムがデータパケットの通過間で変化する動的スクランブル化では、「ステート」に基づくシードが、データのスクランブル化またはアンスクランブル化に必要とされる。シードの生成に使用されるステートに関する曖昧さが存在せず、かつデータパケットの前回のスクランブル化のときに使用されたステートを次のノードに知らせる何らかの手段が存在すれば、シードに基づくこのステートは、時間、通信ノード番号、ネットワーク識別子、さらにはＧＰＳ位置などの任意の物理的パラメータを含むことができる。シード生成器でシードを生成するのに使用されるアルゴリズムは共有秘密の一部であるので、ハッカーは、シードの情報から、そのシードがどのステートに基づいているかを知ることはできない。シードは、それ自体をデータパケットに埋め込むことにより、別のチャンネルまたは経路を通じて送信することにより、またはそれらの組み合わせなどにより、ある通信ノードから次の通信ノードに送信される。例えば、シードの生成に使用されたステートは、最初は乱数であり、その後は、データパケットが通信ノードを通過するたびに固定された数だけ増加するカウンタを含む。各カウントは、特定のスクランブル化アルゴリズムを表す。
【０４７７】
動的スクランブル化の一実施形態では、スクランブル化の第１のステップでは、乱数が、使用されるスクランブル化方法を選択するために生成される。この乱数は、データパケットのヘッダー、またはデータパケットにおける命令及び制御のために確保された、スクランブル化の影響を受けない部分に埋め込まれる。データパケットが次のノードに到着すると、データパケットに埋め込まれた数字は、通信ノードにより読み取られ、入力データパケットをアンスクランブル化するための適切なアルゴリズムを選択するためにソフトウェアで使用される。数字、すなわち「カウント」は、その後、１または予め定められた整数ずつ増やされ、パケットは、この新しい数字に関連するアルゴリズムに従ってスクランブル化される。そして、新しいカウントが、出力データパケットに格納され、前のカウントを上書きする。次の通信ノードでは、この処理が繰り返される。
【０４７８】
スクランブル化アルゴリズムを選択するための本開示に係るカウンタベース方法の別の実施形態では、最初のスクランブル化アルゴリズムを選択するために、乱数が生成され、この乱数は、「共有秘密」として、特定のデータパケットを送信するのに使用される全ての通信ノードに送信される。カウント（例えば０から始まる）が、データパケットのヘッダー、またはデータパケットにおける命令及び制御のために確保された、スクランブル化の影響を受けない部分に埋め込まれる。データパケットはその後、次の通信ノードに送信される。パケットが次の通信ノードに到着すると、そのサーバはカウントの数値を読み取り、そのカウントに初期の乱数を追加し、データパケットの前回のスクランブル化に使用されたスクランブル化アルゴリズムを識別し、それに従ってパケットをアンスクランブル化する。カウントはその後、その後、１または予め定められた整数ずつ増やされ、そのカウントは再び、データパケットのヘッダー、またはデータパケットにおける命令及び制御のために確保された、スクランブル化の影響を受けない部分に埋め込まれ、前のカウントを上書きする。共有秘密としての役割を果たす乱数は、通信データパケットに埋め込まれて送信されない。データパケットが次の通信ノードに到着すると、サーバは、乱数（共有秘密）を、データパケットから抽出した更新されたカウントの数値に追加する。この新しい数字は、前の通信ノードで入力パケットをスクランブル化するのに使用されたスクランブル化アルゴリズムを一意的に識別する。この方法では、意味を持たないカウント数のみが、サイバーパイレーツによりデータパケットのスクランブル化されていない部分から傍受され得るが、サイバーパイレーツにはそのデータが何を意味するか分からない。
【０４７９】
別の方法では、パケットのステート及びパケットのスクランブル化に使用されたアルゴリズムを知らせるのに、隠し数字が使用される。隠し数字は、経時的に変化するステートまたはシードを、一般的に数値アルゴリズムを含む共有秘密と組み合わせ、通信ノード間では送信されず、それ故に中間者攻撃またはサイバーパイレーツからスニッフィングまたは見つかることがない秘密の数字、すなわち「隠し数字」を生成するのに使用される。この隠し数字はその後、スクランブル化に用いられるスクランブル化アルゴリズムを選択するのに使用される。ステートまたはシードは、隠し数字の計算に使用されるアルゴリズムを知らなければ意味を持たず、また、共有秘密アルゴリズムは、ネットワークまたはインターネットを介してアクセス不能なファイアウォールの背後に格納されるので、ネットワークトラヒックのモニタリングによってパターンが明らかになることはない。さらに複雑なことには、シードの位置により、共有秘密を表すことができる。一実施形態では、データパケットのスクランブル化されていない部分により伝送される、データスニッフィング可能な数字、例えば２７４８２５６７８２２５５２２１３は、その一部のみがシードを示す長い数字を含む。例えば、３番目から８番目までの数字がシードを示す場合、実際のシードは、２７４８２５６７８２２５５２２１３の全体の数字ではなく、一部の数字、すなわち４８２５６である。このシードは、その後、隠し数字を生成するために、共有秘密アルゴリズムと組み合わされる。そして、隠し数字は、ネットワークを通じて動的に変化するスクランブル化アルゴリズムを選択するのに使用される。
【０４８０】
また、本発明によれば、さらなる別の可能な動的スクランブル化アルゴリズムは、通信においてデータストリームに予測可能なノイズを意図的に導入する、ディザリングのプロセスを含む。ディザリングの１つの可能な方法は、パケットがネットワークを伝送されるに従って、２つの互いに隣接するデータセグメントの位置を繰り返し入れ替えること含む。図５１Ｆに示すように、動的ステート９９０に対応する時間ｔ０で、スクランブル化されていないデータパケット９３０はパケットスクランブル化操作９２６によりスクランブル化され、これにより、動的ステート９９１に対応する時間ｔ１で、スクランブル化データパケット１００１が生成される。サーバ９７１にホストされた通信ノードＮ１、１に入力されたデータパケット１００１は、１Ｄ、１Ｂ、１Ｅ、１Ｆ、１Ｃ、１Ａの順番に並んだ一連のデータセグメントを含む。データパケット１００１は、時間ｔ２で、通信ノードＮ１、１により変更され、データセグメント１Ｅ及び１Ｂの位置を入れ替えることによりデータセグメントの順番が変更される。この結果生成された、１Ｄ、１Ｅ、１Ｂ、１Ｆ、１Ｃ、１Ａの配列のデータセグメントを含むデータパケット１００２は、その後、時間ｔ３で、サーバ９７２にホストされた通信ノードＮ１、２で処理され、１Ｄ、１Ｂ、１Ｅ、１Ｆ、１Ｃ、１Ａの配列に戻される。一連の各ノードにおいて、データセグメント１Ｂ及び１Ｅの相対的位置が互いに入れ替えられ、すなわちディザリングされ、これにより、互いに連続する２つのデータパケットを互いに異なるものにする。これにより、時間ｔ１、ｔ３、ｔ５、及びｔ７では、元のスクランブル化された配列を有するデータパケット１００１、１００３、１００５、及び１００７を含み、時間ｔ２、ｔ４、及びｔ６では、データセグメントの配列が変更されたデータパケット１００２、１００４、及び１００６を含む。サーバ９７６にホストされた通信ノードＮ１、６から出力されたデータパケット１００７はその後、時間ｔｆで、パケットアンスクランブル化操作９２８によりアンスクランブル化され、それにより、元のデータセグメント配列を有するデータパケット９３０が復号される。
【０４８１】
本開示に係るセキュア動的通信ネットワーク及びプロトコルによる静的スクランブル化を、一連の通信サーバ１０１０−１０１５を横断するデータパケット９３０に適用した一例を図５２に示す。この例では、サーバ１０１０にホストされた通信ノードＮ０、０は、パケットスクランブル化操作９２６（Scramble）を含み、これにより、スクランブル化データパケット１００８が生成される。スクランブル化されたデータパケット１００８はその後、データセグメント配列をさらに変更することなくパケット交換通信ネットワークを横断する。そして、サーバ１０１５にホストされた通信ノードＮ０、ｆで、パケットアンスクランブル化操作９２８（Unscramble）を最終的に実施し、データパケットのデータセグメント配列をその元の配列に戻す。このデータ伝送の形態を、静的スクランブル化と称する。データパケットは、最初にスクランブル化された後は、最後のサーバに到着するまでは、変更されることなくネットワークを横断するからである。
【０４８２】
ネットワークを横断するデータは、スクランブル化されたにも関わらず、「プレーンテキスト」（Unchanged Plaintext）と呼ぶことができる。実データがデータパケット中に存在している、すなわち、データパケットがサイファテキストに暗号化されていないからである。対照的に、サイファテキストでは、元のデータを含む文字列は、スクランブル化の有無に関わらず、暗号化鍵を使用して意味を持たない文字列に変換され、復号鍵を使用しない限りは、その元のプレーンテキストの形態には復元されない。本開示に係るＳＤＮＰベース通信における暗号化の役割は、下記の「パケット暗号化」のセクションにおいてさらに説明する。
【０４８３】
図５３に示すように、ネットワークを通じた伝送中にデータパケットのデータセグメント配列を変更するためには、パケットの「再スクランブル化」が必要となる。このパケット再スクランブル化のプロセスは、スクランブル化データを新しいスクランブル化アルゴリズムにより再びスクランブル化する前に、スクランブル化データをそのアンスクランブル化状態に戻す。したがって、本明細書で使用される「再スクランブル化」という用語は、データパケットをアンスクランブル化した後に、一般的には別のスクランブル化アルゴリズムまたは方法により再びスクランブル化することを意味する。このアプローチにより、既にスクランブル化されているパッケージを再びスクランブル化することにより元のデータの復元に必要なデータセグメント配列が分からなくなることによって生じ得るデータ破損のリスクが避けられる。図示のように、パケットスクランブル化操作９２６により最初にスクランブル化された後に、スクランブル化データパケット１００８が「再スクランブル化」される。つまり、スクランブル化データパケット１００８は、まず、そのデータのスクランブル化に使用されたスクランブル化アルゴリズムと逆の処理を用いてアンスクランブル化操作９２８によりアンスクランブル化され、その後、スクランブル化操作９２６により、前回のスクランブル化操作９２６で使用されたものとは別のスクランブル化アルゴリズムを使用して、再びスクランブル化される。この結果生成された再スクランブル化データパケット１００９は、その前のスクランブル化データパケット１００８とは異なる。再スクランブル化操作１０１７は、アンスクランブル化とそれに続くスクランブル化との連続的な実施を含み、これを本明細書中では「ＵＳ再スクランブル化（US Rescrambling）」と称する（ＵＳは、アンスクランブル化・スクランブル化（unscrambling-scrambling）の略語である）。元のデータパケット９３０を復元するためには、最終的なパケットアンスクランブル化操作９２８は、データパケットの最後の再スクランブル化に使用されたアルゴリズムと逆の処理の実施を必要とする。
【０４８４】
本発明に係るＳＤＮＰベースパケット交換通信ネットワークにおけるＵＳ再スクランブル化の適用を図５４に示す。図示のように、データパケット９３０は、まず、サーバ１０１１におけるスクランブル化操作９２６によりスクランブル化され、その後、データパケットがパケット交換通信サーバ１０１２−１０１５のネットワークを横断するに従って、ＵＳ再スクランブル化操作１０１７により連続的に変更される。そして、サーバ１０１６で最終的なアンスクランブル化操作９２８が行われ、データパケット９３０のデータセグメント配列をその元の配列に復元する。再スクランブル化は、時間ｔ０からｔｆまでの互いに異なる時間で繰り返し行われるので、このネットワークを動的スクランブル化通信ネットワークと称する。実施においては、スクランブル化されていないデータパケット９３０は、サーバ１０１１にホストされた通信ノードＮ０、０に実装されたスクランブル化操作９２６によりスクランブル化される。時間ｔ２で、データパケットは、サーバ１０１２にホストされた通信ノードＮ０、１に実装されたＵＳ再スクランブル化操作１０１７によりスクランブル化データパケット１００８に変更される。各時間で同じ処理を繰り返して、データパケットは、残りの通信ノードを通じて伝送される。例えば、サーバ１０１３にホストされた通信ノードＮ０、２では、ＵＳ再スクランブル化操作１０１７により、再スクランブル化データパケット１００８は新しい再スクランブル化データパケット１００９に変換される。
【０４８５】
各再スクランブル化操作１０１７では、まず、通信ノードに入力されたパケットの前のステートに基づき（例えば、データパケット１００８が時間ｔ２に対応するステートに基づいてスクランブル化されている場合には、そのステートに基づいて）、そのパケットの前のスクランブル化を元に戻す（アンスクランブル化する）。そして、そのデータパケットを時間ｔ３に対応する新しいステートに基づいてスクランブル化して、再スクランブル化データパケット１００９を生成する。上述したように、実施するスクランブル化の決定に使用されるステートは、最後のスクランブル化がどのようにして行われたが曖昧ではない限り、シード、時間、または任意の物理的パラメータ（例えば、時間、通信ノードの数、ネットワーク識別子、さらにはＧＰＳ位置など）に基づく数を含み得る。したがって、サーバ１０１２にホストされた通信ノードＮ０、１に入力されたデータパケットのアンスクランブル化は、そのデータパケットのスクランブル化に使用された前のサーバのステート、すなわち、サーバ１０１１にホストされた通信ノードＮ０、０のステートに依存し、サーバ１０１３にホストされた通信ノードＮ０、２に入力されたデータパケットのアンスクランブル化は、サーバ１０１２にホストされた通信ノードＮ０、１のスクランブル化のときステートに依存し、サーバ１０１４にホストされた通信ノードＮ０、３に入力されたデータパケットのアンスクランブル化は、サーバ１０３４にホストされた通信ノードＮ０、２のスクランブル化のときステートに依存する（以下同様）。通信ネットワークにおける最後の通信ノード、この例では、サーバ１０１６にホストされた通信ノードＮ０、ｆは、ＵＳ再スクランブル化を行わず、その代わりに、アンスクランブル化操作９２８のみを行い、それにより、データパケットのデータセグメント配列を、その元のスクランブル化されていない配列に復元する。
【０４８６】
本発明によれば、データの静的及び動的スクランブル化により、スクランブル化されていないデータを判読不能な無意味な（意味を持たない）ものに変更し、音声を認識不能なノイズに並べ換え、テキストを無意味なものに並べ替え、画像を真っ白な画像（video snow）に変換し、コードを復元不能にスクランブル化することができる。スクランブル化だけによって、高いセキュリティを提供することができる。そして、本開示に係るＳＤＮＰ法では、スクランブル化は、ハッキング、サイバー攻撃、サイバーパイラシー、及び中間者攻撃から逃れるセキュア通信（セキュリティが確保された通信）を提供及び確保することができる唯一の要素である。
【０４８７】
［パケット暗号化］
本発明によれば、パケット交換ネットワークを介したセキュア通信は、ハッキング防止及びセグメント確保のためのいくつかの要素に依存し、そのうちの１つはＳＤＮＰ暗号化を含む。上述したように、「隠す」、「秘密にする」、「見えなくする」を意味するギリシャ語に由来する暗号化は、一般的に「プレーンテキスト」と呼ばれる通常の情報またはデータを、秘密情報を使用しない限りは判読することはできない判読不能なフォーマットの「サイファテキスト」に変換する手段を表す。最近の通信では、この秘密情報は、一般的に、データの暗号化及び復号に使用される１またはそれ以上の「鍵」を共有することを含む。この鍵は、一般的に、アルゴリズム的に生成された擬似乱数を含む。「Cryptonomicon」などの様々な暗号化技術のメリット及びデメリットについて論じた様々な文献または文章としては、現在、例えば、「Neal Stephenson (C) 1999」、「The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography、by Simon Singh (C) 1999」、「Practical Cryptography、by Niels Ferguson (C) 2013」、及び「Cryptanalysis: A Study of Ciphers and Their Solution、first published in 1939」などが入手可能である。
【０４８８】
暗号化または暗号のコンセプトは古くからあり当業者には公知であるが、本開示に係るセキュア動的ネットワーク及びプロトコルにおける暗号化法の応用はユニークなものであり、クライアント自体の暗号化から独立しており、ネットワークアーキテクチャ自体に対するエンドツーエンド暗号化（end-to-end encryption）及びシングルホップノードツーノード動的暗号化（single-hop node-to-node dynamic encryption）の両方を容易にする。ＳＤＮＰ通信は、暗号をどれだけ複雑にしても、十分な時間さえあれば、あらゆる静的暗号化ファイルまたはメッセージは最終的には破られてその情報が盗まれる、という基本的教訓に基づいて設計されている。この仮定は実際には不正確であるが、この仮定を証明または反証する必要はない。なぜならば、特定の暗号化法が失敗するまで待つと、許容不能な及び取り戻せない結果的被害が生じるからである。
【０４８９】
この代わりに、ＳＤＮＰ通信は、全ての暗号化ファイルは限られた「保存可能期間」を有するという前提に基づいている。これは、暗号化されたデータは有限の期間においてのみセキュリティが確保されており、秘密データは、所定の間隔で、理想的には最新式コンピュータで暗号を破るのに必要とされる時間の最も正確な見積もりよりもはるかに高い頻度で、動的に再暗号化しなければならないことを暗喩的に意味する。例えば、暗号処理装置の大きなサーバファームが所定の暗号を１年で破ることができると暗号学者により推測される場合は、ＳＤＮＰ通信では、データパケットを１秒毎または１００ミリ秒毎、すなわち暗号を破るための最高の技術よりも何桁も短い間隔で再暗号化する。したがって、ＳＤＮＰ暗号化は必然的に、動的すなわち経時変化的であり、また空間的にも、すなわちパケット交換ネットワークまたは地図上における通信ノードの位置に依存して変化し得る。このため、「再暗号化」または「再暗号化法」という用語は、データパケットを復元し、その後に、別の暗号化アルゴリズムまたは方法を用いて再び暗号化することを指す。
【０４９０】
このため、ＳＤＮＰ暗号化は、データを、暗号化されていないプレーンテキストからサイファテキストに繰り返し及び頻繁に変換し、情報を判読不能で無意味なものに改変することを含む。もし、所定のパケットのデータ暗号化が奇跡的に破られたとしても、ＳＤＮＰ動的暗号化方法を用いることにより、次のデータパケットでは全く異なる暗号化鍵または暗号が使用されるので、その暗号を破るためには、全く新しい労力が必要となる。個別に暗号化された各データパケットに含まれるコンテンツを制限することにより、不正アクセスのダメージの可能性を減らすことができる。破られたデータパケットに含まれるデータファイルの大きさを、サイバーパイレーツにとって意味をなすまたは有用となるには小さすぎるようにすることができるからである。さらに、動的暗号化を上述したＳＤＮＰスクランブル化方法と組み合わせることにより、通信のセキュリティを大幅に高めることができる。暗号化されていない形態でも、傍受されたデータファイルには、データセグメントの順番が無意味で判読不能となるようにスクランブル化されたデータ、音声、または映像の小さい断片しか含まれていない。
【０４９１】
本開示によれば、ＳＤＮＰ暗号化は、動的であり、かつステート依存性である。図５５Ａに示すように、プレーンテキスト９３０（Plaintext）を含む暗号化されていないデータパケットは、暗号化操作１０２０（Encryption Process）により処理され、これにより、サイファテキスト１０２４及び１０２５（Ciphertext）を含む暗号化データパケットが生成される。サイファテキスト１０２４については、プレーンテキスト９３０のデータパケットは全体として暗号化され、データセグメント１Ａ−１Ｆは、単一のデータファイルとして扱われる。一方、サイファテキスト１０２５については、プレーンテキスト９３０のデータセグメント１Ａ−１Ｆは個別に暗号化され、他のデータセグメントと混合されない。プレーンテキストの第１のデータセグメント１Ａは、それに対応する第１のサイファテキストセグメント（説明目的のために図示した「７＄」で始まる長い文字列であり、図示しない長い文字列または数字を含む）に暗号化される。同様に、プレーンテキストの第２のデータセグメント１Ｂは、第２のサイファテキストセグメント（説明目的のために図示した「＊＾」で始まる長い文字列）に暗号化される。文字「７＄」及び「＊＾」は、記号、数字、アルファベットなどの無意味な文字列の先頭を意味しており、プレーンテキストソースの特定のデータまたは暗号化された文字列の長さについて限定または暗示するものではない。
【０４９２】
暗号化操作１０２０（Encryption Process）は、利用可能な任意のアルゴリズム、暗号化方式、または暗号化方法を用いることができる。暗号化アルゴリズムは静的な方程式を示すが、一実施形態では、暗号化操作は、暗号化を行うときに、例えば時間９２０などの動的変数または「ステート」を使用する。また、暗号鍵生成器１０２１を使用して、暗号化を実施したときの時間９２０などのステートに依存する暗号化鍵（Ｅ鍵）１０２２を生成する。例えば、暗号化の日付及び時間が、ハッカー等が暗号化アルゴリズムを見つけた場合でも再生成することはできないＥ鍵を生成するための数値シードとして使用される。時間９２０または他の「ステート」はまた、利用可能な暗号化アルゴリズムのリストである暗号化アルゴリズムリスト１０２３（Encryption Algorithms）から特定のアルゴリズムを選択するのに使用される。データフロー図では、図示の便宜上、このパケット暗号化操作及びシーケンスは、暗号化操作１０２６（Encryption）として概略的または記号的に表示する。本開示を通じて、セキュア及び暗号化データは、パドロック（南京錠）によっても記号的に表される。特に、時計の文字盤が上側に配置されたパドロックは、セキュア送信メカニズム、例えば、特定の時間間隔以内または特定の時間までに受信しなかった場合には暗号化ファイルは自己破壊され永久に失われることを示す。
【０４９３】
図５５Ｂは、暗号化操作１０２０と逆の操作である復号操作２０３１を示す。この復号操作２０３１では、サイファテキスト１０２４（Ciphertext）の生成に使用されたステート（時間または他のステート）９２０を再使用し、復号鍵生成器１０２１により生成された復号鍵（Ｄ鍵）１０３０と協働して暗号化を解除し、すなわちファイルを復号し、元のプレーンテキストデータパケット９９０（Plaintext）を含む暗号化されていないデータを生成する。復号操作１０３１（Decryption Process）では、パケットの暗号化のときに使用されたものと同一のステート（時間）９２０を使用して、暗号化のときに暗号化アルゴリズムリスト１０２３から選択されたものと同一の暗号化アルゴリズムを再び選択して使用する。暗号化アルゴリズムリスト１０２３では「暗号化」という用語が用いられているが、このアルゴリズムテーブルは、「復号」の実施に必要とされる、暗号化と逆の操作を識別して選択するのに使用される。すなわち、暗号化アルゴリズムリスト１０２３は、データパケットの暗号化及び復号の両方に必要な情報を含んでいる。この２つの操作は、互いに逆の順番で実施される同一のステップを含むので、このテーブル１０２３は、「暗号化／復号」アルゴリズムテーブル１０２３とも称することもできる。しかしながら、明確にするために、このテーブルは、暗号化の機能についてのみ称し、その反対の機能（復号）については称さないものとする。
【０４９４】
復号操作１０３１の実施のために選択された暗号化アルゴリズムが、パケット暗号化操作１０２０に使用されたアルゴリズムと逆のものと一致しない場合、ステート（時間）９２０が、暗号化のときの時間と一致しない場合、または、Ｄ鍵１０３０が、暗号化のときに使用されたＥ鍵１０２２に対して予め定められた数値関係を有さない場合、復号操作１０３１は、暗号化されていない元のデータ９９０の復元に失敗し、パケットデータは失われることとなる。データフロー図では、図示の便宜上、このパケット復号操作及びシーケンスは、暗号化操作１０２６（Encryption）として概略的または記号的に表示する。
【０４９５】
上述したように、暗号化及び一般的な暗号化アルゴリズムにおける暗号化鍵及び復号鍵の使用に関する知識、とりわけ対称公開鍵暗号化、ＲＳＡ暗号化、ＡＥＳ２５６暗号化などは、当業者には一般的であり公知である。しかしながら、このような公知の暗号化方法を本開示に係るＳＤＮＰ通信システムへの適用にすると、本開示に係るＳＤＮＰ通信に特有の隠された情報、共有秘密、及び時間依存性の動的変数及びステートによって、ハッキングまたは暗号解読は困難になる。
【０４９６】
したがって、サイバーパイレーツがロバストな暗号化方法を最終的に破ることができるコンピュータ処理能力を有しているという、あり得そうにない場合でも、サイバーパイレーツは、復号操作の実施に必要な非公開または共有秘密としてＳＤＮＰネットワークに埋め込まれたいくつかの情報を欠いており、また、暗号が変更される前に、暗号を１秒足らずの間に破らなければならない。さらに、本開示に係るＳＤＮＰネットワークを横断する全てのデータパケットは、固有の鍵及び動的ステートに基づき決定される互いに異なる暗号化方法を使用する。欠けた情報、動的ステート、及び任意のパケットに含まれた限定された情報コンテンツの組み合わせにより、任意のデータパケットから盗まれた意味も持つデータを、サイバーパイレーツにとって困難で報われないものにする。
【０４９７】
文章、動画ストリーム、または音声会話の全体を傍受して、コヒーレントデータシーケンスを再構成するためには、サイバー攻撃者は、１つだけではなく数千もの一連のＳＤＮＰパケットを連続的に破って復号しなければならない。動的な暗号化を、上述したデータパケットスクランブル化に関する方法と組み合わせることにより、一連のＳＤＮＰパケットを連続的にハッキングするという困難な作業がさらに困難になる。図５６に示すように、暗号化及びスクランブル化されたデータパケット１０２４（Ciphertext of Scrambled Data Packet）は、スクランブル化操作９２６と暗号化操作１０２６との連続的な組み合わせにより生成される。まず、スクランブル化操作９２６によりスクランブル化されていないプレーンテキストデータパケット９９０（Un-scrambled Plaintext）をスクランブル化プレーンテキストデータパケット１００８（Scrambled Plaintext）に変換し、その後に、暗号化操作１０２６によりスクランブル化データパケットのサイファテキスト１０２４に変換する。スクランブル化パッケージの暗号化を繰り返すためには、上記と逆の操作を上記と逆の順番で行う。まず、復号操作１０３２によりスクランブル化プレーンテキストデータパケット１０３５（Scrambled Plaintext）に復号し、その後に、アンスクランブル化操作９２８によりスクランブル化されていないプレーンテキストデータパケット９９０（Unscrambled Plaintext）を復元する。
【０４９８】
図示のように、スクランブル化及び暗号化は、セキュア通信を実現するための相補的な技術を表す。ネットワークを横断する暗号化されていないスクランブル化データは、データパケット内に実データが存在するので、すなわちパケットはサイファテキストに暗号化されていないので、「プレーンテキスト」と呼ばれる。暗号化データパケット、すなわちサイファテキストは、暗号化鍵を使用して無意味な文字列に変換され、対応する復号鍵を使用しない限りは元のプレーンテキストに復元することはできない、スクランブル化されたまたはスクランブル化されていない文字列を含む。使用されるアルゴリズムに依存して、暗号化鍵及び復号鍵は、同一の鍵、または予め定められた数学的関係で数学的に関連する別個の鍵であり得る。したがって、スクランブル化及び暗号化は、ＳＤＮＰ通信のための本発明に係るセキュア通信を実現するための相補的な技術を表す。
【０４９９】
スクランブル化及び暗号化の２つの方法は、暗号化されたスクランブル化データパケットから元のデータパケットを復元するときの順番が暗号化のときと逆の順番で行われることを除いて、互いに組み合わせて使用する場合でも別個のものとして見なすことができる。例えば、データパケット９９０をスクランブル化操作９２６によりスクランブル化した後に暗号化操作１０２６により暗号化した場合は、元のデータパケットに復元するためには、暗号化及びスクランブル化されたデータパケット１０２４を復号操作１０３２により復号した後にアンスクランブル化操作９２８によりアンスクランブル化する。数学的には、スクランブル化操作Ｆにより、ビットまたは文字の列を、それに対応するスクランブル化バーションにスクランブル化し、アンスクランブル化操作Ｆ−１により、スクランブル化を解除することは、下記のように表される。
Ｆ−１［Ｆ（Ａ）］＝Ａ
同様に、暗号化操作Ｇにより、一連のプレーンテキストをそれに対応するサイファテキストに暗号化し、復号操作Ｇ−１により、暗号化を解除することは、下記のように表される。
Ｇ−１［Ｇ（Ａ）］＝Ａ
したがって、
Ｆ−１｛Ｇ−１［Ｇ（Ｆ（Ａ））］｝＝Ａ
と表すことができる。各操作の順番が逆の順番で行われ、具体的には、暗号化及びスクランブル化されたパケット［Ｇ（Ｆ（Ａ））］を復号［Ｇ−１］することにより、スクランブル化されたプレーンテキストデータパケットＦ（Ａ）が復元され、その後、スクランブル化されたプレーンテキストパケットＦ（Ａ）のアンスクランブル化操作Ｆ−１により、元のデータパケットＡが復元されるからである。
【０５００】
線形的方法を用いると仮定すると、各操作の順番は可逆的である。例えば、データパケットを暗号化した後にスクランブル化した場合は、元のデータパケットに復元するためには、スクランブル化サイファテキストをアンスクランブル化した後に複合される。すなわち、下記のように表される。
Ｇ−１｛Ｆ−１［Ｆ（Ｇ（Ａ））］｝＝Ａ
各操作の順番を変更すると、元のデータパケットを復元することはできない。つまり、暗号化した後にスクランブル化したデータパケットを、アンスクランブル化する前に復号すると、元のデータパケットを復元することはできない。すなわち、下記のように表される。
Ｆ−１｛Ｇ−１［Ｆ（Ｇ（Ａ））］｝≠Ａ
同様に、スクランブル化した後に暗号化したパケットを、復号する前にアンスクランブル化すると、元のデータパケットを復元することはできない。すなわち、下記のように表される。
Ｇ−１｛Ｆ−１［Ｇ（Ｆ（Ａ））］｝≠Ａ
【０５０１】
要約すると、プレーンテキストパケットを暗号化の前にスクランブル化した場合は、アンスクランブル化の前に復号しなければならない。また、プレーンテキストパケットをスクランブル化の前に暗号化した場合は、復号の前にアンスクランブル化しなければならない。
【０５０２】
スクランブル化及び暗号化はどの順番で行ってもよいが、本発明に係るＳＤＮＰ方法の一実施形態では、暗号化及び復号は、ネットワーク転送中にスクランブル化よりも頻繁に行われる。このため、図５６に示すように、暗号化は、スクランブル化の後に行うべきであり、復号はアンスクランブル化の後に行うべきである。便宜上、パケットスクランブル化操作９２６と、それに続く暗号化操作１０２６との組み合わせを、スクランブル化・暗号化操作１０４１（Scramble & Encypt）と定義する。また、それと逆の、復号操作１０３２と、それに続くパケットアンスクランブル化操作９２８との組み合わせを、復号・アンスクランブル化操作１０４２（Decrypt & Unscramble）と定義する。これらの組み合わされた操作は、本発明に係る静的及び動的ＳＤＮＰ通信に用いられる。
【０５０３】
図５７は、プレーンテキスト９９０が、パケット交換通信ネットワークの一連の通信ノード１０１１−１０１６を、ノード間でまたは経時的に変更されないサイファテキストデータパケット１０４０で表される、静的に暗号化及びスクランブル化された形態で横断するＳＤＮＰ通信を示す。図示のように、第１のサーバ１０１１の通信ノードＮ０、０では、スクランブル化・暗号化操作１０４１により、元のプレーンテキストデータパケット９９０を、暗号化及びスクランブル化されたデータであるサイファテキストデータパケット１０４０（Ciphertext of Scrambled Data）に変換する。時間ｔ１及びそれに対応するステート９９１で変換された後は、ネットワークを横断して最終的にサーバ１０１６の通信ノードＮ０、ｆに到着するまでは変更されず、暗号化及びスクランブル化されたデータパケットは静的に保たれる。そして、通信ノードＮ０、ｆに到着したデータパケットは、時間ｔｆで、復号・アンスクランブル化操作１０４２により元のプレーンテキストデータパケット９９０の形態に復元される。スクランブル化及び暗号化の組み合わせはセキュリティを大幅に向上させるが、データパケットが経時的に及びネットワーク転送中に変更されないので、動的なセキュリティを表さない。
【０５０４】
静的スクランブル化暗号化を用いて、任意の実装においてセキュリティを高める方法の１つは、各データパケットを、別個のスクランブル化及び／または暗号化方法（例えば、各データパケットが通信ネットワークに入るときの時間ｔ１でのステート、シード、及び／または鍵の変更を含む）を用いてスクランブル化及び／または暗号化を実施することである。
【０５０５】
しかしながら、よりロバストな別な方法は、データパケットがネットワークを横断するときに、データパケットの暗号化またはスクランブル化、あるいはその両方を動的に変更することを含む。ＳＤＮＰの完全な動的バージョンの実現に必要なデータ処理を容易にするためには、パケット交換通信ネットワークの各通信ノードを通過する各パケットを「再スクランブル化（すなわち、アンスクランブル化及びそれに続くスクランブル化）」及び「再暗号化（すなわち、復号及びそれに続く暗号化）」するために、上記に定義した処理を組み合わせる必要がある。本明細書において使用される「再パケット」または「再パケット化」という用語は、パケットがアンスクランブル化の前に復号されるか、または復号された後にアンスクランブル化されるかに関わらず、「再スクランブル化」及び「再暗号化」の組み合わせを指すのに用いられる。いずれの場合でも、あるノードでのアンスクランブル化操作及び復号操作は、その前のノードでパケットをスクランブル化及び暗号化したときの順番と逆の順番で行わなければならない。すなわち、前のノードでパケットをスクランブル化した後に暗号化した場合は、現在のノードでは、パケットを復号した後にアンスクランブル化しなければならない。一般的に、パケットは、現在のノードから出力されるときに、スクランブル化した後に暗号化される。
【０５０６】
通信ノードでの「再パケット化」操作を図５８に示す。通信ノードに入力されたサイファテキストデータパケット１０４０は、まず、復号操作１０３２により復号され、その後に、アンスクランブル化操作９２８によりアンスクランブル化される。これにより、元のパケットのコンテンツを含む、スクランブル化されていないプレーンテキストデータパケット９９０（Unscrambled Plaintext (content)）が復元される。パケット内の任意の情報を検査、解析、分割、またはリダイレクトする必要がある場合、スクランブル化されていないプレーンテキストファイルは、そのような操作を行うのに最適なフォーマットである。そして、プレーンテキストデータパケット９９０は、スクランブル化操作９２６により再びスクランブル化された後、暗号化操作１０２６により再び暗号化され、これにより、新しいスクランブル化サイファテキストデータパケット１０４３が生成される。通信ノードに入力されたサイファテキストデータパケット１０４０の再パケット化操作では、復号、アンスクランブル化、スクランブル化、暗号化が連続的に行われるので、その頭文字を並べて、本発明に係る技術をＤＵＳＥ再パケット化操作１０４５（DUSE Re-Packet）と称する。動的なセキュアネットワークでは、復号操作１０３２及びアンスクランブル化操作９２８を実施するために使用されるステート（時間）、復号鍵、及びシードは、スクランブル化操作９２６及び暗号化操作１０２６を実施するために使用されるステート（時間）、暗号鍵、及びシードとは異なることが好ましい。
【０５０７】
上述したＤＵＳＥ再パケット化操作１０４５は、通信ノードに、ソフトウェア、ファームウェア、またはハードウェアとして実装される。一般的に、上記の操作の実装にはソフトウェアを用いることが好ましい。ソフトウェアコードは、経時的にアップデートまたは修正することができるからである。動的ネットワークにおけるＤＵＳＥ再パケット化操作１０４５を図５９に示す。図示のように、サーバ１０１１にホストされた通信ノードＮ０、０ではスクランブル化・暗号化操作１０４１が実施され、サーバ１０１６にホストされた通信ノードＮ０、ｆで復号・アンスクランブル化操作１０４２が実施される。そして、これらの間に位置する、サーバ１０１２−１０１５にホストされた通信ノードＮ０、１−Ｎ０、４では、ＤＵＳＥ再パケット化操作１０４５がそれぞれ実施される。実施においては、プレーンテキストデータパケット９９０は、通信ノードＮ０、０でのスクランブル化・暗号化操作１０４１により処理された後、通信ノードＮ０、０でのＤＵＳＥ再パケット化操作１０４５により処理され、これにより、復号、パケットアンスクランブル化、スクランブル化、及び暗号化がその順番に行われたパケットを表す再パケット化・スクランブル化プレーンテキスト１００８（Re-packeted Plaintext）が生成される。スクランブル化されたプレーンテキスト１００８はその後、時間ｔ２及びそれに対応するステート９９２で暗号化され、これにより、サイファテキスト１０４０が生成される。このプロセスは、通信ノードＮ０、２及び通信ノードＮ０、３で再び繰り返され、そのたびに、再パケット化スクランブル化プレーンテキスト１００９（Re-packeted Plaintext）が生成される。再パケット化スクランブル化プレーンテキスト１００９はその後、時間ｔ４及びそれに対応するステート９９４で暗号化され、これにより、サイファテキスト１０４８（Re-packeted Ciphertext）が生成される。そして最終的に、通信ノードＮ０、ｆで復号・アンスクランブル化操作１０４２が行われ、時間ｔｆで、スクランブル化されていないプレーンテキスト９９０が復元される。
【０５０８】
［パケットの混合及び分割］
本開示に係る動的なセキュア通信ネットワーク及びプロトコルの別のキー要素は、データパケットをサブパケットに分割して複数のルートに送信し、サブパケットを組み合わせて再構成し、完全なデータパケットを再構成する機能である。データパケット１０５４を分割操作１０５１（Splitting (Un-mixing) Process）により分割するプロセスを図６０Ａに示す。分割操作１０５１は、アルゴリズム的なパース操作１０５２（Parse）をジャンク操作１０５３（Junk）と組み合わせた操作であり、非データの「ジャンク」データセグメントを挿入または除去する機能を有する。ヒトゲノム内に存在するジャンクＤＮＡと同様に、ジャンクデータセグメントは、ジャンク操作１０５３により、データパケットの長さを延長または調節するために挿入され、また必要に応じて除去される。ジャンク操作１０５３は、パケットを満たすデータの量が不十分である場合に、とりわけ重要である。また、データパケットに挿入されたジャンクデータセグメントの存在は、サイバーパイレーツが実データをノイズと区別することを困難にする。本明細書で使用される「ジャンク」パケットまたはデータセグメントは、意味を持たないデータ（ビット）だけで構成されるパケットまたはデータセグメントである。このようなジャンクビットをデータパケットのストリーム中に導入することにより、実データを多数の無意味なビットの中に埋没させることができる。
【０５０９】
パース操作１０５２の目的は、各構成要素を処理するために、データパケット１０５４をより小さなデータパケット（例えば、サブパケット１０５５及び１０５６）に分割することである。データパケット１０５４をより小さな部分に分割することにより、例えば、マルチパス伝送をサポートすること、すなわちデータパケットを複数の別個の経路を通じて伝送すること、及び別個の暗号化方法を用いたサブパケットの個別の暗号化を容易にすることなどの、固有の利点を提供することができる。
【０５１０】
分割操作は、任意のアルゴリズム、数値的方法、またはパース（parsing）方法を用いることができる。アルゴリズムは、静的方程式で表すか、または、動的変数または数値シードまたは「ステート」、例えば入力データパケット１０５４が多数のサブパケットにより最初に形成されたときの時間９２０、及びシード生成器９２１で生成された数値シード９２９（このシードもデータパケットの生成時の時間９２０などのステートに依存する）を含むことができる。例えば、各データが、単調増加する固有の数に変換される場合、各シード９２９は固有のものとなる。時間９２０及びシード９２９は、利用可能な方法のリスト、すなわち混合アルゴリズム１０５０（Mixing Algorithms）から選択される特定のアルゴリズムを識別するのに使用される。パケット分割操作は、混合操作と逆の処理を含み、混合操作で特定のパケットの生成に使用されたアルゴリズムと正反対の順番で実行されるアルゴリズムを使用する。つまり、実施された操作は全て元に戻すことができるが、全てを１つのステップで行う必要はない。例えば、スクランブル化及び暗号化されたデータパケットは、復号しても、スクランブル化が保たれるようにしてもよい。分割操作１０５１で処理することにより、非分割データパケット１０５４は、複数のデータパケット、例えば固定長パケット１０５５及び１０５６に変換される。この操作をアルゴリズム的に実施するのに、パース操作１０５２が用いられる。データフロー図では、図示の便宜上、パース操作１０５２及びジャンク操作１０５３を含むこのパケット分割操作１０５１は、分割操作１０５７として概略的または記号的に表示する。
【０５１１】
したがって、本明細書で使用される「分割」という用語は、１つのパケットを２以上のパケットすなわちサブパケットに分割するパースを含む。また、「分割」という用語は、「パースされた」パケットまたはサブパケットにジャンクパケットまたはサブパケットを挿入すること、または、「パースされた」パケットまたはサブパケットからジャンクパケットまたはサブパケットを除去することを含む。
【０５１２】
分割操作と逆の操作であり、複数のパケット１０５５及び１０５６を混合して混合パケット１０５４を生成するパケット混合操作１０６０（Mixing Process）を図６０Ｂに示す。パケット分割操作と同様に、このパケット混合操作は、任意のアルゴリズム、数値的方法、または混合方法を用いることができる。アルゴリズムは、静的方程式で表すか、または、動的変数または数値シードまたは「ステート」、例えば入力データパケット１０５５及び１０５６が生成されたときの条件を特定するのに使用される時間９２０を含むことができる。データパケットの生成に使用される混合操作は、シード生成器９２１で生成された数値シード９２９（このシードも時間９２０などのステートに依存する）を使用することができる。時間９２０及びシード９２９は、利用可能な混合方法のリスト、すなわち混合アルゴリズム１０５０から選択される特定の混合アルゴリズムを識別するのに使用される。データフロー図では、図示の便宜上、このパケット混合操作１０６０を、混合操作１０６１として概略的または記号的に表示する。
【０５１３】
本発明によれば、パケット混合及びパケット分割は、可能性がある様々なアルゴリズムのうちの任意のものを用いて行うことができる。図６１Ａは、可能性がある３つの混合技術、連結方法（Concatenation）、交互配置方法（Interleaved）、アルゴリズム的方法（Algorithmic）を示す。連結方法では、データパケット１０５６のデータセグメント配列を、データパケット１０５５の末端に追加して、混合パケット１０５４を生成する。交互配置方法では、データパケット１０５５及び１０５６のデータセグメントが交互に、すなわち、１Ａ、２Ａ、１Ｂ、２Ｂの順番で互い違いとなるように混合して、混合パケット１０５６を生成する。パケット混合に用いられる他の方法は、アルゴリズム的方法である。図示した例では、アルゴリズムは、交互的な鏡映対称（インターリーブ鏡映対称）を含み、データセグメントを、混合パケット１０６６の前半部分では、１Ａ、２Ａ、１Ｂ、２Ｂ、１Ｃ、２Ｃの順番で配置し、混合パケット１０６６の後半部分では、前半部分とは逆の順番で、すなわち２Ｄ、１Ｄ、２Ｅ、１Ｅ、２Ｆ、１Ｆの順番で配置する。
【０５１４】
本発明に係る連結方法を用いたパケット混合を適用した例を図６１Ｂに示す。図示のように、時間ｔ０では、非混合データパケット１０５５及び１０５６が、サーバ１０１１にホストされた通信ノードＮ０，０で、混合操作１０６１（Mix）により混合される。これにより、シーケンス１Ａ−１Ｆと２Ａ−２Ｆとをその順番で含むデータパケット１０６６（Unchanged plaintext）が生成される。生成されたデータパケット１０６６は、その後、サーバ１０１１−１０１６のネットワークを通じて伝送され、サーバ１０１６にホストされた通信ノードＮ０、ｆに到着するまでは全ての時間９９８に渡って、その構成要素が静的である変更されないプレーンテキストを含む。そして、通信ノードＮ０、ｆでは、パケット分割操作１０５７（Un-mix）により、混合データパケット１０６６の構成要素を元のデータパケット１０５５及び１０５６に分割する。
【０５１５】
同様に、本発明に係る交互配置方法を用いたパケット混合を適用した例を図６１Ｃに示す。上記の例と同様に、混合パケット１０６６は、１Ａ、１Ｂ、２Ａ、２Ｂ、３Ａ、３Ｂのデータセグメント配列を有する。混合されたパケットは上記の連結方法の例とは異なるが、パケットデータ分割操作１０５７により、元の非混合データパケット１０５５、１０５６を復元することが可能である。時間ｔ０でのパケット通信の前に、混合アルゴリズムの情報、及び混合操作に使用された時間、ステート、またはシードが、データパケット１０６６の一部として、サーバ１０１６にホストされた通信ノードＮ０、ｆに伝送されるからである。
【０５１６】
［スクランブル化混合］
データパケットをデータセグメントの様々な組み合わせに分割及び混合する方法を用いる本開示に係るパケット通信方法は、本発明によれば、パケットスクランブル化と様々な方法で組み合わせることができる。図６２Ａでは、スクランブル化されていないプレーンテキストデータパケット１０５５、１０５６（Input 1, Input 2）は混合操作１０６１により混合され、これにより、混合されたデータパケット１０６７、図示した例では交互配置されたプレーンテキスト（Interleaved Plaintext）が生成される。混合後、データパケット１０６７は、スクランブル化操作９２６によりスクランブル化され、これにより、スクランブル化されたプレーンテキストデータパケット１０６８（Output）が生成される。パケット混合操作１０６１とパケットスクランブル化操作９２６とを組み合わせたシーケンスにより、混合とそれに続くスクランブル化とを含む混合・スクランブル化操作１０７０が形成される。
【０５１７】
本発明に係る別の実施形態では、図６２Ｂに示すように、個々のデータパケットは、まずスクランブル化され、その後に混合される。この実施形態では、アンスクランブル化プレーンテキストデータパケット１０５５及び１０５６は、まず、別個のスクランブル化操作９２６により別個にスクランブル化され、これにより、アンスクランブル化パケット１０５５及び１０５６に対応する、スクランブル化プレーンテキストデータパケット１００８及び１００９（Scrambled Plaintext）が生成される。これらのスクランブル化パケットは、その後、混合操作１０６１により混合され、これにより、スクランブル化混合データパケット１０６９が生成される。
【０５１８】
本開示に係る上記の混合操作及びスクランブル化操作の組み合わせは、静的または動的ＳＤＮＰ通信ネットワークに組み込むことができる。図６３では、プレーンテキストデータパケット１０５５及び１０５６は、サーバ１０１１にホストされた通信ノードＮ０，０に入力される。そして、通信ノードＮ０，０では、混合操作１０６１とそれに続くスクランブル化操作９２６とを含む混合・スクランブル化操作１０７０（Mix & Scramble）が行われ、これにより、混合及びスクランブル化されたパケット１０６８（Unchanged plaintext）が生成される。生成されたパケットコンテンツは、混合及びスクランブル化されたパケット１０６８がサーバ１０１１から１０１６に伝送されるまで、全ての時間ｔｎで維持される。サーバ１０１６にホストされた最終的な通信ノードＮ０，ｆでは、アンスクランブル化操作９２８及び分割操作１０５７がその順番で実施される。このアンスクランブル化操作９２８及び分割操作１０５７は、アンスクランブル化・分割操作１０４４（Unscramble & Split）として表される。
【０５１９】
図６４は、ＳＤＮＰ通信ネットワークにおける動的なスクランブル化・混合操作の一例を示す。上述の静的なＳＤＮＰの例と同様に、プレーンテキストデータパケット１０５５及び１０５６は、サーバ１０１１にホストされた通信ノードＮ０，０に入力される。通信ノードＮ０，０では、混合操作１０６１とそれに続くスクランブル化操作９２６とを含む混合・スクランブル化操作１０７０が実施される。これにより生成された混合スクランブル化パケットは、サーバ１０１２でＵＳ再スクランブル化操作１０１７（US Rescrambling）を施され、これにより、時間ｔ２及びそれに対応するステート９９２で、混合スクランブル化パケット１０７２（Rescrambed plaintext）が生成される。その後、サーバ１０１３及び１０１４でＵＳ再スクランブル化操作１０１７が実施され、データパケットのアンスクランブル化及び再スクランブル化が繰り返される。ＵＳ再スクランブル化操作１０１７は、サーバ１０１５にホストされた通信ノードＮ０，４でも繰り返され、これにより、時間ｔ５及びそれに対応するステート９９５で、新しい再スクランブル化データパケット１０７３が生成される。そして、サーバ１０１６にホストされた最終的な通信ノードＮ０，ｆでアンスクランブル化・分割操作１０４４（Unscramble & Un-mix）が実施され、これにより、パケット１０５５及び１０５６が復元される。図示した動的ネットワークの実施形態では、各ＵＳ再スクランブル化操作１０１７で用いられるアンスクランブル化操作は、前のサーバで生成されたデータパケットの時間またはステートを使用する。そして、データパケットは、現在の時間で再スクランブル化される。例えば、サーバ１０１２において時間ｔ２で生成されたデータパケット１０７２は、サーバ１０１３で再スクランブル化される。すなわち、データパケット１０７２は、時間ｔ２に関連するステートを使用してアンスクランブル化され、その後に、現在の時間（図示せず）に関連するステートを使用して再びスクランブル化される。したがって、図６４に一例として示すように、混合操作及び分割操作は、繰り返して連続して行われるスクランブル化及びアンスクランブル化操作をネスト化することができる。
【０５２０】
［暗号化スクランブル化混合］
データパケットをサブパケットの様々な組み合わせに分割及び混合する方法と、パケットスクランブル化とを組み合わせて用いる本開示に係るパケット通信方法は、本発明によれば、暗号化と組み合わせることができる。図６５は、混合、スクランブル化、及び暗号化を組み合わせた操作と、それと逆の操作とのいくつかの例を示す。１つ例は、混合操作１０６１、スクランブル化操作９２６、及び暗号化操作１０２６をその順番で含む混合・スクランブル化・暗号化操作、すなわちＭＳＥ操作１０７５（Mixed Scrambled Encryption (MSE)）である。これと逆の操作である、復号・アンスクランブル化・分割操作、すなわちＤＳＵ操作１０７６（Decrypted Unscrambled Splitting (DUS)）は、ＭＳＥ操作と逆の順番の操作、すなわち復号操作１０３２、アンスクランブル化操作９２８、及び分割操作１０５７を含む。ＭＥＳ操作１０７５の出力及びＤＳＵ操作１０７６の入力は、サイファテキストを含む。元のコンテンツを送信し復元するためには（たとえその一部でも）、サイファテキストパケットの生成のときに使用したものと同一の共有秘密、数値シード、及び暗号化／復号鍵を使用して元のコンテンツを復元しなければならない。
【０５２１】
中間ノードでは、復号操作１０３２と暗号化操作１０２６との組み合わせを含む再暗号化操作１０７７（Re-Encryption）のみが実施されるか、または、復号操作１０３２、アンスクランブル化操作９２８、スクランブル化操作９２６、及び暗号化操作１０２６をその順番で含むＤＵＳＥ操作１０４５（DUSE Re-Packet）が実施される。再暗号化操作１０７７及びＤＵＳＥ操作１０４５では、復号操作１０３２及びアンスクランブル化操作９２８の機能は、それらに、前の時間またはステートでパケットを送信した通信ノードのシードまたは鍵を必要とする。暗号化操作１０２６及び再スクランブル化操作９２６の機能は両方とも、現在の時間またはステート（すなわち、通信ノードがデータパケットを「リフレッシュ」した時間）で生成された情報、シード、及び鍵を使用する。データパケットのリフレッシュは、パケットデータを新たに難読化し、コードを破るのに利用可能な時間がより短くなるので、サイバー攻撃者がデータパケット内の情報にアクセスすることをより困難にする。
【０５２２】
混合、スクランブル化、及び暗号化の動的な組み合わせ及びそれらと逆の操作の実施の一例を図６６Ａに示す。この例では、２つのデータパケット１０５５及び１０５６が、時間ｔ０で、サーバ１０１１にホストされた通信ノードＮ０，０に入力される。この２つのパケットは同じ種類のデータ（例えば、２つの音声パケット、２つのテキストメッセージファイル、２つのドキュメント、２つのソフトウェア）、または２つの互いに異なる種類の情報（例えば、１つの音声パケットと１つのテキストファイル、１つのテキストパケットと１つの動画または写真画像）であり得る。そして、サーバ１０１１にホストされた通信ノードＮ０，０は、時間ｔ１で、鍵、数値シード、または他の秘密情報を生成するためのステート９９１を使用して、混合・スクランブル化・暗号化（ＭＳＥ）操作１０７５（Mix, Scramble, & Encrypt）を実施する。これにより、それを生成するのに使用されたステート情報を有していないものには判読不能な、サイファテキストフォーマットのスクランブル化データパケットが生成される。また、時間ｔ１では、パケット混合が実施された時間またはステートを示す数値シードが生成され、生成された数値シードは最終ノードＮ０，ｆに送信される。数値シードは、混合データパケットよりも先に送信されるか、または混合データパケットのヘッダーに埋め込まれて送信される（詳細は後述する）。
【０５２３】
このデータは、次に、サーバ１０１２にホストされた通信ノードＮ０，１に送信され、時間ｔ１に対応するステート情報９９１に基づき受信データを復号及びアンスクランブル化した後に、時間ｔ２に対応するステート情報９９２に基づきデータのスクランブル化及び暗号化を再び行うことによりセキュリティをリフレッシュするＤＵＳＥ操作１０４５が実施される。ステート情報９９１が、データパケットまたはそのヘッダーに埋め込まれて最終ノードＮ０，ｆに送信される場合、ステート情報の２つのコピーが必要となる。一方のコピーは、最終ノードＮ０，ｆで使用され、混合が行われたときの情報９９１を含む。他方のコピーは、あるノードから次のノードへ（すなわち、例えばステート９９１から９９２、９９２へ）ホップするたびにデータパケットを変更するＤＵＳＥ操作で使用される。入力データパケットに対して行われた前回の操作のステートを使用し、ＤＵＳＥ操作１０４５は、復号、再スクランブル化、及び再暗号化をその順番で行うことにより、データの再スクランブル化を行う。すなわち、再スクランブル化操作は、再暗号化操作内にネスト化される。この結果生成されたデータパケットは、サイファテキスト１０８０Ｂと、基礎となるプレーンテキスト１０８０Ａで表される暗号化されていないコンテンツとを含む。ＤＵＳＥ操作１０４５は、サーバ１０１３、１０１４、及び１０１５で連続的に繰り返され、これにより、時間ｔ５で、サイファテキスト１０８１Ｂと、基礎となるプレーンテキスト１０８１Ａで表される暗号化されていないコンテンツが生成される。通信は、サーバ１０１６にホストされた通信ノードＮ０，ｆで完了する。通信ノードＮ０，ｆでは復号・アンスクランブル化・分割（ＤＵＳ）操作１０７６（Decrypt Unscramble & Un-mix）が行われ、入力データパケットを前回のリフレッシュで使用された時間ｔ５に対応する情報であるステート９９５に基づいて復号及びアンスクランブル化した後、そのパケットを最初に混合が行われたときのステート９９１に基づいて分割する。中間ノードは混合条件を知らないので、中間ノードにアクセスしたネットワークオペレータでさえも混合件を知ることはできない。時間ｔｆで生成されたプレーンテキスト出力１０５５及び１０５６は、時間ｔ０でネットワークを通じて送信されたデータに復元される。パケットが各ノード０、ｘ（ｘ＝０、１、２、・・・、ｆ）を通過するときに、パケットのコンテンツは再スクランブル化及び再暗号化されるので、伝送されるデータパケットを傍受して解読する機会は極めて複雑になり、またハッキングに利用できる時間は非常に短くなる。
【０５２４】
セキュア通信を確立するためのより簡単な方法は、通信の開始時に、パケットを混合及びスクランブル化することを含む。ただし、再暗号化のステップの繰り返しが用いられる。上述した、完全に動的な暗号化・スクランブル化・混合の例とは異なり、図６６Ｂの例では、サーバ１０１１での静的な混合及びスクランブル化と、サーバ１０１１−１０１５での動的な暗号化とが組み合わされる。これは、暗号のみが経時的に変更されることを意味する。通信は、時間ｔ０で、サーバ１０１１にホストされた通信ノードＮ０，０がデータパケット１０５５及び１０５６を受信したときに開始される。上記の例と同様に、２つのパケットは、音声パケット、テキストメッセージ、ドキュメント、ソフトウェア、動画または写真画像などの様々な種類のデータの組み合わせであり得る。
【０５２５】
続いて、時間ｔ１では、通信ノードＮ０，０は、鍵、数値シード、または他の秘密情報を生成するためのステート９９１情報を使用して、混合・スクランブル化・暗号化（ＭＳＥ）操作１０７５を実施する。この結果生成されたサイファテキスト１０８２Ｂは、その生成に使用されたステート情報を有していないものには判読不能（解読不能）なサイファテキストフォーマットのスクランブル化データパケットである。プレーンテキスト１０８２Ａを含む基礎となるデータパケットはスクランブル化されており、たとえ暗号化されていない場合であっても、ステート情報、鍵、シード、及び秘密情報を使用しない限りは、ソースデータ、テキスト、画像、または音声を復元しようと試みるサイバーパイレーツにとっては理解することはできない。
【０５２６】
このデータは、次に、サーバ１０１２にホストされた通信ノードＮ０，１に送信される。通信ノードＮ０，１では、上記の例のようにＤＵＳＥ操作を実施するのではなく、入力データの再暗号化のみを実施する。すなわち、入力データを、時間ｔ１に対応するステート９９１情報に基づいて復号し、その後に、時間ｔ２に対応するステート９９２情報に基づいて再び暗号化する。このプロセスは、再暗号化操作１０７７として示されている。出力されるデータパケットは、サイファテキスト１０８３Ｂと、基礎となるスクランブル化プレーンテキスト１０８３Ａ（先のプレーンテキスト１０８２と同一である）とを含む。再暗号化操作１０７７は、サーバ１０１３、１０１４、及び１０１５で連続的に繰り返され、そのたびに新たなサイファテキストが生成される。例えば、サイファテキスト１０８４Ｂ及び変更されていない基礎となるプレーンテキスト１０８４Ａは、サーバ１０１３及び１０１４間で送信されたデータを表す。基礎となるプレーンテキスト１０８４は、時間ｔ１で通信ノードＮ０，０でのＭＳＥ操作１０７５によりスクランブル化された状態から変更されない。しかし、サイファテキストは、通信ノードＮ０，１及び通信ノードＮ０，２での再暗号化により、通信ノードＮ０，０から出た後に２回変更される。
【０５２７】
静的な混合・スクランブル化及び動的な暗号化の実施と、このプロセスの逆のプロセスの実施に使用される共有秘密は、２つの時間またはステートを必要とする。一方は、サーバ１０１１での静的な混合・スクランブル化と、サーバ１０１６での最終的なＤＵＳ操作１０７６におけるアンスクランブル化・分割とに使用される時間ｔ１及びそれに対応するステート９９１である。他方は、サーバ１０１２−１０１５の各通信ノードでの再暗号化操作１０７７に使用される動的な時間及びそれに対応するステートである。ステートは、データパケットがパケット交換通信ネットワーク中で転送されるたびに、動的に頻繁に変更される。最後のステップでは、サーバ１０１６にホストされた通信ノードＮ０，ｆにより、通信は完了される。通信ノードＮ０，ｆでは、ＤＵＳ操作１０４５が実施され、入力データパケットを復号、アンスクランブル化、及び分割し、時間ｔ０でネットワークに送信された元のデータと同一のデータであるプレーンテキスト出力１０５５、１０５６を生成する。
【０５２８】
パケットはノードＮ０，０で暗号化され、その後、各ノードＮ０，１、・・・、Ｎ０，ｆ−１を通過するたびに再暗号化されるので、データの混合及びスクランブル化が一度だけであるのにも関わらず、通信されるデータパケットを傍受して解読する機会は極めて複雑になり、またハッキングに使用できる時間は非常に短くなる。さらに、上述したように複数のデータソースを混合することにより、ハッキングやサイバーパイラシーなどの不正行為をさらに困難にする。不正アクセス者には、多数のデータ断片について、それが何のデータであるか、それがどこから送信されたのか、またはそれがどこに送信されるのか分からないからである。つまり、データパケットの性質の詳細及びコンテキストが分からないからである。
【０５２９】
転送中のデータパケットコンテンツを管理する別の方法は、シングルホップ毎に、「正常に戻す」ことである。この方法を図６６Ｃに示す。ゲートウェイノードを除いて、各ノードで、ＤＵＳ操作１０７６とその直後に続くＭＳＥ操作１０７５とが連続的に実施される。すなわち、シングルホップ毎に、データパケットは完全に再構成される。図示のように、入力データパケット１０５５及び１０５６は、まず、時間ｔ１で、ノードＮ０、０によりステート９９１（Incoming State）を使用して混合される。これにより、プレーンテキスト１０８０Ｙに対応するサイファテキスト１０８０Ｚが生成され、生成されたサイファテキスト１０８０Ｚはその後ノードＮ０，１に送信される。ノードＮ０，１では、ＤＵＳ操作１０７６により、時間ｔ１に対応するステート９９１を使用して生成された入力パケットを識別し、その後、図６６Ｄに詳細に示すように、識別された入力パケットを復号して入力サイファテキスト１０８０Ｚをプレーンテキスト１０８０Ｙに変換する。変換されたプレーンテキスト１０８０Ｙはその後アンスクランブル化及び分割され、これにより、元のデータパケット１０５５及び１０５６が復元される。
【０５３０】
次のネットワークホップに備えて、２つの元のデータパケットは、ステート９９２（Outgoing State）に対応する時間ｔ２に基づき選択されたアルゴリズムを使用して再び混合及びスクランブル化され、これによりプレーンテキスト１０８０Ａが生成される。このプレーンテキスト１０８０Ａはその後暗号化され、これにより生成されたサイファテキスト１０８０ＢはノードＮ０，２に送信される。この方法を用いることにより、入力データパケットは、ノードに入力されるたびに、最初の正常な状態に戻される。そして、現在のステートに対応する全く新しい「リフレッシュされた」状態でノードから出力される。この方法では、各ノードは、入力パケットのステートだけ分かればよく、データ転送中に使用された前のステートの情報は必要としない。
【０５３１】
［混合＆分割操作］
図６０Ａ及び図６０Ｂを参照して上述した、パケットを混合及び分割して互いに異なる種類のデータに混合または分割する処理では、固定長パケットが、長いデータパケット１０５４のデータセグメント数はそれから生成されたより短いデータパケット１０５５及び１０５６のデータセグメントの総数と同数であるという「データセグメントの保存」の原理に従うことを説明した。すなわち、データセグメントの保存は、連続的な混合及び分割操作中に、データセグメントが生成または破壊されないことを意味する。この単純な原理は、通信においては問題がある。実時間データの量がわずかであり、単一パケットでさえも満たすことはできない恐れがあるからである。
【０５３２】
これとは正反対に、ネットワークが非常に混雑している場合、サーバは、遅延時間が長くなる伝搬遅延を生じさせずには、長いパケットを処理することはできない恐れがある。この理由及び他の理由により、本発明に係るデータパケットの動的な混合及び分割は、可変長データパケットを管理、混合、及び分割し、入力データパケットまたは出力データパケットの長さ及び個数を管理する手段を提供する。様々な送信先（宛先）のコンテンツを含む可変長パケットを使用することにより、ハッカーのハッキングをさらに困難にし、これにより、ネットワークのセキュリティが高まる。図６７Ａに示すように、ジャンクを挿入または削除するためのパース操作１０８７（Parse）及びジャンク操作１０８８（Junk）は、混合化データパケットにおけるデータパケットの長さを調節及び管理するために協働的に使用され、単一出力混合操作または複数出力混合操作のいずれにも適用可能である。
【０５３３】
図６７Ａは、複数の可変長入力を混合する単一出力パケット混合の一例を示す。図示した例では、混合操作１０８６（Mixing Process）により、４個のデータセグメントを有するパケット１０９０Ａ及び１０９０Ｃと、３個のデータセグメントを有するパケット１０９０Ｂとを混合し、１つの長いデータパケット１０９１を生成する。この混合操作１０８６は、シード生成器９２１により生成された数値シード９２９を使用して混合を実施するときに、現在時間またはステート９２０に基づいて、混合アルゴリズムのリスト１０８５（Mixing Algorithms）から選択される。混合操作１０８６の実施中は、ジャンク操作１０８８により、選択されたアルゴリズムに従ってジャンクデータセグメントがデータパケット出力１０９１に挿入される。
【０５３４】
混合後、長いデータパケット１０９１またはパース操作１０９２により生成されたサブパケットが、ローカルに保存されるか（例えば、他のデータパケットの到着を待つために）、または通信ネットワーク中の他の通信ノードに送信される。各パケットまたはサブパケットは、保存またはルーティングされる前に、パケットを識別するヘッダーまたはサブヘッダーにより「タグ付け」される。入力パケットは、そのデータに対する処理（例えば、データパケットのコンテンツをどのように混合、スクランブル化、暗号化、分割、復号するのか）に関する事前に受信した命令に従って処理されるので、タグは、入力パケットを認識するために重要である。データパケットを識別及びタグ付けするためのデータパケットのヘッダー及びサブヘッダーの使用については、後で詳細に説明する。
【０５３５】
このように、サイバー攻撃を困難にすることに加えて、パース、ジャンク、及びデジャンク操作の別の役割は、データパケットの長さを調節することである。例えば、生成された長いデータパケット１０９１が長すぎる場合は、選択されたアルゴリズムに従って、パース操作１０９７により長いデータパケット１０９１を切断して複数のより短いパケットを生成する。より短いパケットの長さは、選択されたアルゴリズムにより規定されている。例えば、混合により生成された長いパケットは、所定の間隔１０９２で、すなわちｎ個のサブパケット毎に切断（分割）される。長いパケットを切断する間隔（パケット長さ）は、事前に規定してもよいし、ネットワークの状態に基づいて決定してもよい。例えば、許容可能な最大長さは、ネットワーク遅延に基づき算出することができる。例えば、２つのノード間の伝搬遅延Δｔｐｒｏｐが所定値を超えた場合に、データパケットをパース（切断）して短くする。例えば、長いデータパケット１０９１は、パース操作１０９２により、所定の間隔で、「ｎ個」のサブパケットに切断される。
【０５３６】
長いパケットをどのようにパース（切断）するかに関わらず、図６７Ｂに示すように、複数出力混合操作では、複数のデータパケット出力、すなわちデータパケット１０９３Ａ、１０９３Ｂ、１０９３Ｃが生成される。図示した処理では、ジャンクデータをサブパケットに挿入することにより、調節された固定長さのサブパケットが生成される。データパケットまたはサブパケットの各セグメント、例えば１Ａ、１Ｂ、１Ｃ・・・は、その値やコンテンツではなく、パケット中の「スロット」位置により識別される。例えば、長いデータパケット１０９１は１８個のデータスロットを含んでおり、データは、スロット１、４、７、８、９、１１、１２、１３、１５、及び１７に存在する。一方、サブパケット１０９３Ａは、わずか６個のスロット長であり、実データコンテンツまたは音声を１番目及び４番目のスロットに含んでいる。
【０５３７】
便宜上、図６０Ａに示したより理想的な例と同様に、複数入力単一出力（ＭＩＳＯ）混合操作を記号１０８９で、複数入力複数出力（ＭＩＭＯ）混合操作を記号１０９４で記号的に表している。本開示に係る本発明によれば、複数入力単一出力（ＭＩＳＯ）混合操作１０８９は、セキュアラストマイル接続に有用であり、複数入力複数出力（ＭＩＭＯ）混合操作１０９４は、後述するマルチパス及びメッシュルーティングネットワークの実現に有用である。本開示に係るＳＤＮＰネットワークの構成要素及び操作の分類では、ＭＩＳＯ混合操作１０８９は、ＭＩＭＯ混合操作１０９５の特別な場合と見なすことができる。
【０５３８】
複数入力一複数出力（ＭＩＳＯ）混合操作と逆の操作は、単一入力複数出力（ＳＩＭＯ）分割操作である。一実施形態では、図６７Ｃに示すように、単一の長いデータパケット１０９１が、分割操作１１００（Splitting Process）により、固定長または可変長のサブパケットを含む複数のデータサブパケット１１０３Ａ、１１０３Ｂ、及び１１０３Ｃに分割される。この図示例では、サブパケット１１０３Ａは４個のデータスロットを含み、サブパケット１１０３Ｂ及び１１０３Ｃは各々３個のデータスロットを含む。
【０５３９】
図６７Ｄに示した第２の実施形態では、単一の長いデータパケット１０９１が、分割操作１１０５（Splitting Process）により、データパケット全体を満たすデータが不足する場合はジャンクデータセグメントをフィラーとして使用して、同一の固定長の複数のデータサブパケット１１０８Ａ、１１０８Ｂ、及び１１０８Ｃに分割される。上記の両方の実施形態において、入力データパケットを生成したときに使用された時間（ステート）９２０及び数値シード９２９が、混合アルゴリズムテーブル１０８５からの混合アルゴリズムの選択、及び分割操作１１００及び１１０５を実行するのに必要なパラメータの設定に必要とされる。混合アルゴリズムテーブル１０８５では「混合」という用語が用いられているが、このアルゴリズムテーブルは「分割」の実施に必要とされる、混合と逆の操作を識別して選択するのにも使用される。すなわち、混合アルゴリズムテーブル１０８５は、データパケットの混合及び分割の両方に必要な情報を含んでいる。この２つの操作は、互いに逆の順番で実施される同一のステップを含むので、テーブル１０８５は、「混合／分割」アルゴリズムテーブル１０８５と称することもできる。しかしながら、明確にするために、このテーブルは、混合の操作についてのみ称し、それと逆の操作（分割）については称さないものとする。データパケットの混合及び分割に使用される方法としては、入力または出力として一般的に２以上のデータパケットを含むことを除けば、上述したスクランブル化アルゴリズムと同様に、アルゴリズム的な方法及び他の様々な方法を用いることができる。混合または分割操作が単一のデータパケットに対して実施される場合の１つの除外例は、ジャンクデータの挿入または除去中である。
【０５４０】
図６７Ｅは、３つの入力データパケット１０９０Ａ（Sub-packet A）、１０９０Ｂ（Sub-packet B）、及び１０９０Ｃ（Sub-packet C）を混合して１つの長いデータパケット１０９１を生成し、その後に長いデータパケット１０９１をパース（分割）して３つの出力サブパケット１０９３Ｄ（Sub-packet D）、１０９３Ｅ（Sub-packet E）、及び１０９３Ｆ（Sub-packet F）を生成する、ある特定の混合アルゴリズムを示す。図示のように、混合操作１０９４（Mixing）では、入力データパケットの各スロットからのデータコンテンツを長いパケットの所定のスロットに再配置すると共に、それらの間に介在するスロットにジャンクデータを挿入する。例えば、図示のように、サブパケット１０９０Ａの３番目のスロットに含まれているデータセグメント１Ｃは、長いデータパケット１０９１の７番目のスロットに移動させられ、サブパケット１０９０Ｂの３番目のスロットに含まれているデータセグメント２Ｆは、長いデータパケット１０９１の１７番目のスロットに移動させられ、サブパケット１０９０Ｃの２番目のスロットに含まれているデータセグメント３Ｄは、長いデータパケット１０９１の１２番目のスロットに移動させられる。そのため、完全な混合アルゴリズムは、下記に示す置換テーブルを有する。
【０５４１】
【表６】
2020195141.tif 000008
【０５４２】
このように、一般的に、混合操作での処理は、混合パケット（すなわち長いパケット）のどのスロットに入力データを挿入し、どのスロットにジャンクを挿入するかを規定することである。
【０５４３】
混合アルゴリズムを示すこの置換テーブルは一例であり、入力データサブパケットを再配置して長いデータを生成する任意の再配置方法を用いていることができる。混合操作１０９４の一部としてパース操作１０８７が次に実施され、長いデータパケット１０９１を切断することにより、同一の長さを有する３つの出力サブパケット１０９３Ｄ（Sub-packet D）、１０９３Ｅ（Sub-packet E）、及び１０９３Ｆ（Sub-packet F）が生成される。
【０５４４】
図６７Ｆは、分割操作１１０１（Splitting）を実施するアルゴリズムを示す。上記のパース操作１０８７により生成された同一の長さを有する３つのサブパケット１０９３Ｄ、１０９３Ｅ、及び１０９３Ｆの各データセグメントを再配置して、長さが互いに異なる新しいサブパケット１１０３Ａ、１１０３Ｂ、及び１１０３Ｃを生成する（下記のテーブルに詳細に示す）。上記のパース操作の目的は、長いパケットを、より小さいサイズ（これにより、ローカル保存のための時間がより短くなる）の複数のパケットに分割すること、またはデータ送信のためにデータを分割することである。
【０５４５】
【表７】
2020195141.tif 000009
【０５４６】
図示のように、サブパケット１１０３Ａ（Sub-packet G）は４つのスロットを含み、スロット１には、長いパケット１０９１のスロット１に対応するサブパケットＤのスロット１に入っていたデータセグメント１Ａが挿入され、スロット２には、長いパケット１０９１のスロット４に対応するサブパケットＤのスロット４に入っていたデータセグメント１Ｂが挿入され、スロット３には、長いパケット１０９１のスロット７に対応するサブパケットＥのスロット１に入っていたデータセグメント１Ｃが挿入され、スロット４には、長いパケット１０９１のスロット１３に対応するサブパケットＦのスロット１に入っていたデータセグメント１Ｅが挿入される。同様に、サブパケット１１０３Ｂ（Sub-packet H）は３つのスロットを含み、スロット１には、サブパケットＥの２番目のスロットに入っていたデータセグメント２Ｃが挿入され、スロット２には、サブパケットＥの５番目のスロットに入っていたデータセグメント２Ｄが挿入され、スロット３には、サブパケットＦの５番目のスロットに入っていたデータセグメント２Ｆが挿入される。同様に、サブパケット１１０３Ｃ（Sub-packet J）は３つのスロットを含み、スロット１には、サブパケットＥの３番目のスロットに入っていたデータセグメント３Ｃが挿入され、スロット２には、サブパケットＥの６番目のスロットに入っていたデータセグメント３Ｄが挿入され、スロット３には、サブパケットＦの３番目のスロットに入っていたデータセグメント３Ｆが挿入される。
【０５４７】
このような分割アルゴリズムは、（ａ）分割されたサブパケットをいくつ生成するか、（ｂ）分割された各サブパケットがいくつのスロットを有するか、（ｃ）分割されたサブパケットのどのスロットに、長いパケットのどのデータを挿入するか、（ｄ）どのスロットを除去するか（そのスロットがジャンクデータを含む場合）、（ｅ）特定の長さのサブパケットの生成を容易にするために、ジャンクデータを含む新しいスロットを導入するか、を定義する。分割操作が混合操作の後に行われる場合、ジャンクデータが除去または挿入されない限り、分割されたパケットにおけるサブパケットの数は、それらが混合される前のパケットにおけるサブパケットの数と等しくする必要がある。
【０５４８】
本発明に係る混合及び分割操作の役割は、任意のネットワークを通じて伝送された断片データにより通知を実行し、ネットワーク中の全てのノードにどの操作をどの順番で実施するべきかを知らせるように構成され得る。上記の図６１Ｂに示したような単一ルート伝送では、データパケット１０５５及び１０５６は、様々な発呼者またはソースからの様々な会話または通信を表す。混合後は、長いデータパケット、またはそれをパースして生成したパケットは、ネットワークを通じて伝送される。このような操作は、複数入力単一出力（ＭＩＳＯ）通信ノードで行うことができる。
【０５４９】
元のデータパケットは、単一入力複数出力（ＳＩＭＯ）通信ノードで、混合と逆の操作である分割を実施することにより復元される。単一ルート通信においてデータパケットがそれの最終的な送信先に到着すると、長いデータパケットの最後の分割が行われ、ジャンクデータが除去され、これにより元のデータパケットが再構成される。混合データは、必ずしも同一種類のデータである必要はない。例えば、ある発呼者が電話で話すのとテキストメッセージを送信するのとを同時に行った場合は、互いに異なる２つのデータストリームが同時に生成され送受信される。しかし、分割データパケットを、非混合状態で、ネットワーク内で送信先に向けてルーティングすることを望む場合は、データパケット中にジャンクデータを挿入することにより、データのスニッフィングを防止することができる。
【０５５０】
同一種類のデータを伝送する場合、セキュリティは主に、図６４に示したスクランブル化、または図６６Ａに示したスクランブル化と暗号化との組み合わせによって実現することができる。両方の例で使用された混合とそれに続くスクランブル化との組み合わせを、図６７Ｇに示す例によってさらに詳細に説明する。この例では、混合操作１０９４により、入力データサブパケット１０９０Ａ、１０９０Ｂ、及び１０９０Ｃを混合して、スクランブル化されていない長いデータパケット１０９１を生成する。続いて、スクランブル化操作９２６により、線形位相シフトを実施し、各データスロットを右方向に移動させ、例えば、スクランブル化されていないパケットのスロット１のデータ１Ａをスクランブル化パケットのスロット２に移動させ、スクランブル化されていないパケットのスロット７のデータ１Ｃをスクランブル化パケットのスロット８に移動させ（以下同様）、これにより、スクランブル化された長いデータパケット１１０７を生成する。
【０５５１】
その後、パース操作１０８７により、スクランブル化された長いデータパケット１１０７を、６番目及び１２番目のスロットの後側に位置する切断線１０９２に沿って切断し、これにより、出力サブパケット１０９３Ｇ、１０９３Ｈ、及び１０９３Ｊを生成する。位相シフトの結果、出力サブパケット中のデータの位置が変更されるだけでなく、そのパケットのコンテンツが実際に変更される。例えば、スクランブル化されていない長いデータパケット１０９１のスロット位置１２に入っているデータセグメント３Ｄは、スクランブル化後のデータパケット１１０７ではスロット位置１３に移動する。そして、スクランブル化後のデータパケット１１０７は、パース操作１０８７により１２番目のスロットの後側の切断線１０９２で切断され、これにより、データセグメント３Ｄはデータサブパケット１０９３Ｊに含まれる、すなわち、データサブパケット１０９３Ｈから１０９３Ｊに位置が変更されることとなる。これは、データセグメントの順番がＪ−１Ｃ−２Ｃ−３Ｃ−Ｊ−２Ｄ（Ｊはジャンクデータを示す）であるサブパケット１０９３Ｈを、図６７Ｅに示したデータセグメントの順番が１Ｃ−２Ｃ−３Ｃ−Ｊ−２Ｄ−３Ｄであるサブパケット１０９３Ｅと比較することにより明らかである。
【０５５２】
図６７Ｈは、アルゴリズム的混合（すなわち、サブパケットからの入力データを再配置して長いデータパケットを生成すること）と、それに続くスクランブル化アルゴリズムとを組み合わせた例を示す。再配置アルゴリズムを変更するだけで、混合操作とスクランブル化操作とを単一のステップに統合することができ、これにより、上記のアルゴリズム的混合とスクランブル化アルゴリズムとの組み合わせが実現される。この混合・スクランブル化操作１０９４Ａ（Mixing & Scrambling）は、データ再配置中に、長いデータパケット１１０７においてデータを右方向に１つだけ移動させること以外は、上記の混合アルゴリズムと同一である。例えば、サブパケット１０９０Ａのデータセグメント１Ａは、長いデータパケット１１０７のスロット２に移動させられ、サブパケット１０９０Ｃのデータセグメント３Ｄは、長いデータパケット１１０７のスロット１２ではなくスロット１３に移動させられる。これにより、出力サブパケット１０９３Ｇ、１０９３Ｈ、１０９３Ｊは、図６７Ｇに示す混合後にスクランブル化して生成した出力サブパケットと同一になる。つまり、混合及びそれに続くスクランブル化のアルゴリズムは、別の混合アルゴリズムを表す。生成される出力に差異はないので、本明細書全体を通じて、本開示では、混合とスクランブル化とを組み合わせた操作は、混合及びスクランブル化を統合した単一ステップの操作と同一に見なすものとする。同様に、データパケットをアンスクランブル化した後に分割するという逆の操作を、アンスクランブル化及び分割を単一のステップで実施する単一の組み合わされた操作に置き換えることができることを理解されたい。
【０５５３】
単一ルートデータ伝送では、データパケットは、並列経路を取ることはできず、メディアサーバ間またはクライアントデバイス及びクラウドゲートウェイ間の単一ルートを直列的に進むしかない。すなわち、データは、ラストマイルを通じて伝送される。データサブパケットは、ネットワークに送信される前に、該パケットの識別のために１または複数のヘッダーによりタグ付けしなければならない。これにより、該パケットを受信した通信ノードは、そのパケットに対して行う操作に関する命令を受信することができる。これらのヘッダーに含まれているフォーマット及び情報の詳細については後述する。明確にするために、パケットのタグ付けの簡略化した実現例を図６７Ｉに示す。図示のように、一連のデータパケット１０９９Ａ、１０９９Ｂ、１０９９Ｃ、及び１０９９Ｚは、通信ノードに順番に到着する。各データパケットは、ヘッダー（例えば１１０２Ａ）と、それに対応するデータ（例えば１０９０Ａ）とを含む。
【０５５４】
データパケットがノードに到着すると、その後の処理のために、操作１６００により、データからヘッダーを分離する（Strip header from Data）。図示のように、最初に入力されたパケット１０９９Ａのヘッダー１１０２Ａ（ＨｄｒＡ）は、データパケット１０９９Ａから分離された後に、タグ読取操作１６０２（Tag Reader）に送られる。タグ読取操作１６０２では、通信ノードが、パケット１０９９Ａに関連する命令を受信したか否かを判断する。もし、通信ノードがパケット１０９９Ａに関連する命令を受信していなければ、対応するデータは廃棄（Discard）される。この場合の例は、通信ノードが受信した命令のいずれにも関連しない会話データ６、７、８、９を含むサブパケット１０９２Ｚにより示されている。一方、もし、データパケットが、「期待通り」である場合、すなわち、タグが、通信ノードが別のサーバから事前に受信した命令と一致すれば、認識されたデータパケット、この例ではサブパケット１０９０Ａ、１０９０Ｂ、及び１０９０Ｃは、混合操作１０８９に送られる（１６０３：Identify & Sort）。その後、入力データパケットのために選択された適切なアルゴリズムが、混合アルゴリズムテーブル１０５０から混合操作１０８９にロードされる。換言すれば、通信ノードは、ＨｄｒＡ、ＨｄｒＢ、及びＨｄｒＣによってそれぞれ識別される３つのパケットを受信したときに、この３つのパケットをテーブル１０５０内の特定の混合アルゴリズムに従って混合するという命令を事前に受けている。上述したように、この混合アルゴリズムは、スクランブル化操作を含み得る。
【０５５５】
この開示によれば、その後、混合操作１０８９により、サブパケット１０９３Ｄ、１０９３Ｅ、及び１０９３Ｆが順次出力される。各パケットは、新しい識別ヘッダー（すなわち、ＨｄｒＤ、ＨｄｒＥ、及びＨｄｒＦ）でタグ付けされ（１６０４：Add Header to Data）、これにより、ネットワークの次の通信ノードに伝送する準備ができたデータパケット１０９９Ｄ、１０９９Ｅ、及び１０９９Ｆが生成される。単一ルート通信では、これらのデータパケットは、同一ルートを通ってその送信先まで順次送信される。このフロー図では、タグは、混合操作されるパケットの識別に使用されているが、このタグによる識別方法は、特定のスクランブル化及び暗号化操作、またはそれらと逆の操作である復号、アンスクランブル化、及び分割の操作を実施する場合にも同様にも用いることができる。
【０５５６】
混合及び分割操作は、複数出力混合・分割操作を使用して、後述するマルチルート伝送及びメッシュ伝送にも適用することができる。図６７ＦのＳＩＭＯ分割操作を表す記号１１０１における外側に向かう矢印で表されている様々な出力が、データパケットをネットワークにおける様々な方向、経路、及びルートに伝送するのに使用され得る。通信ノードが受信した命令は、分割された各パケットにヘッダーとして付加されるタグと、分割された各パケットの送信先ノードとを規定する。また、命令を受信したノードは、そのパケットを待つように命令される。同様に、図６７Ｂに示した複数出力混合操作１０９４は、マルチルート通信にも適用される。後述するが、ＭＩＳＯ及びＭＩＭＯデータパケット混合操作及びＳＩＭＯデータパケット分割操作は、マルチルート伝送及びメッシュルート伝送の実現における重要な要素である。パケットのスクランブル化及び暗号化を行わない場合でも、マルチルート伝送及びメッシュ伝送でのデータパケットのルーティングは、サイバーパイレーツによる意味を持つデータの傍受、パケットスニッフィング、及びネットワークの中間者攻撃のリスクを大幅に軽減する。どの通信ノードも、会話全体またはデータセット全体の送受信を行わないからである。添付図面に示されたサブパケットの数は、説明のみを目的としている。通信されるサブパケットの実際の数は、数十、数百、さらには数千であり得る。
【０５５７】
［パケットルーティング］
上述したように、単一ルートは、例えばインターネットなどのパケット交換ベースネットワーク通信に使用されるデータパケットの直列ストリームを伝送する。この単一ルートは経時的に変更されるが、データストリームをパケットスニッフィングで傍受することにより、少なくともある時間区間については、サイバーパイレーツは、コヒーレントシリアル情報の完全なデータパケットを得ることができる。本発明に係るＳＤＮＰ通信で使用されるスクランブル化及び暗号化を用いない限り、データパケットのデータセグメント配列は、一旦傍受されると中間者攻撃により容易に解読され、効果的な及び繰り返してのサイバー攻撃が可能となる。
【０５５８】
このような、単一ルート通信は、インターネット、ＶｏＩＰ、及びＯＴＴ通信の基礎であり、現在のインターネットベースの通信のセキュリティが非常に低い理由の１つである。連続的なパケット送信は様々なルートを取ることができるが、ソース及び送信先の通信ノードの近傍では、一連のパケットが同一ルートを通り同一のサーバにより転送される機会が増加する。これは、おそらくは、インターネットでのパケットルーティングは、地理的に寡占的なサービスプロバイダにより決定されるからである。パケットのルーティングをそのソースに向かって遡り、ソースの近傍でパケットスニッフィングするだけで、同一の会話及びデータストリームの多数のパケットを傍受する機会が劇的に増加する。通信は、単一の地理的ベースインターネットサービスプロバイダ（ＩＳＰ）によってのみ行われるからである。
【０５５９】
図６８Ａに示すように、単一ルート（Single Route）通信１１１０は、通信ノードＮＵ，Ｖから別の通信ノード（この例では通信ノードＮｗ，Ｚ）への直列データフロー１１１１を表す。いかなる場合でも、経路は経時的に変更されるが、各コヒーレントパケットは、ネットワークに順次伝送され、単一ルートを通ってその送信先に伝送される。表記についてだが、通信ノードＮＵ，Ｖ、ネットワーク「ｕ」にけるサーバ「ｖ」にホストされた通信ノードを示す。また、通信ノードＮｗ，Ｚは、ネットワーク「ｗ」にけるサーバ「ｚ」にホストされた通信ノードを示す。ネットワーク「ｕ」及び「ｗ」は、互いに異なるＩＰＳにより所有及び運営されるクラウドを示す。インターネットルーティングの中間においてルーティングされるデータパケットは任意の数のＩＳＰにより伝送されるが、データパケットは、その送信先の近傍では、必ず所定のＩＳＰ及びネットワークにより伝送されることとなるので、同一の会話を含む一連のデータパケットの追跡及びパケットスニッフィングが容易となる。このことは、図６８Ｂに例示的に示されており、単一ルート通信１１１１は、単一ルート通信ネットワーク１１１０を表す一連のサーバ１１１８を介して行われる。図示のように、通信は、通信ノードＮ０，０で開始され、ネットワーク「０」の通信ノードＮ０，１、Ｎ０，２を介して連続的に伝送され、別のＩＳＰにより運営される別のネットワーク「２」の通信ノードＮ２，３に到着する。その後、データは、最終ノード、すなわちネットワーク「１」上のＮ１，４、Ｎ１，ｆに送信される。したがって、ネットワーク０に伝送されたパケットデータは、別のＩＳＰネットワークに伝送されるまでは、ネットワーク０中に存在する。そして、データパケットがその送信先に接近すると、一連のパケットが、ＩＳＰネットワーク１上に存在する同一ノードを通過する可能性が増加する。
【０５６０】
インターネットＯＴＴ及びＶｏＩＰ通信に使用される単一ルートパケット通信とは大きく異なり、本発明に係るＳＤＮＰ通信の一実施形態では、データパケットのコンテンツは、共通のソースまたは発呼者からの情報を含むコヒーレントパケットにより直列的に伝送されるのではなく、複数のソース及び発呼者から断片化された形態で伝送され、動的に混合及び再混合される。これにより生成されたデータは、データ種類が異なるデータ、コンテンツ、音声、映像、及びファイルと、フィラーとしてのジャンクデータとを含む、不完全なデータ断片である。本開示のデータ断片化及び伝送の利点は、暗号化及びスクランブル化が行われていないデータパケットであっても、該データパケットは無関係なデータ及びデータ種類の組み合わせであるので、解読するのがほぼ不可能であることである。
【０５６１】
図６８Ａに示すように、断片化データパケットのＳＤＮＰ通信は、単一ルート伝送１１００のように直列ではなく、マルチルート（multiroute）伝送１１１２または「メッシュルート（meshed route）」伝送１１１４を使用して並列に行われる。５つのルートが示されているが、伝送は、２つのルートから最大で数十のルート、または必要に応じてそれ以上のルートを使用して行われる。重要なので強調するが、この通信ネットワークは、インターネット及びパケット交換ネットワークで一般的に用いられる単一の冗長ルーティングではない。すなわち、同一のデータが、任意の単一の経路または複数の経路を通じて、同時に送信される。複数チャンネルを介した完全にコヒーレントなデータパケットの冗長的な伝送及び通信では、ハッキングされるリスクが実際に増加する。サイバーパイレーツによる、同一データの複数のソースのスニッフィング、分析、及び解読が可能であるからである。
【０５６２】
一方、ＳＤＮＰ通信では、情報は断片化され、断片化されたデータは、例えば、ルート１１１３Ａ、１１１３Ｂ、及び１１１３Ｄを通じて送信され、ルート１１１３Ｃ及び１１１３Ｅにはデータは送信されない。そして、その後の時間では、断片化されたデータは別の方法で分割及び混合され、ルート１１１３Ａ、１１１３Ｃ、及び１１１３Ｅを通じて送信され、ルート１１１３Ｂ及び１１１３Ｄにはデータは送信されない。マルチルート伝送１１２の例を図６８Ｃに示す。この例では、ネットワークは、通信ノードＮ０，０及びＮｆ、ｆ間の通信を確立するマルチデータパスを構成するよう配置された多数の通信サーバ１１１８を含む。図示のように、マルチパス伝送は、ネットワーク１−４を表す４つの相互接続サーバ群により行われる。データパス（経路）の１つのルート１１１３Ａは、通信ノードＮ１，１、Ｎ１，２、Ｎ１，３、及びＮ１，４を含む。それと並列のデータパスのルート１１１３Ｂは、通信ノードＮ２，１、Ｎ２，２、Ｎ２，３、及びＮ２，４を含む。同様、並列のデータルート１１１３Ｃは、通信ノードＮ３，１、Ｎ３，２、Ｎ３，３、及びＮ３，４を含み、並列のデータルート１１１３Ｄは、通信ノードＮ４，１、Ｎ４，２、Ｎ４，３、及びＮ４，４を含む。
【０５６３】
「メッシュルート」伝送１１１４の例を図６８Ｄに示す。この例では、通信は、上記のルート１１１３Ａ−１１１３Ｅと、ルート１１１３Ａ−１１１３Ｄ間を交差接続する交差接続ルート１１１５Ａ−１１１５Ｄとを含む複数の相互作用ルートを通じて送信される。ルートを互いに接続して「メッシュ」を形成することにより、データパケットを、任意の組み合わせのルートを通じて伝送することができ、またさらには、別のルートを通じて送信されたデータパケットと動的に混合または再混合させることもできる。メッシュ伝送１１１４では、ネットワークは、通信ノードＮ０，０及びＮｆ、ｆ間の通信を確立するメッシュデータパスを構成するよう配置された多数の通信サーバ１１１８を含む。図示のように、メッシュ伝送は、水平方向及び垂直方向のデータパスの両方によって相互接続されたサーバにより実施される。水平方向のルートでは、ルート１１１３Ａは、相互接続通信ノードＮ１，１、Ｎ１，２、Ｎ１，３、及びＮ１，４を含み、ルート１１１３Ｂは、相互接続通信ノードＮ２，１、Ｎ２，２、Ｎ２，３、及びＮ２，４を含み、ルート１１１３Ｃは、相互接続通信ノードＮ３，１、Ｎ３，２、Ｎ３，３、及びＮ３，４を含み、ルート１１１３Ｄは、相互接続通信ノードＮ４，１、Ｎ４，２、Ｎ４，３、及びＮ４，４を含む。垂直方向のルートでは、ルート１１１５Ａは、相互接続通信ノードＮ１，１、Ｎ２，１、Ｎ３，１、及びＮ４，１を含み、ルート１１１５Ｂは、相互接続通信ノードＮ１，２、Ｎ２，２、Ｎ３，２、及びＮ４，２を含み、ルート１１１５Ｃは、相互接続通信ノードＮ１，３、Ｎ２，３、Ｎ３，３、及びＮ４，３を含み、ルート１１１５Ｄは、相互接続通信ノードＮ１，４、Ｎ２，４、Ｎ３，４、及びＮ４，４を含む。図６８Ｅに示すように、ネットワークは、斜め方向相互接続１１１９によって、さらに増補することができる。
【０５６４】
マルチルート伝送は、スクランブル化及び暗号化と、様々な方法で組み合わせることができる。スクランブル化を行わないマルチルート伝送の一例を図６９に示す。この例では、通信サーバ１１１８のネットワークにより、データパケット１０５５を時間ｔ０での通信ノードＮ０，０から時間ｔｆでの通信ノードＮｆ，ｆに伝送する。伝送１１１２の実施時は、通信ノードＮ０，０は、分割操作１１０６（Split）を実施し、データセグメント１Ｃ及び１Ｅを含むデータパケット１１２５Ａをデータルート１１１３Ａに送信し、データセグメント１Ｂを含むデータパケット１１２５Ｂをデータルート１１１３Ｂに送信し、データセグメント１Ｄを含むデータパケット１１２５Ｃをデータルート１１１３Ｃに送信し、データセグメント１Ａ及び１Ｆを含むデータパケット１１２５Ｄをデータルート１１１３Ｄに送信する。サブパケットは、データと、それに関連しないサブパケットまたはジャンクデータとの組み合わせを含む。サブパケットはスクランブル化されていないので、データセグメント１１２５Ａにおけるデータセグメント１Ｃ及び１Ｅの順番は、その間、前、または後に別のデータセグメントが挿入された場合でも維持される。最終的に、通信ノードＮｆ，ｆにおいて、混合操作１０８９（Mix）が行われ、時間ｔｆで元のデータパケットが再構成される。時間ｔ０及び時間ｔｆ間の全時間ｔｎで、データパケット１１２５Ａ−１１２５Ｄのコンテンツは不変に保たれる。
【０５６５】
上述したスクランブル化を行わないマルチルート伝送の簡単な変形例を図７０に示す。この変形例では、マルチルート伝送は、静的なスクランブル化を含む。これは、入力データパケット１０５５をスクランブル化した後に分割し、ネットワーク中のマルチルートを通じて伝送することを意味する。具体的には、通信ノードＮ０，０は、上記の図６９の例では分割操作のみを行ったが、この図７０の例ではスクランブル化・分割操作１０７１（Scrambled & Split）を行う。これにより、上記の例と同様に、スクランブル化及び分割されたデータパケット１１２６Ａ−１１２６Ｄが生成される。データパケット１１２６Ａ−１１２６Ｄは、ネットワークのデータパス１１１３Ａ−１１１３Ｄを独立的に伝送される間は、静的及び時不変であり、全時間ｔｎで変更されない。そして、データパケット１１２６Ａ−１１２６Ｄは、最終通信ノードＮｆ，ｆに到着すると、混合・アンスクランブル化操作１０７０（Mix & Unscramble）により混合及びアンスクランブル化され、これにより、元のデータパケット１０５５が復元される。上記の図６９の例と比較すると、図７０のデータパケット１１２６Ａ−１１２６Ｄの唯一の大きな違いは、スクランブル化されていること、すなわちデータパケットに含まれるデータセグメントの順番が元の順番に維持されていないである。例えば、データパケット１１２６Ａでは、データセグメント１Ｅがデータセグメント１Ｂの前に位置しており、データパケット１１２６Ｄでは、データセグメント１Ｄがデータセグメント１Ａの前に位置している。静的なパケット通信の短所は、単純なパケットスニッフィングは受けないが、サイバーパイレーツによる、変更されていないデータの分析が可能であることである。しかしながら、任意のルートを通じて伝送される任意のデータパケット中に存在するデータは、不完全であり、断片化されており、スクランブル化されており、かつ、他の無関係なデータソース及び会話と混合されているので、インターネットのＯＴＴ通信に対して依然として非常に優れている。
【０５６６】
静的スクランブル化を改良するために動的スクランブル化を用いた例を図７１Ａに示す。この例では、データパケットがネットワークを横断するに従って、パケットスクランブル化、すなわちＵＳ再スクランブル化操作１０１７が繰り返され、データパケット中のデータセグメントの順番を変更する。これは、所定のルートを伝送される任意のデータパケットにおけるデータセグメント間の位置関係（順番）が、経時的に変化することを意味する。例えば、データパケット伝送ルート１１１３Ａに関しては、通信ノードＮ１，３でのＵＳ再スクランブル化操作１０１７の実施直後の時間ｔ３でのデータパケット１１２６Ａにおいては、データセグメント１Ｅは２番目のスロットに配置されており、４番目のスロットに配置されたデータセグメント１Ｂよりも前に位置している。そして、通信ノードＮ１，４でのＵＳスクランブル化操作１０７の実施後の時間ｔ４では、データパケット１１２７Ａにおいて、データセグメント１Ｂは３番目のスロットに配置されており、４番目のスロットに配置されたデータセグメント１Ｅよりも前に位置している。また、データパケット１１２６Ｄを１１２７Ｄと比較すると、データセグメント１Ｄ及び１Ａの位置が変更されているが、前後の順番は変更されていない。この方法は、特定のソースまたは会話からのデータだけでなく、データパケット中の全てのデータセグメントを動的にスクランブル化する技術を用いる。パケットのアンスクランブル化の直後、かつパケットの再スクランブル化の前に、例えばジャンクデータを挿入または削除することにより、パケットの長さを変更することができる。しかしながら、図示した例では、パケットの長さは固定されており、パケット中のデータセグメントの順番だけが変更されている。
【０５６７】
図示のように、第１の通信ノードＮ０，０では、スクランブル化・分割操作１０７１が実施され、最後の通信ノードＮｆ，ｆでは、混合・アンスクランブル化操作１０７０が実施され、それらの間に介在する全ての通信ノードでは、ＵＳ再スクランブル化操作１０１７が実施される。各場合で、アンスクランブル化操作は、入力パケットの時間またはステートに依存し、スクランブル化操作は、出力パケットの時間またはステートを使用する。並列マルチルート伝送では、分割は、通信ノードＮ０，０において一度だけ行われ、混合も、伝送の終端の通信ノードＮｆ，ｆにおいて一度だけ行われる。方法論的に、この操作順は、「スクランブル化とそれに続く分割操作」と分類される。ここでは順次的または線形的スクランブル化として知られている、図７１Ａに示したような動的スクランブル化の実施形態では、操作順に関わらず、前の操作を解除するためには、その操作を行った順番と逆の順番で行う必要があり、これにより、コンテンツが何であれ、またはコンテンツの送信元または送信先に関わらず、データパケット中の各データセグメントの位置の再配置をアルゴリズム的に行われる。このようにして、分割後の最初の通信ノード、すなわち通信ノードＮ１，１、Ｎ２，１、Ｎ３，１、Ｎ４，１は全て、同一のアンスクランブル化操作を実施し、これにより、スクランブル化・分割操作１０７１によるスクランブル化を解除し、再スクランブル化の前に、データを含む各データセグメントを元の位置に戻す。分割プロセスでは、パケットの位置は、ジャンクデータが入れられた使用しないスロットによって、その元の位置と同じ位置に保たれる。例えば、スクランブル化・分割操作１１１８により、データセグメント１Ｂがパケット中の５番目の位置に移動した場合、データセグメント１Ｂを含んでいる分割後のパケットは、データセグメント１Ｂを５番目の位置に保つ。パケットのアンスクランブル化により、全ての他のスロットにジャンクデータが入れられるとしても、データセグメント１Ｂはその元の位置である２番目のスロットに戻される。その後のデータ復元プロセスにおいて、ジャンクデータパケットは除去（デジャンク）されるので、ジャンクデータの配置変更は意味がない。アンスクランブル化操作により特定のデータセグメントのスロット位置が元の位置に戻されると、再びスクランブル化され、そのデータセグメントは新しい位置に移動する。データセグメントの位置をその元の位置に戻すのと、その後のスクランブル化により新しい位置に移動させることの組み合わせは、アンスクランブル化及びそれに続くスクランブル化を含む「再スクランブル化」プロセスを意味するので、ＵＳ再スクランブル化１０１７と称す。
【０５６８】
図７１Ｂに示した、上述した「線形スクランブル化及びそれに続く分割（線形スクランブル化・分割）」方法（Linear Scramble then Split）の単純化した説明を、本発明の２つの別の実施形態、本明細書では「ネスト化したスクランブル化及びそれに続く分割（ネスト化スクランブル化・分割）」（Nested Scramble & Split）及び「線形分割及びそれに続くスクランブル化（線形分割・スクランブル化）」（Linear Split then Scramble）と称する、と比較する。線形スクランブル化・分割方法では、全てのデータパケットを連続的にかつ繰り返してスクランブル化及びアンスクランブル化することにより、データパケットのセキュリティをリフレッシュする。したがって、スクランブル化・分割操作１０７１で最初に実施されたスクランブル化は、各データパス（括弧によって記号的に示された複数の並列なデータパスまたはルート）において別々に、ＵＳ再スクランブル化操作１０１７により解除しなくてはならない。これは、ＵＳ再スクランブル化操作１０１７においてアンスクランブル化を実施できるように、全ての通信ルートにおける最初の通信ノードに、スクランブル化・分割操作１０７１において分割操作の前のスクランブル化操作を選択及び実施するのに使用された時間、ステート、または数値シードが伝送されることを意味する。その後、各ルートで個別に、そのルートを通るデータパケットのスクランブル化及びアンスクランブル化が行われる。ＵＳ再スクランブル化操作１０１７では常に、前のスクランブル化を実行するのに用いられた時間、ステート、または数値シードが使用され、その後、現在時間、ステート、または数値シードを使用して新しいスクランブル化が実施される。最後のステップの混合・アンスクランブル化操作１０７０では、スクランブル化された構成要素をスクランブル化形態で再合体させ、その後最終的に、最後にスクランブル化のときのステート及び時間を使用してアンスクランブル化し、これにより、元のデータを復元する。
【０５６９】
また図７１Ｂに示すように、「ネスト化スクランブル化・分割」では、スクランブル化・分割操作１０７１により、まず、最初の時間またはステートを使用してデータパケットをスクランブル化し、その後、データを分割して複数のルートに送信する。そして、各データパスにおいて、第１のスクランブル化操作とは無関係に、また、第１のスクランブル化操作を元に戻すことなく、第２のスクランブル化操作９２６を個別に実施する。スクランブル化操作は、スクランブル化済みのデータパケットに対して実施されるので、スクランブル化は、「ネスト化されている」（すなわち、一方のスクランブル化が、他方のスクランブル化の中に組み込まれている）と見なすことができる。ネスト化されたオブジェクトまたはソフトウェアコードについてのプログラミング用語では、スクランブル化・分割操作１０７１により実施される最初のスクランブル化は、「外側」のスクランブル化ループを含むが、第２の及び全ての連続的なスクランブル化、ＵＳ再スクランブル化操作１０１７は、内側スクランブル化ループである。これは、ネットワークを通るデータは２回スクランブル化され、元のデータを復元するためには２回アンスクランブル化する必要があることを意味する。内側スクランブル化ループの最終的なステップは、各ルートのデータパケットを最初のパケット分割の直後と同一の状態、すなわち同一のデータセグメントシーケンスに復元するアンスクランブル化９２８を含む。その後、混合・アンスクランブル化操作１０７０により、データパケットは単一のデータパケットに再構成され、アンスクランブル化される。
【０５７０】
上記のネスト化操作と同じコンセプトを、図７１Ｃに示すネスト化分割・混合操作に用いることができる。クライアントのＳＤＮＰアプリケーション１３３５により、テキスト、映像、音声、データファイル（text, video, voice, data）などの様々なデータソースを、混合し、並べ替え、ジャンクデータを挿入し、スクランブル化し、その後に、ＭＳＥ操作１０７５により暗号化することができる。鍵１０３０Ｗ及びシード９２９Ｗを含むセキュリティ認証情報は、コンテンツを転送するメディアノードを使用することなく、クライアント・セルフォン３２からクライアント・タブレット３３に直接的に送信することができる。例えば、この情報は、「シグナリングサーバ」ネットワーク（後述する）を使用して、受信側クライアントに送信することができる。シード及び鍵は部外者に対して有用な情報を含まないので、このような情報は、インターネットを介して受信側クライアントに送信してもよい。クライアントのデバイスまたはアプリケーションで実施されるこの最初の操作は、ＳＤＮＰネットワークから独立してクライアントのセキュリティを実現するのに使用される外側ループ（Outer Loop (Clients Security)）の開始を表す。
【０５７１】
混合、ジャンク化、スクランブル化、及び暗号化が行われた後、判読不能なクライアントサイファテキスト１０８０（Client Ciphertex）は、ＳＤＮＰゲートウェイサーバＮ０，０に送信され、別の共有秘密、別のアルゴリズム、ステート、及びネットワーク固有セキュリティ認証情報（ＳＤＮＰクラウドを通じて伝送されるシード９２９Ｕ、鍵１０３０Ｕなど）を使用して再度処理される。この内側ループ（Innerr Loop (Network Security)）は、クラウドサーバのセキュリティを容易にし、また、クライアントセキュリティループから完全に独立している。入力データパケットに対するゲートウェイＳＳＥ操作１１４０の一部として、データパケットは、マルチルート伝送またはメッシュ伝送のために、２回目のスクランブル化を施され、別個のサブパケットに分割され、サイファテキスト１０８０Ｕ及び１０８０Ｖに暗号化される。
【０５７２】
最終的には、複数のサブパケットは、送信先のゲートウェイＮｆ，ｆに到着し、そこで、ＤＭＵ操作１１４１により処理され、最初のゲートウェイでの分割操作による変更が元に戻される。すなわち、ＤＭＵ操作１１４１は、内側セキュリティループ操作を完了するＳＳＥ操作１１４９による変更を元に戻す。したがって、ゲートウェイＮｆ，ｆは、入力ゲートウェイＮ０，０により実施された全てのネットワーク関連セキュリティ対策を元に戻し、元のファイルを復元する。この場合では、サイファテキスト１０８０Ｗを、ＳＤＮＰクラウドに入力されたときと同じ状態に戻す。
【０５７３】
このデータパケットは、混合・スクランブル化・暗号化が済んでいるので、サイファテキスト１０８０Ｗを含んでいる。したがって、ＳＤＮＰゲートウェイから出力され、受信側クライアントに送信されるデータパケットは、依然として暗号化されており、受信側クライアントアプリケーション１３３５以外には解読不能である。復元されたサイファテキストは、その後、時間ｔ０で生成された送信側クライアントステート９９０（Outgoing State 990）に従って、ＤＵＳ操作１０７６により復号及びアンスクランブル化される。そして、最終的には、テキスト、映像、音声、データファイルなどの様々なデータソースを復元するために分割され、これにより、外側セキュリティループは終了する。
【０５７４】
したがって、ネットワーク破壊、すなわちサイバー犯罪者がＳＤＮＰネットワークのオペレータを装ってＳＤＮＰセキュリティを「内側」から破壊することを阻止するために、外側ループセキュリティの認証情報、すなわち共有秘密、シード、鍵、セキュリティゾーンなどは、意図的に、内側セキュリティループの認証情報とは異なるように作成される。
【０５７５】
図７１Ｂに示す本発明の別の実施形態では、「線形分割・スクランブル化」のプロセスにおいては、データを分割した後、各データルートにおいて個別にスクランブル化する。つまり、データ分割操作１０５７の後、データルート毎に、スクランブル化操作９２６が行われる。そして、各ルートを伝送されるスクランブル化されたデータパケットは、ＵＳ再スクランブル化操作１０１７により再スクランブル化される。ＵＳ再スクランブル化操作１０１７では、入力パケットは、スクランブル化操作９２６で入力パケットの生成に使用されたのと同一の時間、ステート、または数値シードを使用してアンスクランブル化される。その後、各ルートで個別に、そのルートを通るデータパケットのスクランブル化及びアンスクランブル化が行われる。ＵＳ再スクランブル化操作１０１７では常に、前のスクランブル化を実行するのに用いられた時間、ステート、または数値シードが使用され、その後、現在の時間、ステート、または数値シードを使用して新しいスクランブル化が実施される。最後のステップのアンスクランブル化操作９２８では、各ルートのデータパケットをその元の状態に、すなわち、最初のパケット分割の直後と同一のデータセグメント配列に復元する。データパケットはその後、混合操作１０６１により、単一のアンスクランブル化データパケットに再構成される。
【０５７６】
混合及びスクランブル化の実施順に関わらず、高いセキュリティを容易にするために、処理されたデータパケットの静的または動的な暗号化が行われる。この組み合わせの一例を図７２に示す。図７２に示す「静的なスクランブル化及びそれに続く分割並びに動的な暗号化」方法は、下記のステップを含む。
（１）スクランブル化されていないプレーンテキストの入力により開始される。
（２）時間ｔ１で、静的パケットスクランブル化９２６により、スクランブル化されていないプレーンテキスト（Unscrambled Plaintext）１０５５をスクランブル化する。
（３）時間ｔ２で、分割操作１１０６により、スクランブル化されたプレーンテキスト（Scrambled Plaintext）１１３０を複数の分割化データパケット１１３１Ａ、１１３３Ａ・・・に分割する。
（４）時間ｔ３で、分割されたデータパケット１１３１Ａを、互いに異なりかつ互いに重複しない複数の並列ルートに出力する（Split Scrambled Plaintext）。図７２では、これらの並列ルートのうちの２つのみを図示していることに留意されたい。
（５）時間ｔ4で、暗号化操作１０２６により、ステート９９４に対応する数値シード及び暗号化鍵を使用してデータパケット１１３１Ａ、１１３３Ａ・・・を個別に暗号化し、サイファテキスト（Ciphertext）１１３２Ａ、１１３４Ａ・・・を生成する。
（６）時間ｔ５で、復号操作１０３２により、共有秘密、鍵、数値シードなどのステート９９４情報を使用してデータパケット１１３２Ａ、１１３４Ａ・・・を個別に復号し、復号されたプレーンテキスト１１３１Ｂ、１１３３Ｂ...を生成する。
（７）時間ｔ６で、暗号化操作１０２６により、ステート９９６に対応する数値シード及び暗号化鍵を使用して復号されたプレーンテキスト１１３１Ｂ、１１３３Ｂ・・・を個別に再暗号化し、サイファテキスト（Ciphertext）１１３２Ｂ、１１３４Ｂ・・・を生成する。
（８）復号操作１０３２により、共有秘密、鍵、数値シードなどのステート９９６情報を使用してデータパケット１１３２Ｂ、１１３４・・・を個別に復号し、復号されたプレーンテキスト１１３１Ｃ、１１３３Ｃ...を生成する。
（９）時間ｔ７で、混合操作１０８９により、復号されたプレーンテキスト１１３１Ｃ、１１３３Ｃ・・・を混合し、スクランブル化プレーンテキスト１１３０を生成する。
（１０）時間ｔ８で、最初のスクランブル化を実施した時間ｔ１に対応するステート９９１を使用して、スクランブル化されたプレーンテキスト１１３０をアンスクランブル化し、スクランブル化されていない元のプレーンテキスト１０５５を生成する。
図示した例では、最初のデータパケット操作は、スクランブル化、分割、及び暗号化の順の操作（操作１１４０）を含む。最後の操作は、復号、混合、アンスクランブル化の順の操作（操作１１４１）を含む。全ての中間ステップは、復号、暗号化の順の操作からなる再暗号化の操作を含む。
【０５７７】
この方法をマルチルート伝送に用いた例を図７３に示す。この例では、通信ノードＮ０，０は、スクランブル化・分割・暗号化操作１１４０Ａ（Scramble Split & Encrypt）を実施し、通信ノードＮｆ，ｆは、混合・アンスクランブル化・復号操作１１４１Ａ（Mix & Unscramble、Decrypt）を実施し、他の全ての中間ノードは、再暗号化操作１０７７を実施する。本発明に係るマルチルート伝送では、静的及び動的なスクランブル化と、静的及び動的な暗号化との様々な組み合わせが可能である。
【０５７８】
スクランブル化・分割・暗号化操作に対するオプションとして、本発明の別の実施形態では、図７４に示すように、分割・スクランブル化・暗号化操作１１４０Ｂにより、データパケットは、分割された後にスクランブル化及び暗号化される。この方法では、まず、入力データパケットは、分割操作１１０６により分割される。続いて、各ルートにおいて、データパケットは、スクランブル化操作９２６により個別にスクランブル化され、その後、暗号化操作１０２６により暗号化される。このようにして生成されたデータパケットはその後個別に、再暗号化操作（Re-Encryption）１０７７により復号及び再暗号化されるか、またはＤＵＳＥ再パケット化操作（DUSE Re-Packet）１０４５により復号・アンスクランブル化・再スクランブル化・再暗号化される。
【０５７９】
後述するメッシュルーティングとは対照的に、図６９−図７３に例示したマルチルート伝送では、ネットワークを横断する各データパケットは、所定の通信ノードで一度だけ処理され、どの通信ノードも、関連するデータまたは一般的な会話を伝送する１以上のデータパケットを処理しない。すなわち、データルート１１１３Ａ、１１１３Ｂ、１１１３Ｃ、及び１１１３Ｄは互いに別個であり、重複していない。
【０５８０】
［メッシュルーティング］
再び図６８Ａに戻り、本開示に係るメッシュルーティング及び伝送は、並列マルチルート伝送と同様であるが、様々なデータパスを通ってネットワークを横断するデータパケットが同一サーバのデータパスを通過する点が異なる。本開示に係る静的なメッシュルーティングでは、データパケットは、まるで他の会話または通信データが存在さえしないかのように、共通サーバを相互作用することなく通過する。しかし、動的なメッシュルーティングでは、データパケットは、通信ノードに入ったときに、そのサーバ内に存在する他のデータパケットと相互作用する。
【０５８１】
上述した分割・混合方法を用いて、あるデータパケットからデータセグメントのグループを分割または除去し、別のデータパケットと組み合わせ（混合し）、そのデータパケットの送信元とは異なる送信先に向けて送信することができる。本発明に係るメッシュルーティングは、可変長または固定長データパケットを使用することができる。可変長パケットでは、データパケットに含まれるデータセグメントの数は、所定の通信ノードを通過するトラヒック量に基づいて変更される。固定長パケットのメッシュ伝送では、完全なデータパケットを構成するのに使用されるデータセグメントの数は、ある定数に固定されるか、または、量子化整数インクリメントにより調節された所定のデータセグメント数に固定される。
【０５８２】
可変長データパケット及び固定長データパケットの使用における主な違いは、パケットフィラーとしてのジャンクデータの使い方である。可変長データパケットでは、ジャンクデータの使用は、純粋に任意選択であり、主に、セキュリティの観点に基づいて、またはネットワーク伝搬遅延をモニタするために未使用のデータパスを用いるために使用される。一方、固定長データパケットでは、ジャンクデータの使用は必須である。ジャンクデータを使用しないと、通信ノードから出力されるパケットに充填するに用いられる適切な数のデータセグメントを確保することはできないからである。したがって、ジャンクデータは、サーバから出力される各データパケットが、ネットワークを通じて送信先に向けて送信される前に特定の長さに充填されていることを確実にするために、パケットフィラーとして頻繁に使用される。
【０５８３】
通信ネットワーク１１１２を介した静的メッシュデータ伝送の一例を図７５に示す。この例では、データパケット１０５５は、時間ｔ０で通信ノードＮ０，０により、４つの可変長パケット、具体的には、データセグメント１Ｆを含むデータパケット１１２８Ａ、データセグメント１Ｃを含むデータパケット１１２８Ｂ、データセグメント１Ａ及び１Ｄを含むデータパケット１１２８Ｃ、及びデータセグメント１Ｂ及び１Ｅを含むデータパケット１１２８Ｄに分割される。これらのデータセグメントは、別の可変長パケット及び会話からの別のデータセグメントと組み合わされる。明確にするために、別の会話からのデータセグメントは意図的に省略している。
【０５８４】
静的伝送中は、データパケットのコンテンツ、すなわちデータセグメントは、ネットワークを横断しても変更されない。例えば、データセグメント１Ｆを含むデータパケット１１２８Ａは、通信ノードＮ０，０から、通信ノードＮ１、１、Ｎ２，１、Ｎ３，２、Ｎ３，３、Ｎ４，３、Ｎ４，４の順に伝送されて最終通信ノードＮｆ，ｆに到着し、最終的には、時間ｔｆで、最終通信ノードＮｆ，ｆにおいて、パケット１１２８Ｂ、１１２８Ｃ、及び１１２８Ｄと混合されてデータパケット１０５５が再生成（復元）される。同様に、データセグメント１Ａ及び１Ｄを含むデータパケット１１２８Ｃは、通信ノードＮ０，０から、通信ノードＮ３、１、Ｎ２，３、Ｎ１，４の順に伝送されて最終通信ノードＮｆ，ｆに到着し、最終的には、時間ｔｆで、最終通信ノードＮｆ，ｆにおいて、パケット１１２８Ａ、１１２８Ｂ、及び１１２８Ｄと混合される。静的メッシュ伝送中は、複数のデータパケットは、混合または相互作用することなく、共通のサーバを通過する。例えば、通信ノードＮ２、１を通過するデータパケット１１２８Ａ及び１１２８Ｂ、通信ノードＮ２、３を通過するデータパケット１１２８Ｂ及び１１２８Ｃ、及び通信ノードＮ３、３を通過するデータパケット１１２８Ａ及び１１２８Ｄは、互いに阻害したり、コンテンツが変更されたり、またはデータセグメントが交換されたりすることはない。
【０５８５】
データパスは、様々な長さであり得、互いに異なる遅延時間を有し得るので、あるデータパケットが、別のデータパケットよりも先に、最終通信ノードＮｆ，ｆに、到着する場合がある。このような場合、本発明では、通信ノードＮｆ，ｆは、先に到着したデータパケットを、それに関連する別のデータパケットが到着するまで一時的に保持しなければならない。また、図示した例では、元のデータパケット１０５５の最終的な混合及び復元が、通信ノードＮｆ，ｆで行われることが示されているが、実際には、最終的なパケットの再構成、すなわち混合は、ネットワークに接続された、デスクトップ（デスクトップ型コンピュータ）、ノートブック（ノート型コンピュータ）、タブレット、セットトップボックス、セルフォン（スマートフォン）、自動車、冷蔵庫、または他のハードウェアなどのデバイスにおいて行うことができる。換言すれば、メッシュ伝送に関しては、通信ノードと、それに接続されたデバイスとの間の区別はない。すなわち、通信ノードＮｆ，ｆは、本物の大容量サーバの代わりに、デスクトップコンピュータであってもよい。本開示に係るＳＤＮＰクラウドへのデバイスの接続、すなわちラストマイル接続の詳細については後述する。
【０５８６】
上述した静的ルーティングは、スクランブル化、暗号化、またはそれらの組み合わせを含む上述した本開示のＳＤＮＰ方法のいずれかと組み合わせることができる。例えば、図７６に示す例では、可変長静的メッシュルーティングは、静的スクランブル化と組み合わされる。図示したように、スクランブル化されていないデータパケット１０５５は、時間ｔ１で、スクランブル化されたプレーンテキストデータパケット１１３０に変換され、その後、通信ノードＮ０，０により分割される（Split）。分割されたパケットはその後、ジャンクデータと混合され、ネットワーク１１２２を通じて送信される。ルーティングは、上述の例と同様であるが、ルーティングの前にデータセグメント配列が意図的に変更され、ジャンクデータセグメントと混合される点が異なる。例えば、ジャンクパケットを介在させることにより互いに離間されたデータセグメント１Ｄ及び１Ａを含むデータパケット１１３２Ｃは、通信ノードＮ０，０から、通信ノードＮ３，１、Ｎ２，３、Ｎ１，４の順に伝送されて最終通信ノードＮｆ，ｆに到着し、最終的には、時間ｔｆで、最終通信ノードＮｆ，ｆにおいて、パケット１１２８Ａ、１１２８Ｂ、及び１１２８Ｄと混合されてデータパケット１０５５が再生成（復元）される（Mix）。同様に、データセグメント１Ｅ及び１Ｂをその順番で含むデータパケット１１３２Ｄは、通信ノードＮ０，０から、通信ノードＮ４，１、Ｎ４，２、Ｎ３，３、Ｎ２，４の順に伝送されて最終通信ノードＮｆ，ｆに到着し、最終的には、時間ｔｆで、最終通信ノードＮｆ，ｆにおいて、パケット１１２８Ａ、１１２８Ｂ、及び１１２８Ｃと混合される。この最終ノードでは、混合・デジャンク操作中は、ジャンクデータの除去を行うことにより、元のスクランブル化データ１１３０が生成される。そして、アンスクランブル化後に、元のデータ１０５５が復元される。
【０５８７】
本発明に係る動的メッシュ伝送を実施するためには、各通信ノードにおいてパケットを処理して、各パラメータのコンテンツ及び伝送方向を変更しなければならない。この処理は、複数の入力データパケットを合体させ、単一の長いデータパケットを生成するか、または同一のサブパケットを含むデータバッファを使用してあたかも長いデータパケットが生成されたかのようにし、その後、これらのパケットを互いに異なる組み合わせに分割し、互いに異なる送信先に送信することを含む。このプロセスは、上述したように、可変長または固定長パケットを使用することができる。図７７Ａは、通信ノードＮａ，ｂ、Ｎａ，ｄ、Ｎａ，ｆ、Ｎａ，ｈを含むＳＤＮＰ通信ネットワークを示す。上記の各通信ノードは、ネットワーク「Ａ」内に存在し、可変長パケット１１２８Ｂ、１１２８Ｄ、１１２８Ｆ、及び１１２８Ｈを通信ノードＮａ，ｊに送信する。通信ノードＮａ，ｊでは、混合操作１０８９が行われ、パケットを合体させて、短いまたは長いデータパケット１０５５を生成する。パケット１０５５はその後、通信ノードＮａ，ｊにおいて分割操作１１０６により分割され、これにより生成された新しい可変長データパケット１１３５Ｎ、１１３５Ｑ、及び１１３５Ｓが、通信ノードａ，ｎ、Ｎａ，ｑ、Ｎａ，ｓに送信される。通信ノードＮａ，ｖには、データが送信されないか、またはジャンクデータ１１３５Ｖが送信される（none/junk）。いずれの場合でも、入力データの長さは可変であり、パケットは、図示しない他の通信、会話、コミュケからのジャンクデータを含み得る。図示のように、混合操作１０８９と分割操作１１０６との組み合わせは、通信ノードＮａ，ｊにより実施され、これにより、データ混合・分割操作１１４８による動的なメッシュルーティングが容易になる。後述する方法によって、新しい分割パケット１１３５Ｎ、１１３５Ｑ、１１３５Ｓ、及び１１３５Ｖ（ジャンクデータを含むと仮定する）及びそれらのルーティングは、ＳＤＮＰネットワークによりまたは予め定められたアルゴリズムを使用して通信ノードＮａ，ｖに送信された動的な命令、またはそのような入力命令及び入力信号が存在しない場合は静的な命令によって決定される。
【０５８８】
入力パケットを処理（すなわち混合）した後に分割して様々な組み合わせの新しいパケットを生成するためには、通信ノードＮａ，ｊは、入力データが到着する前に、処理するべきデータパケットをどのようにして識別し、どのような処理を行うかという命令を受信しなければならない。これらの命令は、共有秘密としてローカルに保管された所定のアルゴリズム、すなわち予め定められたアルゴリズムまたは命令のセットを含む。または、操作シーケンスは、理想的にはデータを伝送するサーバではなくルーティングを制御する別のサーバからノードに事前に送信された「動的な」制御命令に明示的に定義されている。入力データに対して何をするべきかという命令がデータストリーム中に（メディアまたはコンテンツの一部として）埋め込まれている場合、ルーティングは、「単一チャンネル」通信と称される。データパケットのルーティングが別のサーバにより決定され、メディアサーバに通信される場合、データルーティングは、「デュアルチャンネル」（または、場合によってはトリチャンネル）通信と称される。単一及びデュアル／トリチャンネル通信の操作の詳細については後述する。
【０５８９】
命令が伝送される方法に関わらず、メディアノードは、入力データを認識し、特定のデータパケットに関する命令を取得しなければならない。この識別情報または「タグ」は、対象となるパケットを識別するための、郵便番号または宅配便のルーティングバーコードのような役割を果たす。しかしながら、図７７Ａに示した入力データパケット１１２８Ｂ、１１２８Ｄ、１１２８Ｆ、及び１１２８Ｈは、パケットの音声またはテキストのコンテンツのみを示し、タグは示さない。パケットヘッダー内に存在するタグ付けされたデータを使用して、特定のデータパケットを識別し、入力データパケットの混合方法を決定する処理は、図６７Ｉを参照して上述した。データパケット内に含まれるタグ及びルーティング情報の特定の例については、後述する。通信ノードＮａ，ｊは、処理対象のデータパケットを識別するための情報、並びに、混合操作１０８９及び分割操作１１０６で使用するアルゴリズムについての情報を取得した後に、入力データの処理が可能となる。
【０５９０】
固定長データパケットの場合の、図７７Ａと同等の操作例を図７７Ｂに示す。この例では、通信ノードＮａ，ｂ、Ｎａ，ｄ、Ｎａ，ｆ、及びＮａ，ｈは全てネットワーク「Ａ」中に存在しており、固定長データパケット１１５０Ｂ、１１５０Ｄ、１１５０Ｆ、及び１１５０Ｈを通信ノードＮａ，ｊに送信する。通信ノードＮａ，ｊでは、混合・分割操作１１４８が実施され、これにより、新しい固定長データパケット１１５１Ｎ、１１５１２Ｑ、及び１１５１Ｓが生成され、生成された各データパケットは、通信ノードａ，ｎ、Ｎａ，ｑ、Ｎａ，ｓに送信される。通信ノードＮａ，ｖには、データが送信されないか、またはジャンクデータ１１５１Ｖが送信される（none/junk）。いずれの場合でも、入力データの長さは固定されており、データパケットの固定長を維持するために、入力データは、必然的に、ジャンクデータフィラーまたは図示しない他の会話または通信からのデータを含む。すなわち、入力データは、予め定められた数のデータセグメントを含む。
【０５９１】
ネットワークレイヤ３プロトコルにおいて説明したサーバの相互接続は、無数の接続を含み、各通信ノードの出力は、別の通信ノードの入力に接続される。例えば、図７７Ｃに示すように、通信ノードＮａ，ｂの出力は、通信ノードＮａ，ｊ、Ｎａ，ｑ、Ｎａ，ｖ、及びＮａ，ｆの入力に接続される。混合・分割操作１１４９Ｑを実施する通信ノードＮａ，ｑの出力は、通信ノードＮａ，ｂ、Ｎａ，ｊ、Ｎａ，ｆ、及び図示しない別の通信ノードの入力に接続される。同様に、混合・分割操作１１４９Ｆを実施する通信ノードＮａ，ｆの出力は、通信ノードＮａ，ｑ、Ｎａ，ｊ、Ｎａ，ｖ、及び図示しない別の通信ノードの入力に接続され、混合・分割操作１１４９Ｊを実施する通信ノードＮａ，ｊの出力は、通信ノードＮａ，ｑ、Ｎａ，ｖ、及び図示しない別の通信ノードの入力に接続され、混合・分割操作１１４９Ｖを実施する通信ノードＮａ，Vの出力は、通信ノードＮａ，ｆ、及び図示しない別の通信ノードの入力に接続される。
【０５９２】
出力・入力接続はネットワーク記述であり、単なるＰＨＹレイヤ１接続または回路ではないので、デバイス間のこれらのネットワーク接続は、上述したネットワークまたはクラウドに対するレイヤ１ＰＨＹ接続及びレイヤ２データリンクを有する任意のデータについて随意に確立及び解除することができる。また、この接続は、可能性があるネットワーク通信パスを表し、固定された恒久的な電気回路ではないので、通信ノードＮａ，ｂの出力が通信ノードａ，ｑの入力に接続され、通信ノードａ，ｑの出力が通信ノードａ，ｂの入力に接続されるという事実は、電気回路の場合のようにフィードバックまたは競合状態を形成しない。
【０５９３】
実際、ネットワークに電気的に接続された任意のコンピュータを、ソフトウェアを使用して、随意に、通信ノードとして動的に追加または除去することができる。ネットワークへのコンピュータの接続は、ネームサーバまたはネームサーバ機能を実施する任意のサーバに通信ノードを「登録」することを含む。背景技術の欄で説明したように、インターネットでは、ネームサーバは、ＩＰｖ４またはＩＰｖ６フォーマットを使用したネットワークアドレスとしての電気的識別子を識別するコンピュータネットワークである。最上位のインターネットネームサーバは、グローバルＤＮＳ（ドメインネームサーバ）である。いくつかのコンピュータは、リアルインターネットアドレスを使用せず、その代わりにＮＡＴ（ネットワークアドレストランスレータ）により割り当てられたアドレスを有する。
【０５９４】
同様に、本開示のセキュア動的ネットワーク及びプロトコルは、ネームサーバ機能を使用して、ＳＤＮＰネットワーク中の各デバイスを追跡する。ＳＤＮＰ通信ノードが起動されるたびに、またはコンピュータ用語では、ＳＤＮＰノードのソフトウェアがブートアップされるたびに、新しいデバイスは、それがオンラインであり通信可能であることを他のＳＤＮＰノードに知らせるために、該デバイスをネットワークのネームサーバに動的に登録する。トリチャンネル通信では、ＳＤＮＰネームサーバは、命令及び制御に使用されたサーバ（すなわちシグナリングサーバ）、及び実際の通信コンテンツを伝送するメディアサーバから分離される。単一チャンネル通信では、一連のサーバは、ネームサーバのタスクと、制御ルーティング及びコンテンツ伝送との両方を実施しなければならない。したがって、本明細書中に説明した３種類のＳＤＮＰシステム、単一チャンネル、デュアルチャンネル、トリチャンネルは、伝送、シグナリング、及びネーミング機能に使用されるサーバによって互いに区別される。単一チャンネルシステムでは、通信ノードサーバは、３つの機能を全て実施する。デュアルチャンネルシステムでは、シグナリング及びネーミング機能は、伝送機能から分離され、シグナリングサーバにより実施される。トリチャンネルシステムでは、ネーミング機能は、伝送及びシグナリング機能から分離され、ネームサーバにより実施される。実際には、所定のＳＤＮＰネットワークは、一様である必要はなく、単一チャンネルの部分、デュアルチャンネルの部分、及びトリチャンネルの部分などの複数の部分に細分されていてもよい。
【０５９５】
オンラインになった任意の新しいＳＤＮＰ通信ノードは、そのＳＤＮＰアドレスをネームサーバに通知することにより、該ノードを登録する。このアドレスは、インターネットアドレスではなくＳＤＮＰネットワークのみが知るアドレスであり、インターネットを通じてアクセスすることはできない。ＮＡＴアドレスと同様に、ＳＤＮＰアドレスは、インターネットプロトコルに従うにも関わらず、インターネットにとっては意味を持たないためである。したがって、本開示に係るセキュア動的ネットワーク及びプロトコルを使用する通信は、「アノニマス」通信と称することができる。インターネット上でＩＰアドレスが認識されず、前のＳＤＮＰアドレスと次のＳＤＮＰアドレス（すなわち、パケットの次の送信先）のみが、所定のパケット中に存在するからである。
【０５９６】
ＳＤＮＰネットワークの重要な実施形態は、一日の任意の時間でのトラヒックの増減に応じて、クラウドの利用可能な帯域幅の総量を自動的に調節する機能である。トラヒックが増加したときにはＳＤＮＰ通信ノードがネットワークに追加され、トラヒックが減少したときにはＳＤＮＰ通信ノードがネットワークから削除され、これにより、安定性及び性能を損なうことなしにネットワークコストが最小化される。
【０５９７】
この特徴は、本開示に係るＳＤＮＰネットワークの帯域幅及び広がりが、操作コストが最小となるように動的に調節されること、すなわち、利用されないノードの使用されないコンピュートサイクルには支払わず、需要がそれを要求したときに能力を増加させることを意味する。ＳＤＮＰネットワークのソフトウェアにより実施される、すなわち「ソフトスイッチ」実施形態の利点は、現在依然として一般的な、ハードウェアにより実施されるパケット交換通信ネットワークの固定ハードウェア及び高コストと対して著しく対照的である。ソフトスイッチにより実現されたネットワークでは、ＳＤＮＰ通信ソフトウェアがロードされ、ネットワークまたはインターネットに接続された任意の通信ノードは、必要に応じてＳＤＮＰに追加することができる。例えば、図７７Ｄに示すように、例ノードまたはその接続部を横断する通信についてのトラヒックの要求が生じたときに、コンピュータサーバ１１４９Ｄ、１１４９Ｂ、１１４９Ｆ、１１４９Ｑ、１１４９Ｈ、１１４９Ｎ、１１４９Ｊ、１１４９Ｓ、及び１１４９Ｖを、対応する通信ノードＮａ，ｄ、Ｎａ，ｂ、Ｎａ，ｆ、Ｎａ，ｑ、Ｎａ，ｈ、Ｎａ，ｎ、Ｎａ，ｊ、Ｎａ，ｓ、及びＮａ，ｖに追加することができる。
【０５９８】
したがって、ＳＤＮＰクラウドの各リンクは、レイヤ１ＰＨＹとそれに対応するデータリンクレイヤ２との常にオンの物理的接続であると見なすことができ、ＳＤＮＰが新しい通信ノードを必要に応じて起動（すなわち駆動）するときにのみ確立されるレイヤ３ネットワーク接続と組み合わされる。したがって、ソフトスイッチベースＳＤＮＰクラウド自体は調節可能及び動的であり、要求に応じて変更される。帯域幅及び信頼性が未知ですらある任意のデバイスまたはコンピュータを通じてデータがリレーされるピアツーピアネットワークとは異なり、各ＳＤＮＰ通信ノードは、事前に選択されたデバイスであり、ＳＤＮＰソフトスイッチソフトウェアがロードされており、ＳＤＮＰクラウドへの参加を完全に認証されており、情報コンテンツ（例えば共有秘密）及びシンタックス（例えばヘッダーの特定のフォーマット）を含む、それの予め設定されたセキュア通信プロトコルを使用してデータを伝送する。共有秘密は、アルゴリズム、シード生成器、スクランブル化方法、暗号化方法、及び混合方法を表すが、ＳＤＮＰデータパケット全体のフォーマットは規定しない。セキュリティ設定、すなわち特定の時間及び特定の通信に使用される設定は、共有秘密の種類であるが、共有秘密は、未使用のものも含むアルゴリズムの全リストも含む。ソフトウェアは暗号化されており、暗号化及び共有秘密は動的に処理されるので、ＳＤＮＰコードが例えばＡｍａｚｏｎ（登録商標）やＭｉｃｒｏｓｏｆｔ（登録商標）などの公的なクラウドにホストされている場合でも、サーバのオペレータは、伝送される全データ量以外は、ＳＤＮＰ通信ノードをトラヒックするデータのコンテンツをモニタする手段がない。
【０５９９】
動的ネットワークの自然な延長として、セルフォン、タブレット、ノートブック（ノート型パソコン）などの新しいＳＤＮＰクライアントも、その起動時に、ＳＤＮＰネームサーバまたはゲートウェイに自動的に登録される。したがって、ＳＤＮＰクラウドだけでなく、接続に利用可能な様々なクラウドも、接続されたネットワーク及びアクティブなユーザの数を正確に反映して、常に自動的に調節される。
【０６００】
［スクランブル化または暗号化されたメッシュルーティング］
動的な自律的機能をサポートするために、各ＳＤＮＰ通信ノードは、データの混合・分割、スクランブル化・アンスクランブル化、暗号化・復号の予め定められた組み合わせを並列に実行し、これにより、複数の会話、通信、及びセキュリティのセッションを同時にサポートする。ＳＤＮＰネットワークのソフトスイッチ実施形態では、全ての操作が実施され、それらの操作を実施する順番は、データパケットにより伝送された共有秘密により定義された、またはメディアの伝送に使用されるＳＤＮＰ通信ノードから独立した別個の命令及び制御用の並列信号チャンネルにより定義されたソフトウェアベース命令を通じて完全に設定されている。様々な順番及び組み合わせ可能であるが、ここに示した例は、ＳＤＮＰベース通信のフレキシビリティを表すことを意図しており、説明された様々なＳＤＮＰ操作の適用を、データ処理ステップの特定の順番に限定するものではない。例えば、スクランブル化は、混合または分割の前または後に実施することができる。また、暗号化は、全操作における最初、最後、または中間に実施することができる。
【０６０１】
このような操作の例として、再スクランブル化・混合・分割操作１１１５を図７８Ａに示す。この例では、一連の特定のＳＤＮＰ操作が、通信ノードＮａ，ｂ、Ｎａ，ｄ、Ｎａ，ｆ、及びＮａ，ｈから入力された、スクランブル化されていない複数の入力データパケットに対して実施される。各入力データパケットは、混合・分割操作１１４８により混合された後に分割され、これにより生成された新しいデータパケットは、その後、スクランブル化操作９２６により再スクランブル化される。これにより生成された生成されるパケットは、メッシュ通信ネットワークに送信される。図７８Ｂに示すように、各入力に対する複数の独立したアンスクランブル化操作９２８と、それに続く混合操作１０８９との組み合わせのシーケンスを「メッシュ入力のアンスクランブル化・混合」操作１１５６Ａと称する。便宜上、このシーケンスを、アンスクランブル化・混合操作１１６１によって記号的に表す。
【０６０２】
図７８Ｃに示す、アンスクランブル化・混合操作と逆の操作である「メッシュ出力のための分割・スクランブル化」操作１１５６Ｂは、分割操作１１０６によりデータパケットを分割した後に、各出力に対して、複数の独立したスクランブル化操作９２６を実施することを含む。便宜上、このシーケンスは、分割・スクランブル化操作１１６２によって記号的に表す。図７８Ｄに示すように、この２つのシーケンスの組み合わせ、すなわち、メッシュ入力のアンスクランブル化・混合操作１１５６Ａと、それに続くメッシュ出力のため分割・スクランブル化操作１１５６Ｂとの組み合わせを、メッシュ伝送のための「再スクランブル化及び再混合」操作１１６３として記号的に示す。
【０６０３】
上述した、メッシュ入力のアンスクランブル化・混合操作１１６１と、それに続くメッシュ出力のため分割・スクランブル化操作１１６２を図７９Ａに示す。図示のように、通信ノードＮａ，ｂ、Ｎａ，ｄ、Ｎａ，ｆ、及びＮａ，ｈから入力された固定長データパケット入力１１５７Ｂ、１１５７Ｄ、１１５７Ｆ、及び１１５７Ｈは、通信ノードＮａ，ｊにおいてメッシュ入力のアンスクランブル化・混合操作１１６１により処理され、これにより長いデータパケット１１６０が生成される。操作１１６１は、入力データパケットを混合操作の前に個別にアンスクランブル化する操作を含むが、このステップは不要なのでスキップした。固定長データパケット入力１１５７Ｂ、１１５７Ｄ、１１５７Ｆ、及び１１５７Ｈは、スクランブル化されないためである。長いデータパケット１１６０は、次に、分割・スクランブル化操作１１６２により処理され、これにより生成された混合・スクランブル化されたデータパケット１１５８Ｎ、１１５８Ｑ、１１５８Ｓ、及び１１５８Ｖは、メッシュ伝送のために、対応する通信ノードにＮａ，ｎ、Ｎａ，ｑ、Ｎａ，ｓ、及びＮａ，ｖに送信される。
【０６０４】
スクランブル化された固定長入力データパケット１１６５Ｂ、１１６５Ｄ、１１６５Ｆ、及び１１６５Ｈに対しての、図７９Ａに示した上記の例と同一のメッシュ伝送のための同一の混合・分割操作を図７８Ｂに示す。これらのデータパケットは、識別番号を持たないデータセグメントにより示されるジャンクデータセグメントを含んでいる。通信ノードＮａ，ｊでのアンスクランブル化・混合操作１１６１により、図７９Ａに示した上記の例よりも短いパケット１１６６が生成される。これは、ジャンクデータが意図的に除去されたためである。本発明の別の実施形態では、ジャンクパケットは維持される。長いパケット１１６６は、次に、分割・スクランブル化操作１１６２により処理され、これにより生成された複数のデータパケット出力１１６５Ｎ、１１６５Ｑ、１１６５Ｓ、及び１１６５Ｖは、メッシュ伝送のために、対応する通信ノードにＮａ，ｎ、Ｎａ，ｑ、Ｎａ，ｓ、及びＮａ，ｖに送信される。これらのデータパケット出力は、データパケットを所定数のデータセグメントで満たすために、ジャンクデータが再挿入されている。一般的には、データパケット１１６５Ｎ及び１１６５Ｓに示すように、ジャンクデータセグメントはデータパケットの末端に挿入することが好まくかつ容易であるが、アルゴリズムの規定に応じて、ジャンクパケットは、データパケットにおける任意の位置、例えば、データパケット１１６５Ｖに示すように、データパケットの先端に挿入してもよい。
【０６０５】
本発明による、ＳＤＮＰ通信ソフトウェアを実行する相互接続されたコンピュータサーバ１１１８を含む通信ネットワーク１１１４における静的スクランブル化による動的メッシュデータ伝送の例を図８０に示す。通信ノードＮ０，０は、スクランブル化・分割操作１１６２（Scramble & Split）を実施し、通信ノードＮｆ，ｆは、混合・アンスクランブル化操作１１６１（Mix & Unscramble）を実施し、他の全ての通信ノードは、再スクランブル化・再混合操作１１６３を実施する。この例では各サーバは単一の操作のみを実施することが示されているが、コンピュータサーバ１１１８にインストールされたＳＤＮＰソフトウェアは必要に応じて、スクランブル化・分割操作１１６２、アンスクランブル化・混合操作１１６１、再スクランブル化・再混合操作１１６３、及び本明細書中に開示した他の操作を含む任意のＳＤＮＰ機能を実施できることを理解されたい。
【０６０６】
実施においては、まず、入力データパケット１０５５が、時間ｔ１で、通信ノードＮ０，０によりスクランブル化され、これにより、スクランブル化データパケット１１３０が生成される。生成されたスクランブル化データパケット１１３０は、可変長の４つのパケット、具体的には、データセグメント１Ｆを含み、１番目のスロットにジャンクデータを含むデータパケット１１７０Ａ、データセグメント１Ｃを含むデータパケット１１７０Ｂ、データセグメント１Ａ、１Ｄをその逆の順番（すなわち、１Ｄ、１Ａの順番）で含むデータパケット１１７０Ｃ、及びデータセグメント１Ｂ、１Ｅをその順番（すなわち、１Ｂ、１Ｅの順番）で含むデータパケット１１７０Ｄに分割される。データセグメントは、可変長の別のデータパケットまたは会話からの別のデータセグメントと組み合わされる。別の会話からのデータセグメントは、明確にするために意図的に省略している。データパケットがネットワークを横断しそれらのコンテンツが分割及び再混合されるに従って、時間が経過することを理解されたい。しかし、説明を明確にするために、通信プロセスの開始及び完了を示す例示的な時間を除いて、時間の図示は意図的に省略している。
【０６０７】
データパケットコンテンツの動的メッシュ伝送中は、データセグメントは、ネットワークを横断するに従って変更される。例えば、ジャンクデータセグメント及びデータセグメント１Ｆを含むデータパケット１１７０Ａは、まず、通信ノードＮ０，０から通信ノードＮ１，１に送信され、その後、通信ノードＮ１，１から通信ノードＮ２，1に送信される。そして、通信ノードＮ２，1において、データセグメント１Ｃを含むデータパケット１１７０Ｂと混合され、これにより、データセグメント１Ｃ、１Ｆ及びジャンクデータセグメントをその順番で含むデータパケット１１７１Ａが生成される。生成されたデータパケット１１７１Ａは、通信ノードＮ１，２に送信され、その後、通信ノードＮ１，２から通信ノードＮ２，３に送信される。同じ期間に、データセグメント１Ｄ、１Ａをその順に含むデータパケット１１７０Ｃは、通信ノードＮ０，０から通信ノードＮ３，１に送信され、そのまま変更されずに、データパケット１１７１Ｃとして通信ノードＮ３，１から通信ノードＮ３，２に送信される。通信ノードＮ３，１で実施される混合・分割操作の一部として、コンテンツを含まずジャンクデータだけを含むデータパケット１１７１Ｂが生成され、通信ノードＮ２，１に送信される。コンテンツを含まないジャンクパケットをルーティングする理由は２つある。第１の理由は、通信ノードＮ３，１から複数のデータパケットを出力することによりサイバーパイレーツを混乱させるためであり、第２の理由は、未使用のリンクまたはルートからネットワーク内の最新の伝搬遅延データを得るためである。
【０６０８】
通信ノードＮ３，２に入力されたデータパケット１１７１Ｃは、２つのデータパケット、データパケット１１７２Ｃ及びデータパケット１１７２Ｂに分割される。データパケット１１７２Ｃは、データセグメント１Ｄを含んでおり、通信ノードＮ３，３に送信される。データパケット１１７２Ｂは、データセグメント１Ａと、ジャンクデータを含む先頭のデータセグメントとを含んでおり、通信ノードＮ２，３に送信される。通信ノードＮ２，３に到着したデータパケット１１７２Ｂは、入力パケット１１７１Ａと混合され、データセグメント１Ｆ、１Ａを含み通信ノードＮ１，４に送信されるデータパケット１１７３Ａと、データセグメント１Ｃを含み通信ノードＮ３，４に送信されるデータパケット１１７３Ｂとに分割される。通信ノードＮ１，４に到着したデータパケット１１７３Ａは、末尾にジャンクデータが追加される。これにより生成されたデータパケット１１７４Ａは、時間ｔ４で、最終通信ノードＮｆ，ｆに送信される。通信ノードＮ３，４に到着したデータパケット１１７３Ｂは、データセグメント１Ｃの末尾にジャンクデータが追加され、その後、時間ｔ１６（図示せず）で最終通信ノードＮｆ，ｆに送信される。
【０６０９】
一方、データセグメント１Ｅ及び１Ｂを含むデータパケット１１７０Ｄが、通信ノードＮ０，０から通信ノードＮ４，１に送信され、その後、通信ノードＮ４，１から通信ノードＮ４，２に送信される。そして、通信ノードＮ４，２において、再スクランブル化され、データセグメント１Ｂ及び１Ｅをその逆の順（すなわち、１Ｅ、１Ｂの順）で含むデータパケット１１７２Ｄが生成される。生成されたデータパケット１１７２Ｄは、通信ノードＮ３，３に送信され、データパケット１１７２Ｃと混合した後に分割され、これにより新しいデータパケット１１７３Ｃ及び１１７３Ｄが生成される。データセグメント１Ｂを含むデータパケット１１７３Ｃは、通信ノードＮ２，４に送信され、その後、時間ｔ１５で、データパケット１１７４Ｂとして最終サーバＮｆ，ｆに送信される。データパケット１１７３Ｃ及び１１７４Ｂは互いに同一であり、各々データセグメント１Ｂのみを含んでいる。すなわち、パケット１１７３Ｃは通信ノードＮ２，４により実際には変更されない。これは、通信ノードＮ２，４における、時間ｔ１５及びそれに対応するステート（例えば、シード、鍵、共有秘密、アルゴリズムなど）と一致する。他方のデータパケット、すなわち通信ノードＮ３，３から出力されたデータパケット１１７３Ｄは通信ノードＮ４，３に送信され、その後、通信ノードＮ４，３から通信ノードＮ４，４に送信される。そして、通信ノードＮ４，４において、時間ｔ１７でそれに対応するステート１１３７を使用して、データセグメント１Ｅとデータセグメント１Ｄとの間にジャンクデータセグメントが挿入される。互いに異なる時間（ｔ１４、ｔ１５、ｔ１６、及びｔ１７）で互いに異なるステートを使用して各々生成されたデータパケット１１７４Ａ、１１７４Ｂ、１１７４Ｃ、及び１１７４Ｄはその後通信ノードＮｆ，ｆで、アンスクランブル化・混合操作１１６１によりアンスクランブル化された後に混合され、これにより、時間ｔｆで、スクランブル化されていない元のデータパケット１０５５が再生成される。全てのノードは入力データパケットに対してどのような処理を行うべきかを知っている。ノードが、パケットのステートまたは他の識別子に対応する一連の共有秘密を知っているか、または、ノードが、特定のパケットを受信したときにどのような処理を行うかを、シグナリングサーバと呼ばれる別のサーバから事前に知らされているためである。
【０６１０】
静的メッシュ伝送の場合と同様に、動的メッシュ伝送では、データパスの長さは互いに異なり得るため、互いに異なる伝搬遅延を示し得る。この結果、あるデータパケットが、他のデータパケットよりも先に、最終通信ノードＮｆ，ｆに到着する場合がある。このような場合、本発明では、最終通信ノードＮｆ，ｆは、先に到着したデータパケットを、それに関連する別のデータパケットが到着するまで一時的に保持しなければならない。また、図示した例では、元のデータパケット１０５５の最終的な集合及び復元が通信ノードＮｆ，ｆで実施されることを示しているが、実際には、最終的な再構成は、ネットワークに接続された、デスクトップ、ノートブック、セルフォン、タブレット、セットトップボックス、自動車、冷蔵庫、または他のハードウェアなどのデバイスにおいて行うことができる。換言すれば、メッシュ伝送に関しては、通信ノードと、それに接続されたデバイスとの間の区別はない。すなわち、通信ノードＮｆ，ｆは、本物の大容量サーバの代わりに、デスクトップコンピュータであってもよい。本開示に係るＳＤＮＰクラウドへのデバイスの接続、すなわちラストマイル接続の詳細については後述する。
【０６１１】
上述したように、上記の動的なルーティングは、１または複数の本開示のＳＤＮＰ方法（上述したように、スクランブル化、暗号化、またはその組み合わせを含む）と組み合わせることができる。そのような操作の一例である、図８１Ａに示す暗号化・混合・分割操作１１８０は、通信ノードＮａ，ｂ、Ｎａ，ｄ、Ｎａ，ｆ、及びＮａ，ｈから入力された複数の入力データパケットに対して、特定の順番のＳＤＮＰ操作を行う。このＳＤＮＰ操作は、各入力データパケットに対する復号操作１０３２、混合・分割操作１１４８によるデータパケットを混合及び分割、暗号化操作１０２６による新しいデータパケットの再暗号化、及びそれらのパケットをメッシュ通信ネットワークを通じて送信することを含む。図示のように、入力データパケットは事前に暗号化されており、判読不能なサイファテキスト１１８１Ａ、１１８３Ａ・・・を含む。サイファテキストの復号に必要な、各入力パケットの生成に使用された時間、ステート、及び暗号化アルゴリズムに対して特有の復号鍵は、復号を実施する前に、復号操作１０３２に伝送されなければならない。復号鍵は、特定のデータパケットまたは通信と共に送信される暗号化されていないデータパケット内に存在する共有秘密または鍵として、あるい、別の通信チャンネルから提供される鍵として伝送される。後述するが、鍵は、対称的または非対称的であり得る。鍵の伝送については、後述する。
【０６１２】
復号後は、データパケットは、プレーンテキストパケット１１８２Ａ、１１８４Ａ・・・に変換され、その後、通信ノードＮａ，ｊで混合され、プレーンテキストを含む長いパケット１１８５が生成される。長いパケット１１８５は、その後、新しいプレーンテキストパケット１１８２Ａ、１１８２Ｂ・・・に分割される。特定の時間またはステートに基づく個別の新しい暗号化鍵を使用して、データパケットはその後暗号化される。これにより生成された新しいサイファテキスト１１８１Ｂ、１１８３Ｂ・・・は、その後、別の通信ノードに送信される。図８１Ｂに示すように、各入力に対して個別の復号操作１０３２を実施した後に混合操作１０８９により混合するシーケンスは、復号・混合操作１０９０によって記号的に表示される「メッシュ入力の復号・混合」を含む。図８１Ｃに示した、メッシュ出力のための「分割・暗号化」操作は、分割操作１１０６によりデータパケットを分割し、その各出力に対して暗号化操作１０２６を個別に行うシーケンスを含む。便宜上、このシーケンスを、分割・暗号化操作１０９１によって記号的に表示する。
【０６１３】
図８２Ａは、本発明に係るメッシュ伝送のための、複数の通信ノードＮａ，ｂ、Ｎａ，ｄ、Ｎａ，ｆ、及びＮａ，ｈから入力されたデータパケットの再暗号化、再スクランブル化、及び再分割の例を示す。通信ノードａ，ｊに入力された入力データパケットに対して、再暗号化・再スクランブル化・混合・分割操作１２０１が実施される。各入力データパケットは個別に、復号操作１０３２により復号され、アンスクランブル化操作９２８によりアンスクランブル化され、その後、混合操作１０８９により混合され、分割操作１１０６により複数の新しいデータパケットに分割される。各データパケットはその後、スクランブル化操作９２６により個別に再びスクランブル化された後、メッシュ通信ネットワークを用いて送信先に伝送される。図示したように、入力データパケットは、予め暗号化されており、判読不能なサイファテキスト１１９４Ａ、１１９７Ａ・・・を含む。
【０６１４】
サイファテキスト入力のアンスクランブル化及び復号に必要とされる、各入力パケットの生成に使用された時間、ステート、及び暗号化アルゴリズムに対応する時間及びステート情報、共有秘密、数値シード、アルゴリズム、及び復号鍵は、復号及びアンスクランブル化操作９２８を実施する前に、復号操作１０３２に送信しなければならない。復号鍵は、特定のデータパケットまたは通信と共に送信される暗号化されていないデータパケット内に存在する共有秘密、鍵、または数値シードとして、あるいは、別の通信チャンネルから提供される鍵または数値シードとして伝送される。鍵は、対称的または非対称的であり得る。鍵及び数値シードの伝送については、後述する。全てのノードは入力データパケットに対してどのような処理を行うべきかを知っている。ノードが、パケットのステートまたは他の識別子（例えばシード）に対応する一連の共有秘密を知っているか、または、ノードが、特定のパケットを受信したときにどのような処理を行うかを、シグナリングサーバと呼ばれる別のサーバから事前に知らされているためである。
【０６１５】
復号後、プレーンテキストパケット１１９５Ａ、１１９８Ａ・・・は、アンスクランブル化操作９２８によりアンスクランブル化され、アンスクランブル化プレーンテキストパケット１１９６Ａ、１１９９Ａ・・・が生成される。アンスクランブル化プレーンテキストは、通信ノードＮａ，ｊにおいて混合操作１０８９により混合され、これにより長いパケット１２２０が生成される。長いパケット１２２０はその後、分割操作１１０６により新しいアンスクランブル化プレーンテキスト１１９６Ｂ、１１９９Ｂ・・・に分割された後、スクランブル化操作９２６により、現在の時間またはシードに対応する新しい数値シードを使用して再びスクランブル化される。これにより生成されたスクランブル化されたプレーンテキスト１１９５Ｂ、１１９８・・・は、次に、暗号化操作１０２６により、特定の時間またはステートに基づく新しい個別の暗号化鍵を使用して再び暗号化される。これにより生成された新しいサイファテキスト１１９４Ｂ、１１９７Ｂ・・・はその後、別の通信ノードに送信される。
【０６１６】
上述したように、本発明に係るＳＤＮＰ通信は、暗号化、スクランブル化、混合、分割、アンスクランブル化、及び復号の任意のシーケンスを含むことができる。少なくとも理論的には、実行されるシーケンスが既知の順番で行われる場合、数学的には下記の式で表される。
ｙ＝Ｈ｛Ｇ［Ｆ（ｘ）］｝
上記の式において、最内側の操作Ｆが最初に行われ、最外側の操作Ｈが最後に行われる。そして、元のデータｘを復元するためには、元の操作と逆の操作を、元の操作と逆の順番で行わなければならない。すなわち、下記の式で表される。Ｈ−１は最初に行われ、Ｆ−１は最後に行われる。
ｘ＝Ｆ−１｛Ｇ−１［Ｈ−１（ｙ）］｝
このファーストイン・ラストアウト（first-in last-out）方法の操作シーケンスは、変更を元に戻して元のコンテンツを復元するが、これは、このプロセスの過程にパケットからのデータの除去またはパケットへのデータの挿入が行われない場合に限る。パケットからのデータの除去またはパケットへのデータの挿入が行われた場合、暗号化されたファイルは汚染され、復元することはできない。例えば、様々な暗号化方法を用いて暗号化されたデータを混合することにより、まずは元の構成要素に復元しない限りは復号することはできないデータが生成される。ＳＤＮＰ伝送を用いた動的メッシュ通信の主な利点の１つである、複数の会話を動的に混合、分割、及びルーティングすることにより全てのコンテンツを隠すことができるという利点は、所定の通信ノードが必要に応じたパケットの混合及び分割ができない場合には失われる。
【０６１７】
そのため、ＳＤＮＰ通信の一実施形態では、スクランブル化・暗号化操作の前にデータを混合するのではなく、通信ノードから出力される各出力データパケット出力に対してスクランブル化及び暗号化を個別に実施する。同様に、通信ノードに入力された入力データパケットが、暗号化、スクランブル化、またはその両方がなされている場合、入力データパケットは、混合する前に、すなわち長い混合パケットを生成する前に、個別にアンスクランブル化及び復号する必要がある。したがって、入力パケットに対する好ましい操作シーケンスは、通信ノードの各入力に対して、入力データの復号、アンスクランブル化、及び混合をその順番で行うか、または、別の操作シーケンスでは、入力データのアンスクランブル化、復号、及び混合をその順番で行うことである。
【０６１８】
前者の場合を図８２Ｂに示す。図示のように、各入力に対して個別に行われる復号操作１０３２及びアンスクランブル化操作９２８と、それにより生成されたデータパケットを混合する混合操作１０８９とを含む復号・アンスクランブル化・混合操作が、ＤＵＭ操作１２０９として概略的に、また、ＤＵＭ操作１２１０として記号的に示されている。各入力上に存在するスイッチ１２０８Ａ及び１２０８Ｂは、必要に応じて、データパケットを、復号操作１０３２またはアンスクランブル化操作９２８を迂回させるのに使用される。例えば、特定の入力において両方のスイッチが「開」である場合、全てのデータパケットは、復号操作１０３２及びアンスクランブル化操作９２８の両方を通らなければならない。そのため、データパケットは、必然的に、復号及びアンスクランブル化されることとなる。両方のスイッチが閉である場合、操作は「ショートアウト（shorted out）」され、データは、復号操作１０３２またはアンスクランブル化操作９２８のいずれによっても処理されない。すなわち、入力データは、変更されず、混合操作１０８９に伝送される。
【０６１９】
スイッチ１２０８Ａが閉であり、スイッチ１２０８Ｂが開である場合、データは、復号操作１０３２は迂回するが、アンスクランブル化操作９２８は通る。これは、入力データパケットは、アンスクランブル化されるが、復号されないことを意味する。一方、スイッチ１２０８Ａが開であり、スイッチ１２０８Ｂが閉である場合、データは、復号操作１０３２は通るが、アンスクランブル化操作９２８は迂回する。これは、入力データパケットは、復号されるが、アンスクランブル化されないことを意味する。復号操作１０３２及びアンスクランブル化操作９２８は一般的にソフトウェアにより実現されるので、信号を迂回させる物理的なスイッチは存在しない。スイッチ１２０８Ａ及び１２０８Ｂは、ソフトウェアの操作を記号的に示したものである。具体的には、ある操作に対して平行なスイッチが開である場合、適用されたソフトウェアはその操作を実行する。そして、ある操作に対して平行なスイッチが閉である場合、適用されたソフトウェアはその操作を実行しないので、入力データは変更されない。電気的なメタファでは、スイッチを閉じることによりその操作は「ショートアウト」され、信号は処理されずに通過する。スイッチの開閉の組み合わせは、下記の真理値表に要約されている。下記の表では、復号操作１０３２に対して平行なスイッチ１２０８ＡをスイッチＡと称し、アンスクランブル化操作９２８に対して平行なスイッチ１２０８ＢをスイッチＢと称する。
【０６２０】
【表８】
2020195141.tif 000010
【０６２１】
ＤＵＭ操作と逆の操作であり、分割操作１１０６と、その各出力に対して個別に行われるアンスクランブル化操作９２６及び暗号化操作１２０６とを含む分割・スクランブル化・暗号化操作が、図８２Ｃに、ＳＳＥ操作１２１２として概略的に、また、ＳＳＥ操作１２１３として記号的に示されている。各入力上に存在するスイッチ１２１１Ｂ及び１２１１Ａは、必要に応じて、データパケットを、スクランブル化操作９２６または暗号化操作１０２６を迂回させるのに使用される。例えば、特定の入力においてスイッチ１２１１Ｂ及び１２１１Ａの両方が「開」である場合、全てのデータパケットは、スクランブル化操作９２６及び暗号化操作１０２６の両方を通らなければならない。そのため、データパケットは、必然的に、スクランブル化及び暗号化されることとなる。両方のスイッチが閉である場合、操作は「ショートアウト」され、データは、スクランブル化操作９２６または暗号化操作１０２６のいずれによっても処理されない。すなわち、分割操作１１０６からの出力データは変更されずに、ＳＳＥ操作から出力される。
【０６２２】
スイッチ１２１１Ｂが閉であり、スイッチ１２１１Ａが開である場合、データは、スクランブル化操作９２６は迂回するが、暗号化操作１０２６により処理される。これは、出力データパケットは、暗号化されているが、スクランブル化されていないことを意味する。一方、スイッチ１２１１Ｂが開であり、スイッチ１２１１Ａが閉である場合、データは、スクランブル化操作９２６により処理されるが、暗号化操作１０２６は迂回する。これは、出力されるデータパケットは、スクランブル化されているが、暗号化されていないことを意味する。
【０６２３】
上述したように、スクランブル化操作９２６及び暗号化操作１０２６は一般的にソフトウェアにより実現されるので、信号を迂回させる物理的なスイッチは存在しない。スイッチ１２１１Ｂ及び１２１１Ａは、ソフトウェアの操作を記号的に示したものである。具体的には、ある操作に対して平行なスイッチが開である場合、適用されたソフトウェアはその操作を実行する。そして、ある操作に対して平行なスイッチが閉である場合、適用されたソフトウェアはその操作を実行せず、入力データは変更されない。電気的なメタファでは、スイッチを閉じることによりその操作は「ショートアウト」され、信号は処理されずに通過する。スイッチの開閉の組み合わせは、下記の真理値表に要約されている。下記の表では、スクランブル化操作９２６に対して平行なスイッチ１２１１ＢをスイッチＢと称し、暗号化操作１０２６に対して平行なスイッチ１２１１ＡをスイッチＡと称する。
【０６２４】
【表９】
2020195141.tif 000011
【０６２５】
図８３Ａに示すように、複数入力ＤＵＭ１２０９と複数出力ＳＳＥ１２１２との組み合わせは、本明細書ではＳＤＮＰメディアノード１２０１と称する、本発明に係るセキュア通信を実現するための非常に多用途な要素を構成する。図示のように、複数入力のいずれか１つに入力されたデータは、まず、復号操作１０３２により復号されるか、または復号操作１０３２を迂回（バイパス）する。データパケットはその後、アンスクランブル化操作９２８によりアンスクランブル化されるか、またはアンスクランブル化操作９２８を迂回した後、混合操作１０８９により混合された後、分割操作１１１６により新しいパケットに分割される。この分割により出力された個々のデータパケットは、次に、スクランブル化操作９２６によりスクランブル化されるか、またはスクランブル化操作９２６を迂回した後、暗号化操作１０２６により暗号化されるか、または暗号化操作１０２６を迂回する。
【０６２６】
「メディアノード」の名称は、具体的にはリアルタイムの音声、テキスト、音楽、映像、ファイル、コードなど、すなわちメディアコンテンツであるコンテンツを伝送、ルーティング、及び処理するための、この通信ノードの通信ソフトウェア、または本発明に係る「ソフトスイッチ」を反映する。図８３Ｂに示すように、ＳＤＮＰメディアノードは便宜上、サーバ１２１５にホストされるメディアノードＭａ，ｊとして記号的にも表示される。同一のコードを使用することにより、本開示のＳＤＮＰメディアノードを使用して、下記の例を含む、信号処理の全ての組み合わせが可能である。
【０６２７】
「単一ルートパススルー」
単一入力は、「現状のままで（as is）」、すなわち、ジャンクパケットの挿入または除去、あるいは入力データを複数のより短いデータパケットにパース（分割）することにより変更されて、単一出力に送られる。この操作は、図８３Ｃに概略的及び記号的（単一ルートパススルー操作１２１７Ａ）に示すように、メディアノードが単にシグナルリピータとして動作する場合に有用である。図示したジャンク操作１０５３及びパース操作１０５２は、パケット混合操作１０６１及びパケット分割操作１０５７の一部を構成する要素であり、ここでは単に便宜上含まれているにすぎない。
【０６２８】
「冗長ルート複製」
単一入力は、複製され、「現状のままで」、すなわち、ジャンクパケットの挿入または除去、あるいは入力データを複数のより短いデータパケットにパース（分割）することにより変更されて、同一のコピー及び／またはデータシーケンスを２以上の出力に送信する前に、２以上の出力に送信される。この操作は、図８３Ｄに概略的及び記号的（冗長ルートレプリケーション操作１２１７Ｂ）に示すように、ＶＩＰクライアントまたは緊急通信のための「レースルーティング（race routing）」を実施する場合、すなわち、２つのコピーを互いに異なる経路を通じて送信し、送信先に先に到着したコピーを使用する場合に有用である。ジャンク操作１０５３及びパース操作１０５２は、パケット混合操作１０６１及びパケット分割操作１英語０５７の一部を構成する要素であり、ここでは単に便宜上含まれているにすぎない。
【０６２９】
「単一ルートスクランブル化」
単一入力は、そのパケットが事前に暗号化されているか否かに関わらず、スクランブル化され単一出力に送られる。図８３Ｅに示すように、単一ルートスクランブル化は、クライアントとクラウドと間のファーストマイル通信、またはマルチルート伝送またはメッシュ伝送のためにデータパケットを分割または混合する前の通信に有用である。この操作は、図８３Ｅに概略的及び記号的（単一ルートスクランブル化操作１２１７Ｃ）に示されており、単一入力パケット分割操作１０５７（この場合はジャンク挿入／除去及びパースのためにのみ使用される）とスクランブル化のみの操作１２２６Ｂとを含む。
【０６３０】
「単一ルートアンスクランブル化」
単一ルートスクランブル化と逆の操作であり、図８３Ｆに、記号的に示した単一ルートアンスクランブル化操作１２１７Ｄは、そのパケットがスクランブル化の前に暗号化されているか否かに関わらず、スクランブル化されたパケットをスクランブル化されていない状態に戻すのに使用される。この操作は、アンスクランブル化のみの操作１２２６Ａと、それに続く、ジャンクの挿入／除去及びパケットのパースに使用される単一ルート混合操作１０６１との組み合わせを含む。
【０６３１】
上記の単一ルートアンスクランブル化操作及びスクランブル化操作の２つの操作をその順番に行うことにより実現される「単一ルート再スクランブル化」が、図８３Ｇに、概略的及び記号的（単一ルート再スクランブル化操作１２１６Ｃ）に示されている。この操作は、単一ルート伝送におけるパケットスクランブル化を動的にリフレッシュするのに有用である。
【０６３２】
「単一ルート暗号化」
単一入力は、そのパケットが事前にスクランブル化されているか否かに関わらず、暗号化され、単一出力に送られる。図８３Ｈに、概略的及び記号的（単一ルート暗号化操作１２１７Ｅ）に示したこの操作は、クラウドの外部のファーストマイル通信、または、マルチルート伝送またはメッシュ伝送のためにデータパケットを分割または混合する前の通信に有用である。この操作は、単一入力パケット分割操作１０５７（この場合はジャンク挿入／除去及びパースのためにのみに使用される）と、それに続く、暗号化のみの操作１２２６Ｄとを含む。
【０６３３】
「単一ルート復号」
単一ルート暗号化と逆の操作であり、図８３Ｉに、単一ルート復号操作１２１７Ｆとして記号的に示した「単一ルート復号」は、そのパケットが暗号化の前にスクランブル化されているか否かに関わらず、暗号化されたパケットをその元の暗号化されていない状態に戻すのに使用される。この操作は、復号のみの操作１２２６Ｃと、それに続く単一ルート混合操作１０６１（ジャンク挿入／除去及びパケットのパースのために使用される）との組み合わせを含む。
【０６３４】
「単一ルート再暗号化」
上記の単一ルート復号操作及び単一ルート暗号化操作の２つの機能をその順番に行うことにより実現される「単一ルート再暗号化」が、図８３Ｊに概略的及び記号的（単一ルート再暗号化１２１６Ｄ）に示されている。この操作は、単一ルート伝送におけるパケットスクランブル化を動的にリフレッシュするのに有用である。
【０６３５】
「単一ルートスクランブル化暗号化」
単一入力は、スクランブル化及び暗号化の両方が施され、単一出力に送られる。図８３Ｋに、概略的及び記号的（単一ルートスクランブル化・暗号化操作１２１７Ｇ）に示したこの操作は、クラウドの外部のファーストマイル通信、または、マルチルート伝送またはメッシュ伝送のためにデータパケットを分割または混合する前の通信に有用である。この操作は、単一入力パケット分割操作１０５７（この場合はジャンク挿入／除去及びパースのためにのみに使用される）と、それに続く、スクランブル化・暗号化操作１２２６Ｅとを含む。
【０６３６】
「単一ルートアンスクランブル化・復号」
単一ルートスクランブル化暗号化と逆の操作であり、図８３Ｌに、単一ルートアンスクランブル化・復号操作１２１７Ｇとして記号的に示されている「単一ルートアンスクランブル化・復号」操作は、スクランブル化及び暗号化されたパケットをその元のスクランブル化及び暗号化されていない状態に戻すのに使用される。この操作は、復号・アンスクランブル化操作１２２６Ｄと、それに続く単一ルート混合操作１０６１（ジャンク挿入／除去及びパケットのパースのために使用される）とを含む。
【０６３７】
「単一ルート再パケット化」
上記の単一ルート復号・アンスクランブル化操作と、単一ルートスクランブル化・暗号化操作とをその順番に行うことにより実現される「単一ルート再パケット化」が、図８３Ｍに概略的及び記号的（単一ルート再パケット化操作１２１６Ｅ）に示されている。この操作は、単一ルート伝送におけるパケットスクランブル化及び暗号化を動的にリフレッシュするのに有用である。
【０６３８】
「メッシュＳＤＮＰゲートウェイ入力」
「メッシュＳＤＮＰゲートウェイ入力」、別名「単一入力複数出力ＳＤＮＰゲートウェイ」が、図８３Ｎに、概略的及び記号的（単一入力複数出力操作１２１６Ｆ）に示されている。この操作では、そのパケットが事前にスクランブル化または暗号化されているか否かに関わらず、単一入力は分割され、マルチルート伝送またはメッシュ伝送のための複数の出力に送られる。この操作は、パケット分割操作の構成要素としてジャンク操作１０５３及びパース操作１０５２を含むＳＤＮＰゲートウェイにおいて、スクランブル化及び暗号化を行わないメッシュルーティングを開始するのに有用である。
【０６３９】
「メッシュＳＤＮＰゲートウェイ出力」
上記の単一入力複数出力操作と逆の操作である「メッシュＳＤＮＰゲートウェイ出力」、別名「複数入力単一出力ＳＤＮＰゲートウェイ」が、図８３Ｏに、概略的及び記号的（複数入力単一出力操作１２１６Ｇ）に示されている。この操作では、そのパケットが事前にスクランブル化または暗号化されているか否かに関わらず、単一入力は分割され、マルチルート伝送またはメッシュ伝送のための複数の出力に送られる。この操作は、ＳＤＮＰゲートウェイにおいてラストマイル通信またはクラウドツークラウドホップ（cloud-to-cloud hops）のためにメッセージの構成パケットを再合体させるために、すなわち、ＳＤＮＰメッシュルーティングを完了させるために使用され、任意選択で、そのパケット混合操作の構成要素としてのジャンク操作１０５３及びパース操作１０５２を含む。
【０６４０】
「スクランブル化ＳＤＮＰゲートウェイ入力」
「スクランブル化ＳＤＮＰゲートウェイ入力」が、図８３Ｐに、複数出力スクランブル化操作１２１７Ｈとして記号的に示されている。この操作では、そのパケットが事前に暗号化されているか否かに関わらず、単一入力は分割され、その各出力は個別にスクランブル化された後、マルチルート伝送またはメッシュ伝送のための複数の出力に送られる。この操作は、パケット分割操作の構成要素として図示しないジャンク操作及びパース操作を含むＳＤＮＰゲートウェイにおいて、スクランブル化メッシュルーティングを開始するのに有用である。
【０６４１】
「アンスクランブル化ＳＤＮＰゲートウェイ出力」
上記のスクランブル化ＳＤＮＰゲートウェイ入力操作と逆の操作である、「アンスクランブル化ＳＤＮＰゲートウェイ出力」、別名「アンスクランブル化複数入力単一出力ＳＤＮＰゲートウェイ」が、図８３Ｐに、複数入力単一出力アンスクランブル化操作１２１７Ｊとして記号的に示されている。この操作では、そのパケットが暗号化されているか否かに関わらず、複数のメッシュ入力は、個別にアンスクランブル化された後に混合され、単一出力またはクライアントに送られる。この操作は、ＳＤＮＰゲートウェイにおいてラストマイル通信またはクラウドツークラウドホップのためにメッセージの構成パケットを再合体させアンスクランブル化するために、すなわち、ＳＤＮＰメッシュルーティングを完了させるために使用され、任意選択で、そのパケット分割操作の構成要素として図示しないジャンク操作及びパース操作を含む。
【０６４２】
「暗号化ＳＤＮＰゲートウェイ入力」
「暗号化ＳＤＮＰゲートウェイ入力」が、図８３Ｑに、単一入力複数出力暗号化操作１２１７Ｋとして記号的に示されている。この操作では、そのパケットが事前にスクランブル化されているか否かに関わらず、単一入力は個別に暗号化された後に、マルチルート伝送またはメッシュ伝送のための複数の出力に送られる。この操作は、パケット分割操作の構成要素として図示しないジャンク操作及びパース操作を含むＳＤＮＰゲートウェイにおいて、暗号化メッシュルーティングを開始するのに有用である。
【０６４３】
上記の暗号化ＳＤＮＰゲートウェイ入力操作と逆の操作である「復号ＳＤＮＰゲートウェイ出力」が、図８３Ｑに、複数入力単一出力復号操作１２１７Ｌとして記号的に示されている。この操作では、そのパケットが事前にスクランブル化されているか否かに関わらず、複数のメッシュ入力は個別に復号され、その各出力は混合された後に単一出力またはクライアントに送られる。この操作は、ＳＤＮＰゲートウェイにおいてラストマイル通信またはクラウドツークラウドホップのためにメッセージの構成パケットを再合体させ復号するために、すなわち、任意選択でそのパケット混合操作の構成要素として図示しないジャンク操作及びパース操作を含むＳＤＮＰメッシュルーティングを完了させるために使用される。
【０６４４】
「スクランブル化・暗号化ＳＤＮＰゲートウェイ入力」
「スクランブル化・暗号化ＳＤＮＰゲートウェイ入力」が、図８３Ｒに、単一入力複数出力復号スクランブル化暗号化操作１２１７Ｍとして記号的に示されている。この操作では、まず、単一入力が分割及びスクランブル化され、その各出力が個別に暗号化され、そして最終的に、マルチルート伝送またはメッシュ伝送のための複数の出力に送られる。この操作は、パケット分割操作の構成要素として図示しないジャンク操作及びパース操作を含むＳＤＮＰゲートウェイにおいて、暗号化メッシュルーティングを開始するのに有用である。
【０６４５】
「アンスクランブル化・復号ＳＤＮＰゲートウェイ出力」
上記のスクランブル化・暗号ＳＤＮＰゲートウェイ入力操作と逆の操作である「アンスクランブル化・復号ＳＤＮＰゲートウェイ出力」が、図８３Ｒに、複数入力単一出力アンスクランブル化復号操作１２１７Ｎとして記号的に示されている。この操作では、まず、複数のメッシュ入力が復号され、その各出力が個別にアンスクランブル化された後、混合されて単一出力またはクライアントに送られる。この操作は、ＳＤＮＰゲートウェイにおいてラストマイル通信またはクラウドツークラウドホップのためにメッセージの構成パケットを再合体、復号、及びアンスクランブル化するために、すなわち、任意選択でそのパケット混合操作の構成要素として図示しないジャンク操作及びパース操作を含むＳＤＮＰメッシュルーティングを完了させるために使用される。
【０６４６】
「メッシュ再スクランブル化」
「メッシュ再スクランブル化（Meshed Rescrambling）」が、図８３Ｓに、複数入力複数出力アンスクランブル化・スクランブル化操作１２１６Ａとして記号的に示されている。この操作では、そのパケットが暗号化されているか否かに関わらず、マルチルート入力またはメッシュ入力の各入力を個別にアンスクランブル化した後、長いデータパケットまたはその同等物に統合し、必要に応じてジャンクパケットを除去する。長いデータパケットは、次に、複数の新しいデータパケットに分割され、必要に応じてジャンクデータが挿入される。各データパケットはその後、個別にスクランブル化され、最終的には、マルチルート伝送またはメッシュ伝送のための複数の出力に送られる。この操作は、スクランブル化を新しいステートまたは時間の条件にリフレッシュするのに、すなわち、データパケットがＳＤＮＰクラウドを横断するときのデータパケットの「再スクランブル化」を容易にするのに使用される。
【０６４７】
「メッシュ再暗号化」
「メッシュ再暗号化（Meshed Re-encryption）」が、図８３Ｓに、複数入力複数出力復号・暗号化操作１２１６Ｂとして記号的に示されている。この操作では、そのパケットがスクランブル化されているか否かに関わらず、マルチルート入力またはメッシュ入力の各入力を個別に復号した後、長いデータパケットまたはその同等物に統合し、必要に応じてジャンクパケットを除去する。長いデータパケットは、次に、複数の新しいデータパケットに分割され、必要に応じてジャンクデータが挿入される。各データパケットはその後、個別に暗号化され、最終的には、マルチルート伝送またはメッシュ伝送のための複数の出力に送られる。この操作は、暗号化を新しいステートまたは時間の条件にリフレッシュするのに、すなわち、データパケットがＳＤＮＰクラウドを横断するときのデータパケットの「再暗号化」を容易にするのに使用される。
【０６４８】
図８３Ａに概略的な形態で、図８３Ｂに記号的な形態で示した上記の「メッシュ再パケット化」操作では、マルチルート入力またはメッシュ入力を復号し、その各出力を個別にアンスクランブル化した後、長いデータパケットまたはその同等物に統合し、必要に応じてジャンクデータを除去する。一実施形態では、長いパケットは、クライアントから送信された、暗号化されていないプレーンテキストまたはデータのフォーマットを含む。その後、長いデータパケットは、複数の新しいデータパケットに分割され、必要に応じてジャンクデータが挿入される。各データパケットはその後個別にスクランブル化され、最終的には、マルチルート伝送またはメッシュ伝送のための複数の出力に送られる。この操作は、スクランブル化及び暗号化の両方を新しいステートまたは時間の条件にリフレッシュするのに、すなわち、データパケットがＳＤＮＰクラウドを横断するときのデータパケットの「再パケット化」を容易にするのに使用される。
【０６４９】
上記の各例は、本開示のＳＤＮＰメディアノードが使用できる操作の順番や組み合わせの可能性を制限することは意図していない。例えば、入力チャンネルまたは出力チャンネルの数、すなわち、任意の特定のＳＤＮＰメディアノードに接続されるＳＤＮＰメディアノードの数は、１デバイスあたり、１から数十であり得る。便宜上、４つの入力及び出力が示されている。信号の流れを示す概略図である図８４Ａは、ＳＤＮＰ通信ソフトウェアを実行しているコンピュータサーバ１２２０Ｂ、１２２０Ｊ、及び１２２０Ｈをそれぞれ含むメディアノードＭａ，ｂ、Ｍａ，ｊ、及びＭａ，ｈの任意のノード間の通信を示す。この図は、任意の２つのメディアノード間の２つの通信、すなわち、メディアノード（例えばＭａ，ｂ）の出力と別のメディアノード（例えばＭａ，ｊ）の入力との間の第１の通信と、その後者のメディアノード（例えばＭａ，ｊ）の出力から前者のメディアノード（例えばＭａ，ｂ）の入力との間の第２の通信を示す。この図示例は、実際には通信メディアノード間の単一ファイバ、同軸リンク、ツイストペア、イーサネット（登録商標）、またはサテライトリンクを含み得るＰＨＹまたはデータリンクレイヤではなく、レイヤ３ネットワーク接続であることを意図している。この図示例はネットワークレベルであるので、第１のデバイスの出力が第２のデバイスの入力に接続され、第２のデバイスの出力が第１のデバイスの入力に接続されることにより、電気的帰還、競合状態、または不安定が発生する危険はない。すなわち、図示したネットワークは、電気的帰還ネットワークを示すものではない。
【０６５０】
図８４Ｂに示すような、本発明に係る通信ネットワークまたはＳＤＮＰクラウド１１１４を実現するために、ＳＤＮＰメディアノード１２１５を実現するソフトウェアを各々実行するサーバ１２２０Ｂ、１２２０Ｄ、１２２０Ｆ、１２２０Ｈ、１２２０Ｊ、１２２０Ｓ、及び１２２０Ｑを含む一連のコンピュータサーバにより、メディアノードＭａ，ｂ、Ｍａ，ｄ、Ｍａ，ｆ、Ｍａ，ｈ、Ｍａ，ｊ、Ｍａ，ｓ、及びＭａ，ｑ（これらは、より大きなセキュアクラウドのノードの一部であり得る）によりセキュアネットワークを構成する。
【０６５１】
各コンピュータサーバは、ＳＤＮＰメディアノード１２１５で実行されるソフトウェアがハードウェアのオペレーティングシステム（ＯＳ）と一致する実行コードを含む限り、互いに同一のオペレーティングシステム（ＯＳ）を実行する必要はない。実行コードは、特定のアプリケーション機能を実施する所定のハードウェアプラットフォーム上で実行されるコンピュータソフトウェアである。実行コードは、「ソースコード」をコンパイルすることにより生成される。ソースコードは、論理的に構成された順次操作、アルゴリズム、及び命令として認識可能であるが、実行コードに変換された後は、プログラムの実際の機能を認識するのは困難または不可能である。この処理は一方向性であり、ソースコードは実行コードを生成することができるが、実行コードは、ソースコードがどこから来たかを判断するのに使用することはできない。このことは、オペレーティングシステムの盗難、すなわちハッカーによる実際のコードの逆行解析を防止するために重要である。
【０６５２】
ソースコードは、プログラマにより使用される言語及び構文であり、特定のオペレーティングシステム上で実行されることを目的としたマシンコードではないので、実行可能ではない。オペレーションのコンパイル中は、生成された実行可能なコードは、あるオペレーティングシステム、ｉＳＯＡｎｄｒｏｉｄ（登録商標）、ウィンドウズ（登録商標）７、ウィンドウズ（登録商標）１０、ＭａｃＯＳ（登録商標）に対して特有である。あるオペレーティングシステムで実行可能なコードは、別のオペレーティングシステム上で実行できるとは限らないが、ソースコードは、実行コードの生成に使用することができる。そのため、ＳＤＮＰネットワークのソースコードは、そのソースコードの開発者のみが入手可能であり、ＳＤＮＰ実行コードを実行するネットワークオペレータは入手することはできない。
【０６５３】
一般的に本明細書の背景技術の欄で説明した標準的プロトコル（例えば、イーサネット（登録商標）、ＷｉＦｉ、４Ｇ、及びＤＯＣＳＩＳ）に従うネットワークの接続性は、デバイスをその製造業者またはＯＳと全く無関係な態様で相互接続するための共通のフレームワークをインターネットに提供する。実施においては、ネットワーク接続により、コンピュータのＯＳ上で実行されるＳＤＮＰソフトウェアとの間でデータパケットを送受信するコンピュータサーバのオペレーティングシステムとの間でデータパケットの送受信が行われる。このようにして、ソフトスイッチ通信機能に基づくＳＤＮＰメディアノードを、どのデバイスにおいてもその製造業者に関わらず実現することができ、また、どの主要なオペレーティングシステム（例えば、ＵＮＩＸ（登録商標）、ＬＩＮＵＸ（登録商標）、ＭａｃＯＳ１０（登録商標）、ウィンドウズ（登録商標）７、ウィンドウズ（登録商標）８など）にも適合させることができる。
【０６５４】
別の原理は、ＳＤＮＰにより実現化されたクラウドが、中央管理ポイント、パッケージのルーティングを決定する単一デバイス、及び送信されるデータパケットの完全な情報（そのデータパケットの内容、行き先、混合、分割、スクランブル化暗号化方法）を有する共通ポイントを持たないことである。ネットワークオペレータでさえも、ネットワークにおけるデータトラヒックの全体像が分からない。上述したように、図８４Ｂは、同一クラウド中のコンピュータネットワークを示す。同一クラウド中にあるという意味は、主観的及び恣意的な用語であり、本発明の普遍性を限定することを意図するものではない。メディアノードＭｂ，ｂ、Ｍｂ，ｅ、Ｍｂ，ｆ、Ｍｂ，ｇ、Ｍｂ，ｊ、Ｍｂ，ｓ、及びＭｂ，ｔ（図示せず）を含む第２のクラウドは、別の地理的領域を含むか、または別のサーバプロバイダによりホストされる。例えば、Ａｍａｚｏｎ（登録商標）により「クラウドＡ」がホストされ、Ｍｉｃｒｏｓｏｆｔ（登録商標）により「クラウドＢ」がホストされ、民間企業またはＩＰＳにより「クラウドＣ」がホストされる。一般的に、あるクラウド内でのノード間の接続性は、クラウドツークラウド接続よりも高く、かつ高密度である。クラウドツークラウド接続は、数がより少なく、通信を行うのに、ネットワークアドレス変換器（ＮＡＴ）により割り当てられた一時的なパケットルーティング数字ではなく、Ｔｒｕｅインターネット互換性ＩＰアドレスを使用する必要があるからである。
【０６５５】
所定のＳＤＮＰにより実施される操作の説明に関して、仮想スイッチによってある操作を含めるかまたは迂回する原理（その操作を実施するか、またはデータを変更せずに通過させる）と同一の原理が、上記の説明、またはスクランブル化及び暗号化操作の順番が入れ替えられる（すなわち、復号の前にアンスクランブル化し、スクランブル化の前に暗号化する）別の実施形態に等しく適用可能である。簡潔にするために、各操作の順番はそれと逆の操作が逆の操作順番で実施される限りは変更可能であるという理解により、これらの別のデータフローは個別に図示しない。データパケットの処理はソフトウェアにより行われるので、各操作の順番の変更は、必要に応じてまたは定期的に（例えば、毎月、毎日、毎時間、コールバイコール（call-by-call）、時間、またはステートに基づき）、単にアルゴリズムの順番を変更することにより行うことができる。
【０６５６】
上述したように、同一データセットに対して逆の順番で正確に実施され、元のデータを正確に復元できる限り、どのようなスクランブル化、暗号化、混合のシーケンスでも使用可能である。アンスクランブル化、復号、または混合の前に変更を元に戻さないで、操作間でコンテンツを変更すると、取消不能なデータ損失及び恒久的なデータ破損が生じることとなる。したがって、元のデータを復元するために逆の順番で処理できる限り、パケットは、ネスト化した順番で２回以上スクランブル化または２回以上暗号化することもできる。例えば、クライアントアプリケーションは、それ自体の独自方法を用いて、メッセージを暗号化してサイファテキストを生成することができ、そのパケットがＳＤＮＰゲートウェイに入ったときに、ゲートウェイメディアノードにおいてそのパケットをネットワーク転送のために再度暗号化することができる。この方法は、クライアントアプリケーションでの復号が行われる前に、最終ゲートが完全にパケット毎にネットワークの暗号化を復号する限りは、うまくいく。クライアントベースでの暗号化の場合は別として、データ破損及びパケット損失のリスクを避けるために、本発明の一実施形態では、ＳＤＮＰベース通信の実施には下記のガイドラインが有益である。
・ＳＤＮＰパケットのスクランブル化は、クライアントのＳＤＮＰイネーブルアプリケーションで、またはＳＤＮＰクラウドに入ったときにＳＤＮＰメディアノードゲートウェイで実施するべきである。
・理想的には、ＳＤＮＰ暗号化は、ＳＤＮＰメディアノード間の各ホップで行うべきである。すなわち、データパケットは、ルーティングされる前に暗号化され、次のＳＤＮＰメディアノードに入るとすぐに復号される。
・最低でも、再スクランブル化は、データパケットがＳＤＮＰクラウドに入るときまたはＳＤＮＰクラウドから出るときに（ラストマイル通信またはクラウドツークラウドホップのために）毎回行うべきである。データパケットがＳＤＮＰ暗号化されている場合、そのデータパケットは、アンスクランブル化する前に復号し、そして、再度暗号化する前に再びスクランブル化するべきである。
・入力データパケットは、混合する前に、復号及びアンスクランブル化することが好ましい。混合された長いパケットの復号及びアンスクランブルは、データ破損をもたらす。同様に、分割した後に、データをスクランブル化及び暗号化することが好ましい。混合された長いパケットの復号及びスクランブル化は、データ破損をもたらす。
・復号及びアンスクランブル化の後、かつ混合の前に、入力データパケットからジャンクパケットを除去するべきである。混合された長いパケットからのジャンク除去は、データ破損をもたらす。同様に、分割後、かつスクランブル化及び暗号化の前に、ジャンクデータを挿入することが好ましい。混合された長いパケットへのジャンク挿入は、データ破損をもたらす。
・ユーザアプリケーションでの暗号化は別にして、再スクランブル化（すなわち、アンスクランブル化及びそれに続くスクランブル化）は、好ましくは暗号化データに対して行うべきではない。
・ジャンクデータの挿入は、挿入及び除去を容易にするために、一定の方法で行うべきである。
・入力データパケットは、それらの暗号化及びスクランブル化を行った時間、ステート、及びアルゴリズムに従って、復号及びアンスクランブル化するべきである。出力データパケットは、現在の時間、それに関連するステート、それに関連するアルゴリズムに従って暗号化及びスクランブル化するべきである。
・プレーンテキストパケットは、メディアノードでのみ再生成されることが好ましい。全てのパケットは、メディアノード間で伝送される間は、スクランブル化され、暗号化され、混合され、分割され、及びジャンクデータセグメントを含む。
【０６５７】
上記の方法は本発明に従った可能な方法を示しているが、これらは、ＳＤＮＰ操作の可能な組み合わせまたは順番を限定することを意図するものではない。例えば、暗号化されたパッケージは、それと同一のデータパケットが復号前にアンスクランブル化される限りは、その後にスクランブル化することができる。
【０６５８】
一実施形態では、スクランブル化は、クライアントのＳＤＮＰアプリケーションでのみ実施され、ＳＤＮＰクラウド中のメディアノードでは実施されない。このような場合、セキュアノード内通信は、単に、図８４Ｃに示すような暗号化及び復号の操作シーケンスにより行われる。図示のように、メディアノードＭａ，ｈのＳＤＮＰ操作の構成要素は、分割操作１１０６、暗号化操作１２２５Ａ（Encryption Only）、混合操作１０８９、及び復号操作１２２５Ｂ（Decryption Only）を含む。また、ＳＤＮＰメディアノードＭａ，ｆ及びＭａ，ｊでは、ＳＤＮＰメディアノード操作のメッシュ再暗号化１２１６が実施される。
【０６５９】
実施においては、別のメディアノード（図示せず）からメディアノードＭａ，ｊに入力されたデータは、まず、メディアノードＭａ，ｈの入力のうちの１つの復号操作１２２５Ｂに送られ、その後、混合操作１０８９に送られる。このパケットに加えて、メディアノードＭａ，ｆから別のパケットが同時に入力された場合、この別のパケットは、メディアノードＭａ，ｈから別個に入力され、別の復号操作１２２５Ｂにより処理された後、ディアノードＭａ，ｊから入力されたデータパケットと混合される。混合されたデータパケットは、分割操作１１０６で実行される分割アルゴリズムに基づいて、送信先が互いに異なる、新しい別の組み合わせに分割される。各出力はその後、個別の暗号化操作１２２５Ａにより個別に暗号化され、その後、メディアノードＭａ，ｆ及びＭａ，ｊ、及びネットワーク中の別のメディアノードに送信される。
【０６６０】
このルーティング中は、混合操作１０８９及び分割操作１１０６間で瞬間的に存在する長いパケットは、実際には、同一の会話からのデータパケットであり、メディアノードＭａ，ｈを介してメディアノードＭａ，ｆからメディアノードＭａ，ｊに伝送されるデータパケットと、それと同時に、メディアノードＭａ，ｈを介してメディアノードＭａ，ｊからメディアノードＭａ，ｆに逆方向に伝送されるデータパケットとを含み得る。本発明に係るＳＤＮＰネットワークでは正確なルーティング制御が可能なので、長いデータパケットは、同一の全二重会話からのデータまたは音声の断片が互いに逆の方向に送信される場合であっても、いつでも、それに関連するコンテンツとそれに関連しないコンテンツとの組み合わせを含むことができる。メディアノードＭａ，ｈにデータが同時に到着しない場合、データパケットは、同一の長いパケットを共有することなく、順次、メディアノードを反対方向に通過する。いずれの場合でも、複数の会話を全二重モードで伝送するＳＤＮＰメディアノードにおける相互作用または性能低下は生じない。
【０６６１】
このユニークな形態のネットワーク通信は、最初は困惑するかもしれないが、図８４Ｄに示すように、この態様のデータ伝送により、メディアノードが全二重通信の両方向を同時にサポートする場合でも、ＳＤＮＰメディアノードにおけるデータ通信が簡潔に行われることは明らかである。例えば、影付きの線として示した、メディアノードＭａ，ｊに入ったデータパケットは、復号操作１０３２、混合操作１０８９、分割操作１１０６、暗号化操作１０２６をその順に通過し、最終的にはメディアノードＭａ，ｊを出て、新しい暗号化された状態でメディアノードＭａ，ｈに入る。そして、その後、新しい時間及び状態で、同じ操作手順が繰り返される。最終的には、データパケットは、メディアノードＭａ，ｈからメディアノードＭａ，ｆに入力され、そこで復号、分割、及び再暗号化され、そして最終的には、クラウド内の次のメディアノードに送信される。同時に、影が付いていない線で示す別の方向に伝送されるデータは、メディアノードＭａ，ｆに入力され、そこで復号、混合、分割、及び再暗号化された後、メディアノードＭａ，ｈに伝送される。そして最終的には、メディアノードＭａ，ｊを介して、ＳＤＮＰクラウド内の別のメディアノードに送信される。
【０６６２】
［ラストマイル通信］
クライアントとＳＤＮＰクラウドと間のデータリンクを、本明細書では、ラストマイル通信と称する。全ての通信は常に双方向であり、メッセージ送信及び返信または場合によっては全二重会話を含むので、「ラストマイル（last mile）」という用語は、発呼者及びクラウド間の接続である「ファーストマイル（first mile）」を含む。したがって、クライアントが発呼者であるかまたは着呼者であるか否かに関わらず、本明細書で使用される「ラストマイル」という用語は、クライアントとＳＤＮＰクラウドとの間のあらゆる接続を意味するものとする。ラストマイル通信の一例を図８５Ａに示す。図示のように、ＳＤＮＰクラウド１１１４は、ソフトウェアの実行により、セキュリティが確保されたクラウドのノードの少なくとも一部を構成するＳＤＮＰメディアノードＭａ，ｂ、Ｍａ，ｄ、Ｍａ，ｆ、Ｍａ，ｈ、Ｍａ，ｊ、Ｍａ，ｓ、及びＭａ，ｑとして動作するコンピュータサーバ１１１８のネットワークを含む。具体的には、図示した例では、ＳＤＮＰメディアノードＭａ，ｈをホストするコンピュータサーバ１２２０Ｈは、ＬＴＥ基地局１７に直接的または間接的に接続されたＳＤＮＰゲートウェイメディアノードとして動作し、セルラータワー（通信塔）１８及び無線リンク２８を介して、クライアントであるセルフォン３２に接続される。本明細書で使用される「ゲートウェイノード」または「ゲートウェイメディアノード」という用語は、ゲートウェイノードとクライアントデバイスとの接続が「ラストマイル」接続である場合に、ＳＤＮＰネットワークの外部に位置するノード（一般的には、例えばセルフォンまたはコンピュータなどのクライアントデバイス）に接続されるメディアノードを指す。
【０６６３】
ＳＤＮＰゲートウェイノードが、セキュリティが確保されていないラストマイルに接続される場合、例えば、ＳＤＮＰゲートウェイノードが、ＳＤＮＰアプリケーションがインストールされていないセルフォンに接続される場合の一例が、図８５Ｂに示されている。図示のように、セルフォン３２は、無線リンク２８によってセルラータワー１８に接続されている。セルラータワー１８はセルフォン３２との間でデータパケットの送受信を行い、そのデータパケットは、ＬＴＥ基地局１７により、イーサネット（登録商標）、ファイバ、同軸ケーブル、銅ケーブルなどの有線通信に変換される。データパケットは、ＰＨＹレイヤ１接続、ワイヤ、ケーブル、無線または衛星リンク上により双方向で伝送されるが、セルフォン３２からＳＤＮＰメディアノードＭａ，ｈに送信される（その逆も同様）パケットについてのデータフローは別個に示す。図示のように、セルフォンで使用されているアプリケーションが暗号化機能を内蔵しており、かつ着呼者がそれと同一の暗号化機能を有していない限り、ラストマイルでのセキュリティは確保されない。
【０６６４】
実施においては、セルフォン３２からＳＤＮＰゲートウェイメディアノードＭａ，ｈに送信されたオープンデータパケットの復号及びアンスクランブル化は所望されないため行われない、すなわちショートアウトされる。したがって、これらの操作は図示しない。その代わりに、入力データパケットは、混合操作１０８９に直接送信され別のパケットと混合された後、分割操作１１０６によりメッシュ伝送のための複数の出力に分割される。各出力はその後、伝送前にスクランブル化操作９２６及び暗号化操作１０２６が施され、これによりセキュリティが確保される。一例として図示した出力は、サーバ１２２０ＦのメディアノードＭａ，ｆに送信される。このメッセージは、上述したクラウド内通信のためにメディアノードＭａ，ｆで処理され、その後、別のメディアノード、例えばコンピュータサーバ１２２０ＪのメディアノードＭａ，ｊに送信される。
【０６６５】
クラウドから（例えばサーバ１２２０ＦのメディアノードＭａ，ｆまたは他のメディアノードから）セルフォン３２へのデータフローは、逆の順に処理される。すなわち、復号操作１０３２から開始され、アンスクランブル化操作９２８によりアンスクランブル化され、混合操作１０８９により別の入力パケットと混合され一時的な長いパケットが生成される。長いパケットはその後、分割操作１１０６により複数の断片に分割され、その一部はネットワークを介してセルフォン３２に送信される。分割されたパケットは、一緒に送信されるか、または、パースされＬＴＥ基地局１７を介してセルフォン３２に伝送されるデータパケットに含めて送信される。
【０６６６】
上述したように、ネットワークを横断するデータパケットは、繰り返し再暗号化及び再スクランブル化される。あるいは、一実施形態では、データパケットは、クラウドの横断中に、再スクランブル化されることなくスクランブル化された状態に保たれるが、各メディアノードで繰り返し再暗号化される。このような、一度だけスクランブル化し、一度だけアンスクランブル化するシステムでは、スクランブル化は、パケットがクラウドに入るゲートウェイノードで行われ、アンスクランブル化は、パケットがクラウドから出るゲートウェイノードで行われる。すなわち、スクランブル化及びアンスクランブル化は、ファーストマイル及びラストマイルに接続された最初及び最後のゲートウェイメディアノードで行われる。上述したように、ファーストマイル及びラストマイルに接続されたメディアノードはゲートウェイノードとも呼ばれ、実際にはクラウド内の他のメディアノードと同一のＳＤＮＰメディアノードソフトウェア及び機能を含むが、クライアントに接続するために機能をさらに含んでいる。
【０６６７】
一度だけスクランブル化し、一度だけアンスクランブル化するＳＤＮＰ通信を実施するための別のオプションは、スクランブル化を、ソフトウェアを使用してクライアントのデバイスで実施することである。図８５Ｃに示すように、セルフォン３２とコンピュータサーバ１２２０ＦのＳＤＮＰメディアノードＭａ，ｆとの間の通信では、ＳＤＮＰメディアノードＭａ，ｈが、クライアント及びＳＤＮＰクラウド間のゲートウェイメディアノードとしての役割を果たし、ＳＤＮＰメディアノードＭａ，ｈは、混合操作１０８９、分割操作１１０６、暗号化操作１２２５Ａ（Encryption Only）、スクランブル化操作１２２６Ｂ、及び復号操作１２２５Ｂ（Decryption Only）を含む。上述したように、Ｍノードの名称で示した任意のメディアノードまたは通信ノードは、上記した全てのセキュリティ確保操作（すなわち、混合及び分割、暗号化及び復号、スクランブル化及びアンスクランブル化）の任意の組み合わせを実施可能である。実施においては、データパケットは、セルフォン３２においてＳＤＮＰソフトウェアによりスクランブル化され、無線リンク２８を介してＬＴＥタワー１８に伝送される。そして、ＬＴＥ基地局１７により、信号は、ＳＤＮＰゲートウェイノードと通信するために、イーサネット（登録商標）、ファイバ、または他の有線通信に変換される。ローカルキャリアに応じて、セルフォン３２とＬＴＥ基地局１７との間の無線リンク２８の部分は、プライベートＮＡＴを介したトラヒックを含むか、またはインターネットを介したデータ転送を含む。データパケットはその後、ＬＴＥ基地局１７から、ＳＤＮＰゲートウェイノードとしての役割を果たすＳＤＮＰメディアノードＭａ，ｈに送信される。
【０６６８】
入力データパケットはその後、パススルー操作１２１６Ｈ（Pass Through Only）に送信され、混合操作１０８９により別の入力データパケットと混合され、分割操作１１０６により分割される。そして、セルフォン３２からのデータパケットは、暗号化操作１２２５Ａにより暗号化された後に、メディアノードＭａ，ｆに送信される。このように、クラウドを横断するデータパケットは、ゲートウェイノードにより暗号化されるが、スクランブル化はクライアントのＳＤＮＰアプリケーションにより行われる。この逆に、ＳＤＮＰクラウドからの暗号化及びスクランブル化されたデータトラヒックは、メディアノードＭａ，ｆを介してルーティングされ、復号操作１２２５Ｂにより復号され、混合操作１０８９により混合され、分割操作１１０６により新しいパケットに分割される。そして、データパケットからその送信先（セルフォン３２）の情報が抽出され、データパケットは、パススルー操作１２１６Ｈを通過して（すなわち、データパケットは変更されず）、その送信先のセルフォン３２に送信される。このようにして、全ての通信は終端間（End-to-End）でスクランブル化されるが、暗号化だけはＳＤＮＰクラウド内で行われる。
【０６６９】
上記の方法の変形例では、ラストマイル及びクラウドの両方でのスクランブル化を依然として提供するが、ラストマイルでのスクランブル化方法は、クラウドで用いられるスクランブル化方法とは異なる。図８５Ｄに示すように、セルフォン３２とコンピュータサーバ１２２０ＦのＳＤＮＰメディアノードＭａ，ｆとの間の通信では、ＳＤＮＰメディアノードＭａ，ｈが、クライアント及びＳＤＮＰクラウド間のゲートウェイメディアノードとしての役割を果たし、ＳＤＮＰメディアノードＭａ，ｈは、混合操作１０８９、分割操作１１０６、スクランブル化・暗号化操作１２２６Ｃ（Scrambling & Encryption）、復号・アンスクランブル化操作１２２６Ｄ（Decryption & Unscrambling）、スクランブル化操作１２２６Ｂ（Scrambling Only）、及びアンスクランブル化操作１２２６Ａ（Unscrambling Only）を含む。実施においては、データパケットは、セルフォン３２においてＳＤＮＰイネーブルソフトウェアによりスクランブル化され、無線リンク２８を介してＬＴＥタワー１８に伝送される。そして、ＬＴＥ基地局１７により、信号は、ＳＤＮＰゲートウェイノードと通信するために、イーサネット（登録商標）、ファイバ、または他の有線通信に変換される。ローカルキャリアに応じて、セルフォン３２とＬＴＥ基地局との間の無線リンク２８の部分は、プライベートＮＡＴを介したトラヒックを含むか、またはインターネットを介したデータ転送を含む。データパケットはその後、ＬＴＥ基地局１７から、ＳＤＮＰゲートウェイノードとしての役割を果たすＳＤＮＰメディアノードＭａ，ｈに送信される。
【０６７０】
入力データパケットはその後、アンスクランブル化操作１２２６Ａによりアンスクランブル化され、混合操作１０８９により別の入力データパケットと混合され、分割操作１１０６により分割される。そして、セルフォン３２からのデータパケットは、スクランブル化・暗号化操作１２２６Ｃによりスクランブル化及び暗号化された後に、メディアノードＭａ，ｆに送信される。このように、クラウドを横断するデータパケットは、ゲートウェイノードにより暗号化及びスクランブル化されるが、このスクランブル化は、ラストマイルでのセキュリティ確保のためにクライアントのＳＤＮＰアプリケーションで用いられたスクランブル化方法とは異なるスクランブル化方法で行われる。この逆に、ＳＤＮＰクラウドからの暗号化及びスクランブル化されたデータトラヒックは、メディアノードＭａ，ｆを介してルーティングされ、復号・アンスクランブル化操作１２２６Ｄにより復号及びアンスクランブル化され、混合操作１０８９により混合され、分割操作１１０６により新しいパケットに分割される。そして、データパケットから送信先（セルフォン３２）の情報が抽出され、データパケットは、スクランブル化操作１２２６Ｂによりスクランブル化された後に、その送信先のセルフォン３２に送信される。セルフォン３２に入ったデータパケットは、ＳＤＮＰイネーブルアプリケーションによりアンスクランブル化される。このようにして、クラウド内の通信はメディアノードにより暗号化及びスクランブル化されるが、ラストマイルにおいては、ゲートウェイノード及びセルフォンのアプリケーションにより、クラウド内でのスクランブル化方法とは異なるスクランブル化方法でスクランブル化される。セルフォンでのデータパケットのスクランブル化及びアンスクランブル化の１つの重要な側面は、クラウド及びクライアント間でステート情報、数値鍵、または共有秘密を伝送するのに用いられる方法である。このことについては後述する。
【０６７１】
［断片化データの伝送］
本発明によれば、ＳＤＮＰメディアノード機能を実施するソフトウェアを実行するコンピュータサーバのネットワークは、パケット交換通信におけるデータ断片化に基づく、様々なデバイスとのグローバル通信を容易にする。図８６に示すように、ＳＤＮＰクラウド１１１４は、ソフトウェアの実行により、下記の（ａ）−（ｈ）などの様々なデバイス及びクライアントに接続されるＳＤＮＰメディアノードＭａ，ｂ、Ｍａ，ｄ、Ｍａ，ｆ、Ｍａ，ｈ、Ｍａ，ｊ、Ｍａ，ｓ、Ｍａ，ｑ、及び図示しない他のノードとして動作するコンピュータサーバ１１１８のネットワークを含む。
（ａ）セルフォン３２及びタブレット３３との無線リンク２８を有するＬＴＥ基地局１７。ＬＴＥ基地局１７は、他のいかなるＬＴＥイネーブルデバイスにも無線接続され得る。
（ｂ）ノートブック３５またはタブレット、セルフォン、電子書籍リーダー、及び他のＷｉＦｉに接続されたデバイス（インターネット家電を含む）に対するＷｉＦｉ無線リンク２９を提供するＷｉＦｉアンテナ２６を有する公衆ＷｉＦｉシステム１００（public WiFi）。
（ｃ）光ファイバまたは同軸ケーブルによりケーブルモデム１０３（cable modem）に接続され、ケーブルモデム１０３を介してデスクトップコンピュータ３６、ホームＷｉＦｉ基地局、イーサネット（登録商標）に接続されたデバイスなどに接続されたケーブルＣＭＴＳ１０１（cable CMTS）。
（ｄ）光ファイバまたは同軸ケーブルにセットトップボックス１０２（TV STB）に接続され、セットトップボックス１０２を介してＨＤＴＶ３９に接続されたケーブルＣＭＴＳ１０１。
（ｅ）有線接続されたインターネットルータ６６Ａ、６６Ｂ、６６Ｃ（Internet）。
（ｆ）無線塔１５によりトランシーバ１６Ｂ、基地局１６Ａ、業務用車両４０などに接続された、例えばＴＥＴＲＡやＥＤＡＣＳなどの業務用無線ネットワーク１４。
（ｇ）構内電話交換機ＰＢＸ８（corp PBX）及び卓上電話機９。
（ｈ）従来の電話ネットワーク及びＰＯＴに対するＰＳＴＮブリッジ３（PSTN bridge）。
図示のように、いずれのＳＤＮＰメディアノードも、ゲートウェイノードとして動作することができる。
【０６７２】
データパケット伝送の概略図を図８７に示す。この例のＳＤＮＰクラウドベース通信では、タブレット３３及び自動車１２５５間でデータパケット１０５６（データセグメント２Ａ、２Ｂ、２Ｃ、２Ｄ、２Ｅ、２Ｆをその順で含む）を伝送し、ノートブック３５及びセルフォン３２間でデータパケット１０５５（データセグメント１Ａ、１Ｂ、１Ｃ、１Ｄ、１Ｅ、１Ｆをその順で含む）を伝送する。また、別のデータパケット１２５０（データセグメント３Ａ、３Ｂ、３Ｃ、３Ｄ、３Ｅ、３Ｆをその順で含む）、データパケット１２５２（データセグメント４Ａ、４Ｂ、４Ｃ、４Ｄ、４Ｅ、４Ｆをその順で含む）、及びデータパケット１２５１（データセグメント５Ａ、５Ｂ、５Ｃ、５Ｄ、５Ｅ、５Ｆをその順で含む）が、このネットワークを通じて、データパケット１２５５及び１２５６と共に伝送される。より短いパケットは、伝送中の様々な時間での構成要素を示し、ネットワーク伝送の動的特性を示すために、まとめて表示した。
【０６７３】
図示した例では、全てのデータパケットのデータはスクランブル化されており、データセグメントの順番が、ランダムに、または偶然にその順番に変更されている。また、ある会話のデータセグメントに、無関係なデータセグメントが分散して組み入れられている。実際には、ＳＤＮＰクラウドに一旦入ったデータパケットが、別の無関係なデータパケットと混合されないことは、ほとんどありえない。実際、２つのＳＤＮＰメディアノード間で伝送される任意のデータパケットにおいては、無関係なデータセグメントの混合、及びパケットの順番のスクランブル化が行われるのが正常な状態である。多数の会話またはデータパケットがクラウドを同時に横断するときに、全てのデータが同一のデータパケット内に保たれる可能性は、統計的にごくわずかである。十分なデータが存在しないときは、メディアノードでの混合操作によりジャンクデータを導入する。図示した、無関係なデータの様々なデータセグメントを含めることは、ＳＤＮＰ伝送中のデータパケット内の通信または会話の混合の原理を示す。ただし、データパケット内に存在する無関係なデータセグメントまたはジャンクデータセグメント、及びフィラーの実際の量及び頻度は正確に示していない。
【０６７４】
図８８Ａは、時間ｔ０及びそれに対応するステート９９０での、ノートブック３５からセルフォン３２への通信の開始を示す。通信は、データパケット１０５５及びそれと無関係なデータパケット１０５６、１２５０−１２５２が、様々なゲートウェイノードＭａ，ｑ、Ｍａ，ｈ、Ｍａ，ｂ、Ｍａ，ｓを通ってネットワークに入ることにより開始される。図８８Ｂに示すように、時間ｔ１及びそれに対応するステート９９１では、データパケット１０５５は、複数のデータパケットに分割される。データセグメント１Ａ及び１Ｂをその順番で含み、かつ無関係なデータセグメントが混合されたデータパケット１２６１ＡがメディアノードＭａ，ｂに送信される。データセグメント１Ｄ、１Ｃ、及び１Ｆをスクランブル化された順番で含み、かつ無関係なデータセグメントが混合されたデータパケット１２６１Ｂが、メディアノードＭａ，ｊに送信され、データセグメント１Ｅを含むデータパケット１２６１ＣがメディアノードＭａ，ｈに送信される。
【０６７５】
図８８Ｃに示すように、時間ｔ２及びそれに対応するステート９９２では、データは、新しいデータパケットの組み合わせに分割される。具体的には、データパケット１２６１Ａは、データパケット１２６２Ａ及び１２６２Ｂに分割され、データセグメント１Ａ及び他のデータセグメントを含むデータパケット１２６２ＡはメディアノードＭａ，ｓに送信され、データセグメント１Ｂを含むデータパケット１２６２ＢはメディアノードＭａ，ｄに送信される。また、データパケット１２６１Ｂは、データパケット１２６２Ｃ及び１２６２Ｄに分割され、データセグメント１Ｃ及び１Ｆをその順番に含み、かつ無関係なデータセグメントが混合されたデータパケット１２６２ＣはメディアノードＭａ，ｄに送信され、データセグメント１Ｄを含むデータパケット１２６２ＤはメディアノードＭａ，ｆに送信される。また、データセグメント１Ｅを含むデータパケット１２６２Ｅが、単独でまたは無関係なデータパケット（図示せず）と混合されて、メディアノードＭａ，ｆに送信される。
【０６７６】
図８８Ｄに示すように、時間ｔ３及びそれに対応するステート９９３では、データセグメント１Ａを含むデータパケット１２６３Ａ、及びデータセグメント１Ｄ、１Ｅを含むデータパケット１２６３ＣはメディアノードＭａ，ｄに送信され、データセグメント１Ｂ、１Ｃ、１Ｆを含むデータパケット１２６３Ｂは、メディアノードＭａ，ｄで、データパケット１２６３Ａ、１２６３Ｂの到着を待つ。図８８Ｅに示すように、時間ｔ４及びそれに対応するステート９９４では、メディアノードＭａ，ｄは、データパケット１２６３Ａ、１２６３Ｂ、及び１２６３Ｃを混合して元のデータパケット１０５５を復元し、そのデータパケット１０５５を一体的または断片的な形態でセルフォン３２に送信する。ノートブック３５及びセルフォン３２間でのデータパケット伝送の概要を図８８Ｆに示す。
【０６７７】
図８９Ａに示すように、ノートブック３５及びセルフォン３２間の通信とは別個にかつ同時に、タブレット３３及び自動車１２５５間の通信が、データパケット１０５６が、セキュアクラウド１１１４に入る時間ｔ０及びそれに対応するステート９９０で開始される。図８９Ｂに示すように、時間ｔ０及びそれに対応するステート９９０では、入力データパケット１０５６は、データパケット１２６１Ｄ及び１２６１Ｅに分割される。そして、データセグメント２Ｂ及び２Ｃをスクランブル化された順番で、しかし偶然にもその順番で含むデータパケット１２６１Ｄは、メディアノードＭａ，ｑに送信され、データセグメント２Ｅ、２Ｆ、２Ａ、及び２Ｄをスクランブル化された順番で含むデータパケット１２６１Ｅは、メディアノードＭａ，ｊに送信される。
【０６７８】
図８９Ｃに示すように、時間ｔ２及びそれに対応するステート９９２では、データセグメントの順番をスクランブル化し、別のソースからのデータセグメントを挿入することによりデータパケット１２６１Ｄは変更され、データパケット１２６２Ｆが生成される。同様に、データパケット１２６１Ｅは、メディアノードＭａ，ｊより、データパケット１２６２Ｇ、１２６２Ｈ、及び１２６２Ｊに分割される。データセグメント２Ａを含むデータパケット１２６２Ｊは、メディアノードＭａ，ｆに送信される。データセグメント２Ｄ及び２Ｅを含み、複数の無関係なデータセグメントと混合されたスクランブル化データパケット１２６２Ｈは、メディアノードＭａ，ｄに送信される。データセグメント２Ｆを含むデータパケット１２６２Ｇは、メディアノードＭａ，ｓに送信される。
【０６７９】
図８９Ｄに示すように、時間ｔ３及びそれに対応するステート９９３では、データセグメント２Ｂ及び２Ｃをその順番で含むデータパケット１２６３Ｄが、メディアノードＭａ，Ｓに送信される。メディアノードＭａ，Ｓでは、データセグメント２Ｆを含むデータパケット１２６３が、他のデータパケットが到着するのを待っている。同時に、データパケット１２６３Ｇが、データセグメント２Ｄ及び２Ｅをその順番で含むデータパケット１２６３Ｆが待っているメディアノードＭａ，ｄに送信される。この状況は、ＳＤＮＰネットワークでは、データパケットは即座に伝送されるか、または一時的に保持されることを強調する。図８９Ｅに示すように、時間ｔ４及びそれに対応するステート９９４では、データセグメント２Ｄ、２Ａ、及び２Ｅを含み、それらの順番がスクランブル化されたデータパケット１２６４Ｂが、メディアノードＭａ，ｓに送信される。メディアノードＭａ，ｓでは、データセグメント２Ｂ、２Ｃ、及び２Ｆを含むデータパケット１２６４が待機している。図８９Ｆに示すように、時間ｔｔでは、データセグメント２Ａ−２Ｆを組み合わせて最終的なデータパケット１０５６が生成され、自動車１２５５に送信されるか、または最終的なデータパケット１０５６の全てのデータセグメント構成要素が、分割された形態で自動車１２５５に送信され、そこで再び組み合わされる。タブレット３３及び自動車１２５５間でのデータパケット１０５６のルーティングの概要を図８９Ｇに示す。
【０６８０】
図示のように、ＳＤＮＰクラウドを通過するデータパケットは、同時に行われた複数の会話を、ＳＤＮＰメディアノード間でコンテンツを動的に変更しながら、互いに異なる送信先に伝送する。無関係なデータセグメントとの混合または分割に起因する、悪影響、データ損失、または会話漏洩は生じない。例えば、図８７に示すように、データパケット１２５７は、セルフォン３２に送信されるデータセグメント１Ｃ及び１Ｆ、自動車１２５５に送信されるデータセグメント２Ｄ及び２Ｅ、及び他の無関係なデータセグメント及びジャンクデータを含み、様々な送信先に送信されるこれらのデータセグメントは全て、データパケットを別の無関係なデータセグメントと一時的に共有することにより影響を受けない。
【０６８１】
さらには、どのデータパケットも、完全な文章、音声、または会話を含まないので、本発明に係るＳＤＮＰメディアノードで用いられるデータ断片化及びメッシュルーティングは、データパケットのコンテンツを判読不能に、かつ中間者攻撃に耐えられるように改変する。図９０に示すように、時間ｔ１では、メディアノードＭａ，ｊを出入りする伝送中のデータパケットをスニッフィングする中間者攻撃者は、サイファテキストパケット１４７０Ａ、１２７１Ａ、１２７２Ａ、及び１２７３Ａしか見ることはできない。万一、暗号化されたファイルが破られても、パケット１２７０Ｂ、１２７１Ｂ、１２７２Ｂ、及び１２７３Ｂの基礎となるプレーンテキストコンテンツは、スクランブル化された、データセグメントの不完全な組み合わせを含む。このデータ状態は、新しいデータパケットが同一のメディアノードを通過するまで、１秒足らずの間だけ持続する。スクランブル化及び混合がされていなくても、データパケットの復号に利用可能な時間は再暗号化、再スクランブル化、再分割、または再パケット化するまでの時間に限られているので、スーパーコンピュータによって攻撃しても効果がない。
【０６８２】
図９１Ａは、データ伝送を表すための基準として時間を使用したＳＤＮＰメディア伝送の動的特性を示す図である。ここに示したデータは、図８７のネットワークグラフに示したデータオーバーレイと同一である。時間ベースの表示では、ノートブック３５から送信されたデータパケット１０５５は、データパケット１２６１Ａ、１２６１Ｂ、及び１２６１Ｃに分割される。時間ｔ２では、パケット１２６１Ａは、新しいデータパケット１２６２Ａ及び１２６２Ｂに分割され、パケット１２６１Ｂは、新しいデータパケット１２６２Ｃ及び１２６２Ｄに分割され、パケット１２６１Ｃは、コンテンツが変更されることなく新しいデータパケット１２６２Ｅに更新される。時間ｔ３では、データパケット１２６２Ａは、そのコンテンツが変更されることなく新しいデータパケット１２６３Ａに更新され、パケット１２６２Ｂ及び１２６２Ｃは混合されてデータパケット１２６３Ｂが生成され、パケット１２６２Ｄ及び１２６２Ｅは混合されてデータパケット１２６３Ｃが生成される。そして、時間ｔ４では、データパケット１２６３Ａ、１２６３Ｂ、及び１２６３Ｃは混合されて、データパケット１０５５が復元される。
【０６８３】
ＳＤＮＰデータ伝送は、表の形式で表すこともできる。例えば、図９１Ｂに示す表１２７９は、時間ｔ３でのデータパケットの処理を説明するためのものであり、メディアノードのソース、入力パケット、入力パケットが暗号化された時間、入力パケットがスクランブル化された時間、データパケットが混合及び分割された、すなわちメッシュされた最後の時間、及びその結果生成された出力パケットを示す。メディアノードは、この情報を使用して、入力データパケットに対して何の処理を行うか、データの再パケット化の仕方、データの再暗号化または再スクランブル化（所望される場合）の仕方を知ることができる。
【０６８４】
図９１Ｃに示すように、動的なＳＤＮＰメディア伝送の特徴の別の側面は、他のパケットの到着を待つために、あるメディアノードでパケットを一時的に保持する機能である。図８７に示したものと同一のデータを用いて、このメカニズムを、パケット１０５６の時間ベース表示で説明する。時間ｔ１では、入力データパケット１０５６は、スクランブル化された後、データセグメント２Ｂ及び２Ｃを含むデータパケット１２６１Ｄと、データセグメント２Ａ，２Ｄ、２Ｅ、及び２Ｆを含むデータパケット１２６１Ｅとに分割される。時間ｔ２では、データパケット１２１６Ｄ及び１２１６Ｅは、４つのデータパケット、すなわちデータパケット１２６２Ｆ、１２６２Ｇ、１２６２Ｈ、及び１２６２Ｊに分割される。具体的には、データパケット１２６１Ｅが、データセグメント２Ｆを含むデータパケット１２６２Ｇ、データセグメント２Ｄ及び２Ｅを含むデータパケット１２６２Ｈと、データセグメント２Ａを含むデータパケット１２６２Ｊとに分割される。データセグメント２Ｂ及び２Ｃを含むデータパケット１２６１Ｄは、そのコンテンツが変更されないまま、時間ｔ２ではデータパケット１２６２Ｆとして、時間ｔ３ではデータパケット１２６３Ｄとしてネットワークを通過する。同様に、時間ｔ３では、データセグメント２Ａを含むデータパケット１２６３Ｊは、そのコンテンツが変更されないまま、データパケット１２６３Ｇとしてネットワークを通過する。
【０６８５】
図９１Ｃでは、データパケットがあるメディアノードで一時的に保持されることを、データパケットが時間の経過に伴いあるメディアノードからそれと同一のメディアノードに移動することにより示した。例えば、時間ｔ３及び時間ｔ４間では、その前のデータパケット１２６２Ｇと同一であり、データセグメント２Ｆを含むデータパケット１２６３Ｅが、メディアノードＭａ，ｓからメディアノードＭａ，ｓに移動することが、すなわちデータパケットが移動しないことが示されている。データパケットは静止した状態であるが、暗号化及びスクランブル化は、更新時間を反映するために変更される。時間ｔ４でメディアノードＭａ，ｓからそれと同一のメディアノードＭａ，ｓに移動するデータパケット１２６３Ｅのコンテンツを示すこの概略図は、データパケット１２６３ＥがメディアノードＭａ，ｓに保持されていることを意味する。
【０６８６】
同様に、時間ｔ３及び時間ｔ４間では、その前のデータパケット１２６２Ｈと同一であり、データセグメント２Ｄ及び２Ｅを含むデータパケット１２６３Ｆが、メディアノードＭａ，ｄからメディアノードＭａ，ｄに移動することが示されている。この場合も、データパケット１２６３Ｆが静止状態であり、メモリに一時的に保持されていることを意味する。時間ｔ４では、メディアノードＭａ，ｓにおいて、入力データパケット１２６３Ｄが、該ノードのメモリに時間ｔ３から保持されていたデータパケット１２６３Ｅと混合され、データセグメント２Ｂ、２Ｃ、及び２Ｆを含む新しい混合データパケット１２６４Ａが生成される。この新しいデータパケット１２６４Ａは、メディアノードＭａ，ｓに保持され、別の入力データが到着するのを待つ。また一方、時間ｔ４で、メディアノードＭａ，ｄにおいて、データパケット１２６３Ｆ及び１２６３Ｇが混合され、データセグメント２Ａ、２Ｄ、及び２Ｅを含むデータパケット１２６４Ｂが生成され、メディアノードＭａ，ｓに送信される。時間ｔｆでは、メディアノードＭａ，ｓにおいて、入力データパケット１２６４Ｂが、時間ｔ４から待っていたデータパケット１２６４Ａと混合され、元のデータパケット１０５６が生成される。
【０６８７】
上述したように、本発明に係る方法では、データは、ＳＤＮＰクラウドを通じて伝送されるか、または前方に進む前に特定のメディアノードに一時的に保持され入力データの到着を待つ。
【０６８８】
［伝送命令及び制御］
メディアノードが、入力データパケットをどのように処理するかを知るためには、スクランブル化、アンスクランブル化、暗号化、復号、混合、分割、ジャンクの挿入／除去、データパケットのパースに使用されるアルゴリズム、数値シード、及び鍵に関する情報を、何らかの方法を用いて取得する必要がある。重要な情報は、例えば下記に挙げるような、様々な手段またはそれらの様々な組み合わせを用いて伝達することができる。
・共有秘密を、ＳＤＮＰソフトウェアのインストールまたはリビジョンの一部としてメディアノードに伝達する。
・コンテンツの送信前にメディアノードを介して制御データを伝達する。
・データパケットの一部としてメディアノードを介して制御データを伝達する。
・例えばメディアノードと並列に動作する「シグナリングサーバ」ネットワークを介して情報を通信する、メディアノードとは別個のデータチャンネルを介して制御データを伝達する。
・ＳＤＮＰネットワークに接続されたデバイスの識別子、及びそれに対応する、シグナリングサーバまたはコンテンツを転送するメディアノードとして動作するサーバとは異なるＳＤＮＰネームサーバ上のＩＰまたはＳＤＮＰアドレスに関する情報を保管する。
【０６８９】
例えば、図９２Ａに示すように、ステート９９３に対応する時間ｔ３では、データセグメント１Ｂを含むデータパケット１２６２Ｂ、データセグメント１Ｃ及び１Ｆを含むデータパケット１２６２Ｃ、及び無関係なデータセグメントを含むデータパケット１２６２Ｈが、メディアノードＭａ，ｄに入る。メディアノードＭａ，ｄに入ると、入力データパケット１２６２Ｂ、１２６２Ｃ、及び１２６２Ｈ（明確にするために暗号化されていない形態で示す）はまず、復号・アンスクランブル化操作により処理される。データパケット１２６２Ｂ、１２６２Ｃ、及び１２６２Ｈはその後混合され（デジャンク、すなわちジャンクビットの除去を含む）、これにより、データセグメント１Ｂ、１Ｃ、及び１Ｆを含む出力データパケット１２６３Ｂが生成される。このタスクを実行するためには、メディアノードＭａ，ｂをホストするコンピュータサーバ１２２０Ｄはまず、入力データパケットの生成に使用された時間及びそれに対応するステートに関する特定の情報を取得しなければならない。この情報は、ヘッダーとしてデータパケットに含めてもよいし、シグナリングノードまたは別のメディアノードから事前に受信してもよい。図９１Ｂの表に示したように、これらの入力データパケットは、時間ｔ２で最後に暗号化されている。また、これらの入力データパケットは、ステート１３０１Ａに対応する時間ｔ１、または場合によってはステート１３０１Ｂに対応する時間ｔ２で最後にスクランブル化されている。この情報は、入力データパケットをそれの生成に使用されたステートに従って適切に処理するために、メディアノードＭａ，ｄに伝達される必要がある。時間ｔ１及びｔ２でのステート情報は、Ｄ１鍵生成器１３０５Ａ（D1 Key Generator）及びＤ２鍵生成器１３０５Ｂ（D２ Key Generator）を用いて、入力パケットの復号に必要とされるＤ１鍵１３０６Ａ及びＤ２鍵１３０６Ｂを生成するのに使用される。復号鍵生成器は、通信ノードＭａ，ｄに接続されたＤＭＺサーバに保管されたソフトウェアを使用することにより実現される。暗号化鍵及び復号鍵の動作及び生成の概略については、本明細書の背景技術の欄で説明した。静的暗号化とは異なり、ＳＤＮＰネットワークにおける暗号化は動的であり、これは、適切な復号キーを生成する唯一の方法が、ファイルが暗号化された時間を知ることであることを意味する。この情報は、時間またはステートとして、入力データパケットと共に、またはパケットの到着前に伝達され、関連する復号キーを生成するのに適切な暗号化アルゴリズムを選択するのに使用される。暗号化アルゴリズム及びそれに関連する復号鍵の生成器は、共有秘密として、通信ノードＭａ，ｄに接続されたセキュアＤＭＺサーバに保管されている。
【０６９０】
データパケットは暗号化され得るが、図示を明確にするために、データパケットは暗号化されていない形態で示されている。また、同一のステート情報が、時間ｔ１及び時間ｔ２で使用されたアルゴリズムを特定するのに使用される数値シード１３０４Ａ及び１３０４Ｂを生成するのに、数値シード生成器１３０３（Numeric Seed Generator）で使用される。数値シードは、２つの方法で生成することができる。第１の方法は、通信データパケットのスクランブル化、混合、及び暗号化が行われるメディアノードに接続されたＤＭＺサーバに保管されたソフトウェアを使用して、シードを生成する。この場合、シードは、データパケットが到着する前に、通信ノードＭａ，ｄに伝達されなければならない。
【０６９１】
第２の方法は、入力データパケットを生成した時間が、入力データパケットのヘッダーの一部として、またはそのデータパケットよりも先に到着する別個のパケットに含められて、通信ノードＭａ，ｄに伝達される。時間はその後、通信ノードＭａ，ｄに接続されたＤＭＺサーバ内に設けられた数値シード生成器１３０２に供給される。数値シード生成器１３０２により生成された数値シードは、それがローカルで生成されたか、またはソースで生成されて送信されたかに関わらず、スクランブル化アルゴリズム１３０８Ａ（Scrambling Algorithms）、混合アルゴリズム１３０８Ｂ（Mixing Algorithms）、及び暗号化アルゴリズム１３０８Ｃ（Encryption Algorithms）のテーブルを含むセレクタ１３０７（Selector）に供給される。データパケットによって（すなわち、パケットのヘッダーに含めて）、またはデータパケットよりも先に伝達されるシードまたはステート情報とは異なり、入力データパケットの生成に使用されたアルゴリズムは、パケットによって、またはパケットに含めて伝送されず、メディアノードＭａ，ｄ内、またはメディアノードＭａ，ｄがアクセス可能なセキュアサーバ内にローカルに存在する。特定の領域１３０２Ａ、この例ではゾーンＺ１（Zone Z1）に関する共有秘密としてローカルに保管されたこれらのアルゴリズムは、同一ゾーン（領域）内の全てのメディアノードで共有される。データパケットが生成されたときの時間及びステートを知ることにより、メディアノードＭａ，ｄは、各データパケット１２６２Ｂ、１２６２Ｃ、及び１２６２Ｈがどのような処理により生成されたか、また、その処理をどのようにして元に戻して各データパケット１２６２Ｂ、１２６２Ｃ、及び１２６２Ｈのプレーンテキストデータを復元するか（例えば、暗号化されたパケットをどのようにして復号し、スクランブル化されたパケットをどのようにしてアンスクランブル化するか）を認識及び決定することができる。共有秘密の使用、及びその配布方法については、後述する。
【０６９２】
復号鍵１３０６Ａ及び１３０６Ｂは、選択された暗号化アルゴリズム１３０９Ｃ（Selected Encryption Algorithm）と協働して、サイファテキストをプレーンテキストに復号する。具体的には、暗号化アルゴリズム１３０９Ｃは、データパケットをサイファテキストからプレーンテキストに変換するのに用いられる一連の数学的ステップを表す。復号鍵１３０６Ａ及び１３０６Ｂはその後、入力データパケットが最後に暗号化されたときのステートまたは時間に各々対応し、パケットの復号に使用される上記ステップの特定の組み合わせを選択する。両方の入力パケットが同一時間で暗号化された場合は、単一の復号鍵のみが必要とされることとなる。上記では「暗号化アルゴリズム１３０９Ｃ」と称したが、暗号化アルゴリズムは、それと逆の処理である復号アルゴリズムも定義することを理解されたい。「非対象」鍵を使用する特定の種類の暗号化を除いては、ほとんどのアルゴリズムは対称的であり、これは、データパケットの暗号化またはスクランブル化に使用されたアルゴリズムと逆の処理が、そのデータパケットの復号またはアンスクランブル化、すなわち元のコンテンツの復元に使用できることを意味する。図９２Ａに示した特定の例では、入力データパケット１２６２Ｂ、１２６２Ｃ、及び１２６２Ｈに対応する各時間及びステートについて、セレクタ１３０７は、入力パケットの復号に必要な選択された暗号化アルゴリズム１３０９Ｃ、入力パケットのアンスクランブル化に必要な選択されたスクランブル化アルゴリズム１３０９Ａ（Selected Scrambling Algorithm）、及びパケットを特定の順番に組み合わせ、ジャンクデータを除去するのに必要な選択された混合アルゴリズム１３０９Ｂ（Selected Mixing Algorithm）を出力する。したがって、セレクタ１３０７により選択された暗号化アルゴリズム、スクランブル化アルゴリズム、及び混合アルゴリズムは、メディアノードＭａ，ｄで、コンピュータサーバ１２２０Ｄによりデータパケット１２６２Ｂ、１２６２Ｃ、及び１２６２Ｈの復号操作、アンスクランブル化操作、及び混合操作をそれぞれ実施するのに使用される。したがって、データがメディアノードでどのように処理されるかは、入力データパケットの時間及びステートと、選択されたアルゴリズムの両方に依存する。例えば、選択された混合アルゴリズム１３０９Ｂは、長いパケットに混合される入力データパケットを、そのパケットが生成された時間に基づいて、時間の古い順に配置することができる。例えば、一番古いパケットはパケットの先頭に配置され、一番新しいパケットは長いパケットの末尾に配置される。あるいは、データパケット１２６３Ｂに示すように、データは、データセグメントの時系列順に配置される。すなわち、データセグメント１Ｂはデータセグメント１Ｃの前に、データセグメント１Ｃはデータセグメント１Ｆの前に配置される。そのため、入力データパケットの処理は、現在の時間またはステートではなく、入力パケットの生成に関する時間及びステート情報を必要とする。入力データパケットのステート及び時間情報を事前に傍受されない限りは、ハッカーは、たとえアルゴリズムテーブル及び現在のステートにアクセスできたとしても、メディアノードの入力データを復号、解読、���み取り、または判読することはできない。上述したように、セレクタ１３０７によるアルゴリズムの選択、及び鍵生成器１３０５Ａ及び１３０５Ｂによる鍵の生成は、この例ではゾーン情報１３０２Ａまたは「Zone Z1」として示す、データパケットが生成された場所である地理的領域または「サブネット（subnet）」に依存する。このゾーン（領域）の使用については、後述する。
【０６９３】
入力データパケットの制御を示す前述の説明とは対照的に、図９２Ｂに示す出力データパケットの制御は、過去の時間及びステートではなく、現在の時間及びそれに対応するステートに依存する。図示のように、時間ｔ３及びそれに対応するステート１３０１Ｃでは、数値シード生成器１３０３は、セレクタ１３０７が、スクランブル化アルゴリズム１３０８Ａ、混合アルゴリズム１３０８Ｂ、暗号化アルゴリズム１３０８Ｃのテーブルから、分割、スクランブル化、及び暗号化にそれぞれ対応するアルゴリズムを選択するのに使用する数値シード１３０４Ｃを生成する。混合アルゴリズム１３０８Ｂは一般的に、対象的な処理なので、混合に使用されたアルゴリズムと逆の処理は、分割の操作、この例では、長いデータパケットを伝送するための複数のパケットに分割するのに使用される。デュアルチャンネルまたはトリチャンネル通信では、全ての生成されたパケットの送信先は、パケットルーティングを管理するシグナリングサーバからノードに伝達される。単一チャンネル通信では、メディアノード自体が、シグナリングサーバの機能を模倣し、それら自体のルートを発呼者間にマッピングする必要がある。
【０６９４】
同一のステート情報１３０１Ｃが、出力データパケットの暗号化に必要とされるＥ３鍵１３０６Ｃを生成するためにＥ３鍵生成器１３０５Ｃ（E3 Key Generator）と、テーブル１３０８Ｃから暗号化アルゴリズム１３０９Ｃを選択するのに使用されるシード１３０４Ｃを生成するためにシード生成器１３０３に供給される。Ｅ３鍵は、選択された暗号化アルゴリズム１３０８Ｃと協働して、プレーンテキストをサイファテキストに暗号化する。具体的には、暗号化アルゴリズムは、プレーンテキストからのデータパケットを変換して、何百万、何十億、何兆のうちの１つの可能性があるサイファテキストを生成するのに用いられる一連の数学的ステップを表す。その後、暗号化鍵により、パケットの暗号化に使用される上記のステップの特定の組み合わせが選択する。
【０６９５】
例えばhttp://en.wikipedia.org/wiki/advanced_encryption_standardに記載されているＡＥＣ（Advanced Encryption Standard）などの対称鍵暗号化法では、ファイルの暗号化に使用される鍵は、ファイルの復号に使用される鍵と同一である。このような場合、鍵は、例えばＥ３鍵生成器１３０５Ｃを使用して、ローカルで、各メディアノード内に含まれる共有秘密として生成することが望ましい。対称鍵を、ネットワークを介してメディアノードに提供しなければならない場合、鍵は、メディア、すなわちデータパケット及びコンテンツが使用するチャンネルとは異なる通信チャンネルを使用して伝送することが望ましい。複数チャンネル通信については後述する。
【０６９６】
対称鍵のセキュア伝送を向上させるための別の方法は、その通信自体と無関係な時間に（例えば１週間前に）、対称鍵をメディアノードに供給して別の暗号化レイヤで暗号化するか、または対称鍵を互いに異なる２つの時間に伝送される２つの部分に分割することである。別の方法では、Ｅ３鍵生成器１３０５Ｃで鍵分割アルゴリズムを使用して鍵を分割し、鍵の一部を共有秘密として各メディアノードにローカルに保存し（すなわちネットワーク上にはけっして存在しない）、鍵の残りの部分をオープンに伝送する。サイバーパイレーツは、鍵の一部しか見ることができず、実際の鍵が何ビットであるか分からないので、セキュリティが向上する。鍵の長さが分からないことにより、鍵の長さ及び鍵の各構成要素を推測しなければならないため、正しい鍵の推測は事実上不可能となる。
【０６９７】
非対称または公開鍵アルゴリズムの場合、Ｅ３鍵生成器１３０５Ｃは、一対の鍵を同時に生成する。一方の鍵は、暗号化用であり、他方の鍵は、ステート１３０１Ｃまたは時間ｔ３に基づく復号用である。復号鍵は、共有秘密としてメディアノードに保管され、暗号鍵は、データパケットを送信する準備をしているメディアノードに安全にかつオープンに送信される。実時間ネットワークで対称鍵を使用することの複雑さの１つは、コンテンツを含むデータパケットをメディアチャンネルに送り出す前に暗号化鍵を生成して、全てのメディアノードに送信する必要があることである。データパケットが、それを復号するための鍵の前に到着した場合、データは陳腐化（go stale）、すなわち使用できなくなる。非対称及び公開暗号化鍵の使用及び管理の説明は、様々な文献及びオンライン出版物、例えば、http://en.wikipedia.org/wiki/public-key_cryptographyから入手可能である。公開暗号化鍵は公知の技術であるが、本開示のアプリケーションは、実時間ネットワーク及び通信システムへの暗号化法のユニークな統合を含む。
【０６９８】
アルゴリズム、数値シード、及び暗号化鍵の全ては、現在のサブネットゾーン１３０７Ａ、この例ではゾーンＺ１（Zone Z1）について生成される。このゾーン及び現在時間ｔ３に基づいて、暗号化鍵１３０６Ｃは、選択された分割アルゴリズム１３０９Ｂ、選択されたスクランブル化アルゴリズム１３０９Ａ、及び選択された暗号化アルゴリズム１３０９Ｃと共に、コンピュータサーバ１２２０ＤにホストされたメディアノードＭａ，ｄに供給される。これにより、無関係なデータセグメントを含み、時間ｔ３で送信される（SEND at t3）出力データパケット１２６３Ｃと、データセグメント１Ｂ、１Ｃ、及び１Ｆを含み、次のメディアノードにルーティングされる前に時間ｔ４まで保持される（HOLD for t4）出力データパケット１２６３Ｂとの２つの出力が生成される。データパケットまたはデータセグメントを一時的に保持するか、または次のメディアノードに即座に送信するかの命令は、メディアノードに様々な方法により伝達される。１つの方法では、入力データパケットに、いつまでまたは何の条件まで保持するかという保持の命令が埋め込まれる。別の方法では、シグナリングサーバ、すなわち別の通信チャンネルにより、メディアノードに対して該ノードがするべきことの命令を伝達することができる。セキュア複数チャンネル通信におけるシグナリングサーバの使用については、後述する。
【０６９９】
図９３に示すように、アルゴリズムのテーブルからアルゴリズム（スクランブル化／アンスクランブル化アルゴリズム、暗号化／復号アルゴリズム、または混合／分割アルゴリズム）を選択するために、セレクタ１３０７は、アルゴリズム及びメモリアドレスのリスト１３０８Ｄを検索し（search addresses）、時間ｔｘ及びそれに対応する現在のステート１３０１Ｄに基づきシード生成器１３０２で生成されたアドレス１３０４Ｄ（Seed(tx)）と比較する。ステートに基づき生成されたアドレス１３０４Ｄが、アルゴリズムテーブル１３０８Ｄ内のアルゴリズムと一致した場合、一致したアルゴリズムが選択され、選択されたアルゴリズム１３０９Ｄ（Selected Algorithm）が使用のために選択ルーチンから出力される。例えば、シード生成器１３０３が、「３５６」の値を有するアドレス１３０４Ｄを生成した場合、セレクタ１３０７は、それに一致するアルゴリズムをテーブルから特定する。すなわち、「位相シフトｍｏｄ２」（phase shift mod 2）が、選択されたアルゴリズム１３０９Ｄとして出力される。
【０７００】
系統的な追跡を防止するため、たとえ偶然に繰り返された場合であっても、同一のアドレスによって同一のアルゴリズムを呼び出されないように、アルゴリズムとそれに対応するメモリアドレスのリストは定期的に（例えば毎日または毎時間）リフレッシュされる。図９４に示すように、ゾーンＺ１の日３１８についてのアルゴリズムテーブルは、ゾーンＺ１の日３１８でのスクランブル化及びアンスクランブル化に使用されるアルゴリズムアドレステーブル１３０８Ｄ（Z1 Scrambling on Day 318）、ゾーンＺ１の日３１８での分割及び混合に使用されるアルゴリズムアドレステーブル１３０８Ｅ（Z1 Mixing on Day 318）、及びゾーンＺ１の日３１８での暗号化及び復号に使用されるアルゴリズムアドレステーブル１３０８Ｆ（Z1 Encryption on Day 318）を含む。そして、所定のイベント日１３１１（Event Date）及び時間１３１０（Schedule Time）に、アドレス再割り当て操作１３１２（Reassign Address(SDNP List Shuffling)）により、アルゴリズム及びアドレスのリストをシャッフルし（すなわち、混ぜ合わせ）、ゾーンＺ１の日３１９でのスクランブル化及びアンスクランブル化に使用されるアルゴリズムアドレステーブル１３０８Ｇ（Z1 Scrambling on Day 319）、ゾーンＺ１の日３１９での分割及び混合に使用されるアルゴリズムアドレステーブル１３０８Ｈ（Z1 Mixing on Day 319）、及びゾーンＺ１の日３１９での暗号化及び復号に使用されるアルゴリズムアドレステーブル１３０８Ｊ（Z1 Encryption on Day 319）を含む３つの新しいアルゴリズムテーブルを作成する。例えば図示のように、アルゴリズム「transpose mod 5」に対応するメモリアドレスは、日３１８では３５９であるが、日３１９では４２４に変更されている。このようにして、アドレスとアルゴリズムとの対応テーブルは、ハッキングを防止するためにシャッフルされる。
【０７０１】
［ゾーン及びブリッジ］
ハッカーまたはサイバーパイレーツがＳＤＮＰクラウド及びネットワークの全体にアクセスすることを防止しつつ、グローバルに通信するために、本発明の別の実施形態では、ＳＤＮＰ通信ネットワークは、「ゾーン（zones）」に細分される。ここでは、ゾーンは、ネットワークを細分領域（sub-division）、すなわち「サブネット（subnet）」を表す。各ゾーンは、個別のアルゴリズム、ゾーンで使用される混合／分割、スクランブル化／アンスクランブル化、及び暗号化／復号を定義する個別のアルゴリズムテーブル、個別の暗号化鍵、及び個別の数値シードを含む、独自のユニークな命令、制御、及びセキュリティの設定を有する。当然ながら、同一のゾーン内に存在し、ＳＤＮＰソフトウェアを実行する通信サーバは、同一のゾーン設定を共有し、該サーバがどのゾーン内に存在するかには全くとらわれない態様で動作する。
【０７０２】
各サブネットは、互いに異なるＩＰＳまたはホスティング会社、例えば、Ｍｉｃｒｏｓｏｆｔ（登録商標）、Ａｍａｚｏｎ（登録商標）、Ｙａｈｏｏ（登録商標）によりホストされたＳＤＮＰソフトウェアを実行する互いに異なるサーバクラウド、またはプライベートにホストされたクラウドまたはネットワークアドレストランスレータ（ＮＡＴ）、例えばダークファイバ専用帯域を有するレンタルされたプライベートクラウドを含むことができる。また、コムキャスト・ノーザンカリフォルニア（Comcast northern California）、ローカルＰＳＴＮ、またはローカルセルフォン通信などのラストマイルサービスを提供するキャリアを別個のゾーンとして扱うことも有益である。ゾーンを用いることも主な利点は、天才的なサイバーパイレーツがＳＤＮＰセキュリティ対策を一時的に破ったという最悪の場合に、サイバーパイレーツの攻撃の地理的範囲を小さいサブネットに限定し、それにより、エンドツーエンド通信に対するアクセスを防ぐことである。本質的に、ゾーンは、サイバー攻撃による被害を受ける可能性を有している。
【０７０３】
図９５Ａに示すゾーンの使用の例では、ＳＤＮＰソフトウェアを実行するコンピュータサーバ１１１８を含むクラウド１１１４は、「ゾーンＺ１（Zone Z1）」を含むサブネット１３１８Ａと、「ゾーンＺ２（Zone Z2）」を含むサブネット１３１８Ｃとの２つのサブネットに分割されている。図示のように、サブネット１３１８Ａは、ＳＤＮＰメディアノードＭａ，ｗ、Ｍａ，ｓ、Ｍａ，ｊ、Ｍａ，ｂ、Ｍａ，ｑ、及びＭａ，ｆを、Ｍｂ，ｄ及びＭｂ，ｈと共に含み、サブネット１３１８Ｃは、Ｍｃ，ｊ、Ｍｃ，ｎ、Ｍｃ，ｖ、Ｍｃ，ｕ、及びＭｃ，ｚを、Ｍｂ，ｄ及びＭｂ，ｈと共に含む。すなわち、コンピュータサーバ１２２０ＤにホストされたＭｂ，ｄと、コンピュータサーバ１２２０ＨにホストされたＭｂ，ｈは、サブネット１３１８及びサブネット１３１８Ｃの両方に共有されている。コンピュータサーバ１２２０Ｄ及び１２２０Ｈ上で実行されるＳＤＮＰソフトウェアは、ゾーンＺ１及びゾーンＺ２内の他のメディアノードとどのように通信するかを理解している必要がある。このようなデバイスは、２つのサブネット間の「ブリッジ（bridge）」としての役割を果たし、必然的に、ゾーンＺ１からのデータ（セキュアファイル）を、ゾーンＺ２に従ったデータフォーマット（セキュアファイル）に変換しなければならない（逆の場合も同じ）。
【０７０４】
例えばブリッジメディアノードＭｂ，ｄなどのブリッジメディアノードで実施される変換操作を図９５Ｂに示す。図示のように、ゾーンＺ１からゾーンＺ２へのデータフローは、ブリッジメディアノードＭｂ，ｄをホストするブリッジコンピュータサーバ１２２０ＤでのＤＵＭ操作１２１０により、アルゴリズムテーブル１３０８Ｋ（Zone Z1 DUM Algorithms）を使用して、復号、アンスクランブル化、及び混合が施され、これにより、長いパケットが生成される。生成された長いパケットは、メディアノードＭｂ，ｄ内で、ＳＳＥ操作１２１３により、アルゴリズムテーブル１３０８Ｌ（Zone Z2
SSE Algorithms）を使用して、分割、スクランブル化、及びサブネット１３１８Ｃ（ゾーンＺ２）のための暗号化が施される。ブリッジメディアノードＭｂ，ｄの全二重バージョンを図９５Ｃに示す。図示のように、ブリッジメディアノードＭｂ，ｄは、ゾーンＺ１からゾーンＺ２の方向とそれと逆の方向との双方向のデータ伝送及び変換を実施する。ゾーンＺ１からゾーンＺ２へのデータ変換については、ブリッジメディアノードＭｂ，ｄをホストするＳＤＮＰブリッジコンピュータサーバ１２２０Ｄは、データパケットがゾーンＺ１（サブネット１３１８Ａ）から出るときに該データパケットに対してＤＵＭ操作１２１０を実施し、そのデータパケットがゾーンＺ２（サブネット１３１８Ｃ）に入るときに該データパケットに対してＳＳＥ操作１２１３を実施する。これとは逆に、ゾーンＺ２からゾーンＺ１へのデータ変換については、ＳＤＮＰブリッジコンピュータサーバ１２２０Ｄは、データパケットがゾーンＺ２（サブネット１３１８Ｃ）から出るときに該データパケットに対してＤＵＭ操作１２１０を実施し、そのデータパケットがゾーンＺ１（サブネット１３１８Ａ）に入るときに該データパケットに対してＳＳＥ操作１２１３を実施する。
【０７０５】
図９５Ｃに示す完全に統合されたＳＤＮＰブリッジメディアノードＭｂ，ｄは、互いに異なる２つのゾーン、すなわちゾーンＺ１及びゾーンＺ２に対して、ＤＵＭ操作及びＳＳＥ操作の両方を実施する。両操作は、共通のコンピュータサーバ１２２０Ｄ内で行われる。このような、完全に統合された実施形態は、互いに接続された２つのサブネットが、同一のＩＳＰまたはクラウド内にホストされている場合にのみ実現される。一方、図９５Ｄに示すサブネット１３１８Ａ及び１３１８Ｃのように、サブネットが互いに異なるクラウド内に存在し、互いに異なるサービスプロバイダによりホストされている場合は、通信ブリッジは、同一のクラウド内に存在しない２つのコンピュータサーバ間で実現しなければならない。図示のように、ブリッジ通信リンク１３１６Ｂ（bridge）により、クラウド１１１４内のゾーンＺ１で動作しているＳＤＮＰブリッジメディアノードＭｂ，ｈを、クラウド１３１５内のゾーンＺ２で動作しているＳＤＮＰブリッジメディアノードＭｂ，Ｕに接続する。複数のクラウド間で通信する場合、クラウド間を接続するブリッジ通信リンク１３１６Ｂは、セキュリティが確保されておらず、スニッフィング及びサイバー攻撃に対して脆弱であるため、図９５Ｃに示した方法と同一の方法を用いると問題が生じる。図９５Ｅは、そのような場合、つまり、サブネット１３１８Ａ内のコンピュータサーバ１２２０ＨによりホストされたブリッジメディアノードＭｂ，ｈによりＤＵＭ操作が行われ、データパケットが、ゾーンＺ１から、ブリッジ通信リンク１３１６Ｂを介して、サブネット１３１８Ｃ（ゾーンＺ２）内のコンピュータサーバ１２２０ＵによりホストされたブリッジメディアノードＭｂ，Ｕに送信される場合を示す。しかし、通信は、ブリッジメディアノードＭｂ，ｈのＤＵＭ操作から出力された暗号化及びスクランブル化がされていない長いパケットであるため、クラウドツークラウドホップはセキュリティが確保されておらず、サイバー攻撃に曝される。
【０７０６】
この問題に対する解決策は、図９５Ｆに示すように、各クラウドに全二重ブリッジインターフェースメディアノードを設け、インターフェース間の通信伝送のセキュリティを確保することである。ゾーンＺ１からゾーンＺ２への通信では、サブネット１３１８Ａ内のゾーンＺ１から入力されるデータパケットは、スクランブル化及び暗号化され、単一チャンネルゾーンＺ２データに変換される。この操作は、メディアノードＭｂ，ｄが、ゾーンＺ１及びゾーンＺ２の両方、数値シード、暗号化鍵、アルゴリズムテーブル、及び他のセキュリティ情報にアクセスできることを必要とする。全ての処理は、ゾーンＺ２（送信先クラウド）ではなく、サブネット１３１８Ａ内に位置するコンピュータサーバ１２２０Ｄで実施される。セキュアデータはその後、セキュアブリッジ通信リンク１３１６Ａを使用して、サブネット１３１８Ａ内のブリッジインターフェースメディアノードＭｂ，ｄから、サブネット１３１８Ｃ内のブリッジインターフェースメディアノードＭｂ，Ｕに送信される。ブリッジインターフェースメディアノードＭｂ，Ｕに到着したデータパケットは、ゾーンＺ２の情報に従って処理された後、サブネット１３１８Ｃ内に送信される。
【０７０７】
これとは逆に、ゾーンＺ２からゾーンＺ１への通信では、サブネット１３１８Ｃ内のゾーンＺ２から入力されるデータパケットは、スクランブル化及び暗号化され、単一チャンネルゾーンＺ１データに変換される。この操作は、メディアノードＭｂ，ｄが、ゾーンＺ１及びゾーンＺ２の両方、数値シード、暗号化鍵、アルゴリズムテーブル、及び他のセキュリティ情報にアクセスできることを必要とする。全ての処理は、ゾーンＺ１（送信先クラウド）ではなく、サブネット１３１８Ｃ内に位置するコンピュータサーバ１２２０Ｕで実施される。セキュアデータはその後、セキュアブリッジ通信リンク１３１６Ｃを使用して、サブネット１３１８Ｃ内のブリッジインターフェースメディアノードＭｂ，Ｕから、サブネット１３１８Ａ内のブリッジインターフェースメディアノードＭｂ，ｄに送信される。ブリッジインターフェースメディアノードＭｂ，ｄに到着したデータパケットは、ゾーンＺ１の情報に従って処理された後、サブネット１３１８Ａ内に送信される。セキュアブリッジ通信リンク１３１６Ａ及び１３１６Ｃは、別個のラインとして説明されているが、両ラインはネットワークレイヤ３での別個の通信チャンネルを示すものであり、ハードウェアまたはＰＨＹレイヤ１ディスクリプションでの別個のワイヤ、ケーブル、またはデータリンクを示すことを意図するものではない。あるいは、受信側のブリッジノードは、Ｚ１ゾーン及びＺ２ゾーンの両方の共有秘密を保持している限り、データを送信側のＺ１ゾーンから受信側のＺ２ゾーンに伝送させることができる。
【０７０８】
［ＳＤＮＰゲートウェイ操作］
上記セクションでは、「ブリッジ」は、別個のサブネット、ベットワーク、またはクラウド間で通信する任意のメディアノードまたは一対のメディアノードとして説明した。同様に、本明細書で開示されるＳＤＮＰ「ゲートウェイメディアノード」は、ＳＤＮＰクラウドとクライアントのデバイス、例えば、携帯電話、自動車、タブレット、ノートブック、またはＩｏＴデバイス等との間の通信リンクを提供する。ゲートウェイメディアノード操作は図９６Ａに示されており、ＳＤＮＰメディアノードＭｂ，ｆをホストするＳＤＮＰクラウド１１１４内のコンピュータサーバ１２２０Ｆは、サブネット１３１８Ａとタブレット３３へのラストマイル接続１３１８Ｄとの間のＳＤＮＰゲートウェイメディアノードとして機能する。サブネット１３１８Ａとは異なり、ラストマイル接続１３１８Ｄは、インターネット、プライベートクラウド、ケーブルＴＶ接続、またはセルラーリンクを介して行われる場合がある。ラストマイル接続では、サブネット１３１８Ａにあるようにルーティングを正確に制御することはできない。例えば、ゲートウェイメディアノードＭｂ，ｆは、接続１３１７によってサーバ６５Ａにリンクするが、その点を超えて、パブリックＷｉＦｉベースステーション１００へのルーティングは、ローカルインターネットルータによって制御される。ＷｉＦｉアンテナ２６からタブレット３３へのＷｉＦｉ無線リンク２９は、空港、ホテル、コーヒーショップ、コンベンションセンター、劇場、または他の公共の場所に配置されることが多いローカルデバイスによっても制御される。
【０７０９】
代わりに、ラストマイル接続には、アンテナ１８からタブレット３３への無線リンク２８と共に、ＬＴＥ基地局１７への有線リンクを含む場合がある。そのような不確定なルーティングやアクセスがあるため、ＳＤＮＰクラウドで使用されるセキュリティ設定や秘密情報を、ラストマイルにおいて、クライアントにルーティングするデバイスと共有しないことが望ましい。そのため、ラストマイルリンク１３１８ＤはゾーンＺ１情報にアクセスすることはできず、代わりにセキュリティ設定を管理するために別個のゾーンＵ２を使用する。クラウド１１１４とラストマイルゲートウェイメディアノードＭｂ，ｆとをリンクさせるために、ノードＭｂ，ｆはゾーンＺ１とゾーンＵ２のセキュリティ設定の両方にアクセスし、クラウドインターフェース１３２０とクライアントインターフェース１３１２との間の通信を容易にする。セキュリティを確保したラストマイル通信を提供するために、クライアント、図中のタブレット３３では、ＳＤＮＰクライアントソフトウェアプリケーション１３２２も実行していなければならない。
【０７１０】
ＳＤＮＰゲートウェイノードＭｂ，ｆは、クラウド１１１４内のメディアノード間の通信を容易にするクラウドインターフェース１３２０と、ラストマイルに渡る通信を容易にするクライアントインターフェース１３２１とを含む。図９６Ｂに示すように、クラウドインターフェース１３２０は、２つのデータパス、すなわちＳＳＥ１２１３、及びＤＵＭ１２１０を含む。図９６Ｃに示すように、クライアントインターフェース１３２１はまたゲートウェイからクライアントへのデータフローのためのものと、クライアントからゲートウェイへの逆方向のデータフローのためのものとの、２つのデータパスを含む。具体的には、ゲートウェイからクライアントへのデータフローには、ジャンクデータをデータストリームに挿入するために用いられるシングルルート分割操作１１０６と、それに続くパケットスクランブル化９２６と、最後の暗号化１０２６とを順に含む。すなわち、クライアントからゲートウェイへのデータフローは、復号１０３２、パケットアンスクランブル化９２８、及びデータストリームからジャンクデータを除去するために用いられるシングルルート混合操作１０８９を順に含む。
【０７１１】
ラストマイルのようなシングルルート通信における混合及び分割操作の役割は２つある。一つ目は、リアルタイムデータストリームは、容易に検出することができないように、それぞれが独自の識別タグを有し、場合によっては様々な長さの多数の連続したサブパケットに分割される点が重要である。したがって、結果として得られるシリアルデータストリームは、最初のパケットが送信されている間に一時的に保持されるべきいくつかのデータサブパケットを必要とする。通信データレートはＳＤＮＰクラウドでは数百ギガビット／秒となることがあるため、シリアル化はほぼ瞬時に行われ、ナノ秒で行われる必要がある。ラストマイル通信では、データレートはより遅く、例えば毎秒２ギガビットとなる（しかし、現代のシステムではまだ非常に速い）。ＷｉＦｉ、４Ｇ／ＬＴＥ、ＤＯＣＳＩＳ  ３、及びイーサネット（登録商標）は、いずれもデータを連続的に送信するため、遅延が発生しない。
【０７１２】
シングルチャネル混合の二つ目の役割は、シングルルート混合操作が、図６７Ｊにおいて上述した手法に基づく、解析を困難にする様々な方法で、ジャンクデータをサブパケットに挿入するために用いられるということである。
【０７１３】
図９６Ｄに示すように、ラストマイルにおいて安全に通信を行うために、クライアント１３２２はクライアントソフトウェアを実行しなければならない。携帯電話やタブレットでは、このクライアントソフトウェアは、デバイスのオペレーティングシステム、例えば、アンドロイド（登録商標）やｉＯＳ上で動作しなければならない。デスクトップまたはノートブックコンピュータでは、クライアントソフトウェアはコンピュータのオペレーティングシステム、例えばＭａｃＯＳ（登録商標）、Ｗｉｎｄｏｗｓ（登録商標）、Ｌｉｎｕｘ（登録商標）、Ｕｎｉｘ上で動作しなければならない。ＳＤＮＰクライアントソフトウェアをホストすることができないＩｏＴなどのコンシューマデバイスと通信が行われる場合には、埋め込まれたクライアントファームウエアを備えたハードウェアデバイスをインターフェースとして使用される場合がある。クライアント１３２２によって実行される通信に関連するファンクションには、復号操作１０３２による受信データパケットの処理、パケットアンスクランブル化９２８、及びパケットペイロードを回復するための、シングルルート混合操作１０８９を用いたデジャンクキングを含まれる。その後、アプリケーション１３３６で使用されるコンテンツには、オーディオコーデック、ＭＰＥＧファイル、画像、非メディアファイル、及びソフトウェアに使用されるデータが含まれる。
【０７１４】
データパケットを送信するためにクライアント１３２２によって実行される通信に関連するファンクションには、シングルルート分割操作１０２６におけるジャンクデータの挿入と、パケットスクランブル化９２６と、ゲートウェイへのラストマイル通信に必要となるデータパケットを用意するために最後に実行される暗号化動作１１０６とが含まれる。
【０７１５】
セキュリティを確保したＳＤＮＰゲートウェイノードＭｂ，ｆの操作は、より詳細には図９７Ａに示されており、まず、クラウドインターフェース１３２０及びクライアントインターフェース１３２１は、メディアノードＭａ、ｈから送信されたデータパケットを受信し、ゾーンＺ１セキュリティ設定に従ってＤＵＭ操作１２１０を用いて復号、アンスクランブル化、及び混合を実行し、スクランブルされていない平文を表す典型的なデータパケット１３３０を生成する。次いで、データパケット１３３０は、ゲートウェイメディアノードＭｂ，ｆの内部で動作するクライアントインターフェース１３２１に転送され、クライアントインターフェース１３２１は、シングルルート分割操作１１０６の際に、クラウドによって用いられるゾーンＺ１セキュリティ設定ではなく、ゾーンＵ２セキュリティ設定を基づいて、ジャンクデータ１０５３をデータパケットに挿入する。そのデータパケットが次に、再びラストマイル特有のゾーンＵ２セキュリティ設定に基づいたスクランブル化操作９２６によってスクランブルされて、データパケット１３２９が生成される。
【０７１６】
図９７Ａに示された例では、スクランブル化操作９２６は、実際のデータを含むものをスクランブルし、ジャンクデータを含むものをスクランブルしないアルゴリズムが採用されている。次に、クライアントインターフェース１３２１において、再びゾーンＵ２のセキュリティ設定に基づいて暗号化操作１０２６が実行され、発信暗号文１３２８が生成される。（図示されているように）データ領域がジャンクデータとは別個に個別に暗号化されてもよく、あるいは、全データパケット１３２９が暗号化され、一つの長い暗号文を生成してもよい。暗号化されたデータパケットは最終的に、シングル通信チャンネルを介して、クライアントに転送、すなわち、「エクスポート」される。
【０７１７】
同時に、スクランブルされた暗号文１３２７を含むデータがクライアントからルーティングされ、ラストマイルシングルチャネルを介して受信され、アルゴリズム、復号鍵等を含むゾーンＵ２のセキュリティ設定に基づいて、解読操作１０３２によって解読され、ジャンクデータとスクランブルされたデータセグメントとが混在したスクランブルされた平文データソケット１３２６が生成される。本発明の一実施形態では、インポート側のデータパケット１３２６におけるジャンクデータの配置は、エクスポート側のスクランブル平文データパケット１３２９のジャンクパケットの配置とは同じではない。例えば、エクスポート側のパケット１３２９では、１つおきにジャンクデータが含まれているのに対して、インポート側のパケットには、１番目、２番目にスクランブルされたデータが含まれ、３番目、４番目にジャンクデータが含まれる４つのスロットを１セットとし、そのセットが繰り返された形態となっている。
【０７１８】
スクランブルされた平文データパケット１３２６は次に、ゾーンＵ２セキュリティ設定に基づいてパケットアンスクランブル化操作９２８、及び、その後、混合操作１０８９によって処理されることによって、元のデータの順序を復元され、ジャンクパケットを削除、すなわち、データがデジャンク１０５３されて、復号され、かつ、アンスクランブルされたデータパケット１３２５となる。次に、このデータパケットは、クライアントインターフェース１３２１からクラウドインターフェース１３２０に渡され、メッシュルーティングを目的として異なるデータパケットにフラグメント化されたデータをメディアノードＭｂ，ｈや他のノードに送信する前に、ＳＳＥ操作１２１３に基づいて、クラウド特有の分割、スクランブル化、暗号化を実行する。
【０７１９】
図９７Ｂにさらに示すように、ＳＤＮＰゲートウェイメディアノードＭｂ，ｆは、ソフトウェアを用いて、ゾーンＺ１セキュリティ設定に従うクラウドインターフェース１３２０及びゾーンＵ２セキュリティ設定に従うクライアントインターフェース１３２０との双方に全二重通信を実行している。ＬＴＥ基地局２７、ＬＴＥ無線タワー１８及び無線リンク２８を介したクライアントインターフェース１３２１からタブレット３３へのラストマイル接続１３５５は、通信がスクランブル化され、暗号化され、かつ、データパケットにジャンクデータが挿入されているため、セキュリティが確保されている。受信データパケットを解釈し、セキュリティを確保して応答できるように、クライアント装置、この場合のタブレット１３２２は、ＳＤＮＰ対応のデバイスアプリケーションソフトウェア１３２２を実行していなければならない。
【０７２０】
ＳＤＮＰクライアントインターフェースにおけるデータパケットの処理は、図９８により詳細に示されており、クライアントノードＣ２，１は、共にセキュリティゾーンＵ２にあるクライアントインターフェース１３２１、及びＳＤＮＰクライアント１３２２との間で全２重データ交換することによって、ＳＤＮＰゲートウェイメディアノードＭｂ，ｄとセキュリティを確保して通信する。その処理では、クライアントインターフェース１３２１から到着したデータパケットは、復号操作１０３２によって復号され、アンスクランブル操作９２８によってアンスクランブルされ、分割操作１０８９によってデジャンクされた後に、アプリケーション１３３６によって処理される。逆に、アプリケーション１３３６の出力は、混合操作１０２６によってジャンクが挿入され、その後、スクランブル化操作９２６においてスクランブルされ、暗号化操作１１０６おいて暗号化された後に、クライアントインターフェース１３２１に転送される。
【０７２１】
本明細書で開示される方法に基づけば、メッシュネットワークを介して静的または動的にルーティングされる２以上のクライアント間のセキュリティを確保した通信が、別々のゾーンに管理され、別々のキー、別々の数値シード、別々のセキュリティに関連する秘密を用いた混合、暗号化、スクランブル化のアルゴリズムを任意に組み合わせることによって実現される。図９９Ａに示すように、ソフトウェアベースのＳＤＮＰメディアノードを実行するコンピュータサーバ１１１８を含むメッシュネットワークには、ゲートウェイメディアノードＭｂ，ｆ及びＭｂ，ｄをホストするコンピュータサーバ１２２０Ｆ及び１２２０Ｄが含まれる。サブネット１３１８Ａの内部のセキュリティは、ゾーンＺ１のセキュリティ設定によって管理されている。ゲートメディアノードＭｂ，ｄは、ラストマイルリンク１３１８Ｅを介してアクセスされる外部のデバイス、この場合は、携帯電話３２にホストされたクライアントノードＣ１，１に接続する。ラストマイルリンク１３１８Ｅのセキュリティは、ゾーンＵ１のセキュリティ設定によって管理されている。同様に、ゲートウェイメディアノードＭｂ，ｆは、タブレット３３にホストされ、ラストマイルリンク１３１８Ｄを介して接続されたクライアントノードＣ２，１に接続している。ラストマイルリンク１３１８Ｄのセキュリティは、ゾーンＵ２のセキュリティ設定によって管理されている。
【０７２２】
図示するように、パッドロックによってシンボル化された暗号化処理１３３９を用いたコミュニケーションによって、ネットワーク全体及びラストマイルリンクに渡るセキュリティが提供される。ラストマイルにおいてセキュリティを確保するため、クライアントデバイスの内部にて暗号化が行われることが必要である。必要に応じて、パケットは、ゲートウェイメディアノードによって再暗号化、または、二重に暗号化されてもよく、または別の実施形態では、メッシュ転送ネットワーク内のすべてのメディアノードによって復号及び再暗号化されてもよい。本明細書に記載の発明の一つの実施形態では、マルチレベルのセキュリティを容易に実現することができる。例えば、図９９Ａにおいて、ラストマイルコネクションリンク１３１８Ｄ及び１３１８Ｅが暗号化、すなわち、単一レベルあるいは１次元のセキュリティにのみ依存する。ネットワーク１３１８Ａでは、暗号化を、静的分割、マルチルートトランスポート及び混合を含むメッシュネットワークと組み合わせることによって、２次元あるいは２重レベルのセキュリティが実現されている。データパケットのネットワーク内での通過に応じて、セキュリティ設定を時間に応じて、すなわち、動的に変化させることによって、セキュリティレベルを増加させることができ、すなわち、ラストマイルに渡る２次元または２重のセキュリティ、及びＳＤＮＰクラウドにおける３次元セキュリティを実現することができる。
【０７２３】
図９９Ｂに示すように、ネットワーク１３１８Ａにスクランブル化を追加することにより、スクランブル化によるメッシュ転送及び暗号化を組み合わせた、より高いグレードのマルチレベルセキュリティへ、セキュリティが強化される。具体的には、このアプローチでは、クライアントノードＣ２，１からクライアントノードＣ１，１への通信に、追加された、ゲートウェイメディアノードＭｂ，ｆにスクランブル化処理９２６及びゲートウェイメディアノードＭｂ，ｄにアンスクランブル化処理９２８が含まれる。クライアントノードＣ１，１からクライアントノードＣ２，１への通信において、クライアントノードＣ１，１からの暗号化されたデータパケットがまず復号され、その後、マルチルートトランスポートのために分割され、スクランブル処理９２６によってスクランブル化され、ゲートウェイメディアノードＭｂ，ｄにおいて暗号化される。ネットワーク１３１８Ａを通過した後、データパケットは復号され、アンスクランブル化処理９２８を用いてアンスクランブル化され、その後、混合される。このアプローチは、ネットワーク１３１８Ａの内部の多次元セキュリティを提供することができるが、ラストマイルでは、スクランブル化処理を伴わないシングルチャネルトランスポートを採用し、その安全性が暗号化に完全に依存しているため、ラストマイルにおいてはマルチレベルのセキュリティが提供されていない。
【０７２４】
本発明の他の実施形態は、図９９Ｃに示すように、マルチレベルのセキュリティ技術を、暗号化とスクランブル化を組み合わせて、ネットワーク１３１８Ａ、及び、クライアントノードＣ２，１へのラストマイル接続１３１８Ｂをカバーするように拡張するものである。そのため、クライアントノードＣ２，１からクライアントノードＣ１，１への通信には、クライアントノードＣ２，１内のスクランブル化操作９２６と、ゲートウェイメディアノードＭｂ，ｄ内のスクランブル解除動作９２８とが含まれる。クライアントノードＣ１，１からクライアントノードＣ２，１への通信には、ゲートウェイメディアノードＭｂ，ｄにおけるスクランブル処理９２６と、クライアントノードＣ２，１でホストされるアンスクランブル処理９２８とが用いられる。しかしながら、クライアントノードＣ１，１とゲートウェイメディアノードＭｂ，ｄとの間のラストマイルコネクション１３１８Ｅは暗号化に完全に依存する。そのとき、クライアントノードＣ２，１はＳＤＮＰセキュリティ対応のソフトウェアプリケーションを使用しているが、クライアントノードＣ１，１は容易に入手できる暗号化のみを採用している場合がある。
【０７２５】
発明の別実施形態は、図９９Ｄに示すように、クライアントからクライアント、すなわち、端から端までの多次元のセキュリティを実現するために、スクランブル化と暗号化を拡張するものである。そのため、クライアントノードＣ２，１からクライアントノードＣ１，１への通信には、追加された、クライアントノードＣ２，１におけるスクランブル処理９２６、及び、クライアントノードＣ１，１におけるアンスクランブル処理９２８が含まれる。クライアントノードＣ１，１からクライアントノードＣ２，１への通信には、クライアントノードＣ１，１内の追加されたスクランブル化処理９２６、及びクライアントノードＣ２，１にホストされたスクランブル解除処理９２８が含まれている。その処理において、クライアントノードＣ１，１は、任意の発信データパケットをスクランブル化及び暗号化し、携帯電話３２において実行されているＳＤＮＰ対応ソフトウェアを介して着信データの復号、及びアンスクランブル化を行う。同様に、クライアントノードＣ２，１は、発信データパケットをスクランブル化及び暗号化し、タブレット３３で実行されているＳＤＮＰ対応ソフトウェアを介して、受信データの復号、及びアンクランブル化を実行する。同時に、それらによって、ラストマイル接続１３１８Ｄ及び１３１８Ｅでの２層または２次元セキュリティ、すなわち、暗号化及びスクランブル化を含むエンドツーエンドのセキュリティを確保した通信と、メッシュ化され、かつマルチルートのトランスポートを介する、メッシュ化されたネットワーク１３１８Ａにおける３次元、または３層のセキュリティとが容易に実現される。データパケットがネットワークを通過する際に、セキュリティ設定が「動的に」変化する場合には、より高いレベルのセキュリティ、すなわち、ラストマイルにおける３次元または３層レベルのセキュリティ、及びＳＤＮＰクラウド内の４次元のセキュリティが実現される。
【０７２６】
本実装方法における考え得る弱点は、クライアントが使用するのと同じスクランブル化方法と数値シードがＳＤＮＰクラウドを保護するためにも使用される点である。その結果、ゾーンＵ２、Ｚ１、及びＵ１のセキュリティ設定が共有されなければならず、それにより、全ネットワーク及びルーティングがラストマイルサイバー攻撃によって外部に晒されるリスクがある。クラウドセキュリティ設定を公開しないようにするために利用することのできる一つの方法としては、図９９Ｅに示されるように、ラストマイル接続１３１８Ｄにおいては、スクランブル化にゾーンＵ２のセキュリティ設定を用い、クラウドではスクランブル化にゾーンＺ１のセキュリティ設定を用いる方法がある。コンピュータサーバ１２２０ＦによってホストされるゲートウェイメディアノードＭｂ，ｆは、ゾーンＵ２のセキュリティ設定を使用して、受信データパケットをアンスクランブルし、次に、ゾーンＺ１のセキュリティ設定を使用して、そのデータパケットをスクランブル化し、メッシュ化されたネットワーク１３１８Ａに送信する。このように、クラウドのゾーンＺ１のセキュリティ設定は、ラストマイル接続１３１８Ｄにおいて、漏れることがない。
【０７２７】
マルチレベルセキュリティのさらなる改善が、図９９Ｆに示されており、そこでは、スクランブル化、及び暗号化には、クライアントノードＣ２，１をゲートウェイメディアノードＭｂ、ｆに接続するラストマイル接続１３１８ＤにおいてはゾーンＵ２のセキュリティ設定が用いられ、ゲートウェイメディアノードＭｂ、ｆ及びＭｂ、ｄを含むメッシュ化されたネットワーク１３１８Ａでは、ゾーンＺ１のセキュリティ設定が用いられ、ゲートウェイノードＭｂ、ｄをクライアントノードＣ１，１に接続するラストマイル接続１３１８ＥにおいてはゾーンＵ２のセキュリティ設定が用いられることによって、３つの異なるゾーンにおいて異なるセキュリティ設定が用いられている。このアプローチによって、ラストマイル、ラストマイルにおける２層または２次元のセキュリティ、及び、クラウドにおける３層または３次元のセキュリティに相当する、エンドツーエンドのセキュリティにエンドツーエンドの暗号化を付加することができる。データパケットがネットワークを通過する際にセキュリティ設定が時間とともに動的に変化する場合には、ラストマイルにおける３次元または２重レベルのセキュリティ、及びＳＤＮＰクラウド内で４次元のセキュリティを提供する、より高いレベルのセキュリティが実現される。
【０７２８】
クライアントノードＣ２，１からクライアントノードＣ１，１、すなわちタブレット３３から携帯電話３２への通信では、クライアントノードＣ２，１上で実行されているＳＤＮＰアプリケーションが、ゾーンＵ２セキュリティ設定を用いて、スクランブル化９２６し、その後、暗号化してデータパケットを発信する。ラストマイル接続１３１８Ｄを横断するシングルチャネルデータパケットは、まず、復号され、次に、ゾーンＵ２のセキュリティ設定を用いたゲートウェイメディアノードＭｂ，ｆによって実行されるアンスクランブル処理９２８によってアンスクランブルされる。次に、ゲートウェイメディアノードＭｂ、ｆはゾーンＺ１のセキュリティ設定を用いてそのデータを分割し、スクランブル化し、そして、ゾーンＺ１のセキュリティ設定を用いて暗号化して、ネットワーク１３１８Ａにメッシュ転送する。ゲートウェイメディアノードＭｂ，ｄでは、そのデータパケットは、復号され、アンスクランブル処理９２８によってアンスクランブルされて、その後、ゾーンＺ１のセキュリティ設定を用いて、シングルチャネル通信のためのデータパケットに混合される。次に、ゲートウェイメディアノードＭｂ，ｄはスクランブルし、次に、ゾーンＵ１のセキュリティ設定を用いて、そのシングルチャネルデータパケットを暗号化して、そのデータをクライアントＣ１，１に転送する。そのパケットは最終的にその宛先となる携帯電話３２に到達し、携帯電話３２上で実行されているＳＤＮＰ対応のアプリケーションによって、復号され、その後、ゾーンＵ１のセキュリティ設定を用いて、アンスクランブル化される。
【０７２９】
同様に、反対方向、すなわち、クライアントノードＣ１，１からクライアントノードＣ２，１、換言すれば、携帯電話３２からタブレット３３への通信において、クライアントノードＣ１，１上で実行されているＳＤＮＰアプリケーションは、ゾーンＵ１のセキュリティ設定に基づくスクランブル化操作９２６を用いて、発信データパケットをスクランブルし、続いて暗号化する。ラストマイル接続１３１８Ｅを横断するシングルチャネルデータパケットはまず復号され、次に、ゲートウェイメディアノードＭｂ，ｄによって実行されるアンスクランブル処理９２８によってアンスクランブルされる。ゲートウェイメディアノードＭｂ，ｄは次に、ネットワーク１３１８Ａにメッシュ転送するために、ゾーンＺ１のセキュリティ設定を用いてデータを分離し、スクランブルし、ゾーンＺ１のセキュリティ設定を用いてデータを暗号化する。ゲートウェイメディアノードＭｂ，ｆにおいて、データパケットは復号され、アンスクランブル処理９２８によってアンスクランブルされ、ゾーンＺ１のセキュリティ設定を用いて、シングルチャネル通信のためのデータパケットに混合される。次に、ゲートウェイメディアノードＭｂ，ｆは、ゾーンＵ２セキュリティ設定を用いて、シングルチャネルデータパケットをスクランブル化、及び、暗号化し、クライアントノードＣ２，１にデータを転送する。タブレット３３上で実行されるＳＤＮＰ対応のアプリケーションがゾーンＵ２のセキュリティ設定に基づくアンスクランブル処理９２８によって、そのデータを復号し、その後、アンスクランブル化する。次に、データパケットは、クライアント、本実施形態の場合は、タブレット３３に送信される。
【０７３０】
前述したように、図示されたすべての通信リンクは、パッドロックアイコン１３３９によって示されるように、スクランブル化及び混合に依らず、暗号化されたデータを転送する。本発明を明確化するために、暗号化及び復号のステップの詳細は示されていない。一実施形態では、データパケットは、データが新しいメディアノードを横断するたびに、復号され、暗号化（すなわち、再暗号化）される。少なくとも、再スクランブル化を実行するすべてのメディアノードにおいて、受信データパケットはアンスクランブル化前に復号され、その後、スクランブルされ、暗号化される。メッシュ転送、暗号化、及びスクランブル化−すべてのゾーン固有のセキュリティ設定を使用−によって達成することのできる多層セキュリティの概要を次の表に示す。
【０７３１】
【表１０】
2020195141.tif 000012
【０７３２】
上の表に示すように、データが転送される間に、暗号化とスクランブル化に動的な変更を加えると、サイバー犯罪者がパケットを盗聴し、データパケットを読み取るために「コードを壊す」ための時間に制限することができるため、セキュリティレベルが向上する。動的な変更は１日毎に、１時間毎に、または、スケジュールされた時間毎に行われてもよく、また、パケットベース単位で、概ね１００ミリ秒毎に行われてもよい。上の表から、クラウド上の転送に比べて、ラストマイルはセキュリティが確保されていないことも明らかである。
【０７３３】
ラストマイルのセキュリティを強化する一つの手段は、ジャンクデータセグメントをデータストリームに動的に挿入し、完全にジャンクからなるパケットをおとりとして送信することであり、これによって、サイバー犯罪者に無益なデータを復号させ、サイバー犯罪者のコンピュータリソースを浪費することができる。この改善はセキュリティレベルの３次元から３．５次元への変更として表すことができ、これはジャンクデータの挿入は、暗号化、スクランブル化、及びマルチルート転送によって達成されるほどのセキュリティ強化ではないことを示しているが、特にジャンクデータの挿入が時間の経過とともに変化し、送受信のパケットが異なる場合には有効である。本発明によるＳＤＮＰセキュリティを改善するための別の重要な態様としては、本明細書で後述される一つのトピック、「ミスダイレクション」を用いること、すなわち、パケットルーティング中に実際の発信元及び宛先を隠す方法がある。
【０７３４】
［秘密、キー、及びシードの転送］
ＳＤＮＰベースのセキュリティを確保した通信は、外部当事者が関与しないか、認識できないか、または、その意味や目的の理解することのできない情報を通信に関与する当事者の間で交換することに依存している。実際に送信されるデータの内容とは別に、この情報には、共有秘密と、アルゴリズムと、暗号化及び復号鍵と、数値シードとが含まれ得る。本明細書で使用される「共有秘密」とは特定の通信相手のみが知っているか、または共有している情報であって、例えば、混合、スクランブル化、及び／または暗号化アルゴリズム、暗号化及び／または復号鍵、及び／または、シード生成器、番号生成器、あるいは時間によらず特定のものを選択するための別の方法等のリストである。例えば、図９２Ｂにおいて、セレクタ１３０７は共有秘密である。
【０７３５】
共有キー、数値シードは、時間やステートに基づき得るものであり、これらを用いて、特定のアルゴリズムの選択、様々なオプションの呼び出し、または、プログラムの実行等が行われる。如何なる特定の数値シードも意味をなさないが、数値シードは共有秘密と組み合わせることによって、ネットワーク上で動的なメッセージや条件を、たとえ遮断された場合であっても、その意味や機能を明らかにすることなく、伝達することが可能となる。
【０７３６】
同様に、暗号化された通信を実行するために、暗号化には通信相手によって合意された特定のアルゴリズム、すなわち共有キーと、暗号化及び復号に使用される１つまたは２つのキーの交換が必要となる。対称キー方式では、暗号鍵と復号鍵は同一である。 対称キーの交換は、鍵が長い、すなわち、３４ビットまたは３６ビットであり、暗号を破るために利用可能な時間が短い、すなわち、１秒以下である場合には、攻撃に対する耐性がある。任意の暗号化アルゴリズムに対して、対称暗号鍵において使用されるビット数を、その鍵が有効である時間で割った比は、暗号化のロバスト性の尺度となる。そのため、対称キーが長く、かつ、暗号化を破るのに利用できる時間が短い動的なネットワークでは、対称キーを使用することができる。代わりに、暗号化アルゴリズムは、暗号鍵と復号鍵とが別個であるか、または、暗号化のための１つのキーと復号のための１つのキーとを用いて、暗号鍵と復号鍵とが「非対称」であるように構成されていてもよい。オープンな通信チャネルでは、非対称キーは、暗号キーのみが通信され、暗号キーが解読キーに関する情報を持っていないため、有利である。時間の経過と共に動的に変化する、対称キー、非対称暗号キー、数値シード、及び、共有秘密を組み合わせることによって、それらが協働して、ＳＤＮＰ通信に優れた多次元のセキュリティが提供される。暗号に関しては、例えば、「Alan G. Konheim「Computer Security and Cryptography」(Wiley、2007)」等の多くの参考文献を利用することができる。しかし、リアルタイム通信に暗号化を適用することは容易ではなく、今までの文献では予期されていない。多くの場合、データ通信に暗号化を付加すると、待ち時間と伝搬遅延が増加し、ネットワークのＱｏＳが低下する。
【０７３７】
共有秘密は、実際の通信、メッセージ、呼び出し（コール）、またはデータ交換の前に、クライアントノードとメディアノード間で交換される。図１００Ａは、共有秘密がＳＤＮＰ実行可能なコードのインストールに合わせて、どのように分散されるかを示している。ゾーンＺ１において、ソフトウェアパッケージ１３５２Ａは、実行可能なコード１３５１と、シード生成器９２１、数字生成器９６０、アルゴリズム１３４０、暗号鍵１０２２、及び、複合キーを含むか、または、それらのいくつかの組み合わせからなるゾーンＺ１共有秘密とを含んでいる。実行可能なコード１３５１及び共有秘密１３５０Ａを含むゾーンＺ１のためのセキュリティを確保したソフトウェアパッケージ１３５２Ａは、クラウド１１１４内のメディアサーバ１１１８と、「ＤＭＺ」サーバ１３５３Ａ及び１３５３Ｂとに配信される。メディアノードＭａ，ｂ、Ｍａ，ｆにおける実行可能なコード１３５１、及び、ＤＭＺサーバとは分離したコンピュータ、例えば、サーバ１１１８における他のホストされたコードのインストールにおいて、ゾーンＺ１の共有秘密、すなわち、Ｚ１秘密１３５０Ａのインストールが同時に行われる。
【０７３８】
ＤＭＺという用語は、通常、非武装地帯の頭字語を示すが、この場合、インターネットを通じて直接アクセスできないコンピュータサーバを意味する。ＤＭＺサーバは、メディアノードとして機能する１つまたは多数のネットワーク接続されたサーバを制御することができるが、メディアサーバ１１１８はいかなるＤＭＺサーバ、例えば、ＤＭＺサーバ１３５３Ａ、１３５３Ｂ及びその他のもの（図示せず）にもアクセスすることはできない。すべてのソフトウェア及び共有秘密の配信は、タイムクロック付きパドロック１３５４によって示されるように短時間にのみ有効なセキュリティを確保した通信において行われる。ソフトウェア配信が遅延している場合、ＳＤＮＰ管理者は、直接アカウント所有者の身元と資格情報を確認した後に、ゾーンＺ１のためのセキュリティを確保したソフトウェアパッケージ１３５２Ａのダウンロードを再認証しなければならない。
【０７３９】
詳述すると、ＤＭＺサーバが「インターネットを通じて直接接続されていない（直接アクセスできない）コンピュータサーバ」であるとの記載は、インターネットとそのサーバとの間に直接的な電子的リンクが存在しないことを意味する。実際には、Ｚ１ファイル１３５２Ａのインストールには、インターネットを通じたサーバのアカウント管理者、またはアカウント所有者と協働するサーバファームの介入が必要である。ＤＭＺにファイルをインストールする前に、アカウント管理者がアカウント所有者のＩＤと、インストールが有効であることを確認する必要がある。
【０７４０】
インストールを確認した後、管理者は、管理者のコンピュータを直接ＤＭＺサーバにリンクするローカルエリアネットワーク（ＬＡＮ）を用いて、Ｚ１秘密を含むファイルをＤＭＺサーバにロードする。したがって、ＬＡＮは直接インターネットに接続されないが、厳密な認証プロセス後に、管理者のコンピュータを介して、認証された転送を行える必要がある。共有秘密のインストールは単方向であり、ファイルはインターネットからの読み取りアクセスされることなく、ＤＭＺサーバにダウンロードされる。ＤＭＺコンテンツをインターネットにアップロードすることも同様に禁止されており、それゆえ、オンラインアクセスやハッキングを防ぐことができる。
【０７４１】
共有秘密のインストールプロセスは、オンラインバンキングを利用することができず、顧客の承認によってのみ、銀行員が手動で電信送金を行う銀行口座と類似している。インターネットからのアクセスを拒否することによって、共有秘密を傍受するためには、物理的な介入と、サーバファームでのオンサイトの攻撃とが必要であり、その際には、転送時のＬＡＮ上のファイバを正確な識別、接続、傍受することが必要となる。その場合であっても、インストールされるファイルは暗号化され、短時間しか利用することができない。
【０７４２】
同じ概念を図１００Ｂに示すマルチゾーンソフトウェア展開に拡張することができ、ＳＤＮＰ管理サーバ１３５５を使用して、ゾーンＺ１用の秘密１３５０Ａとして、ＤＭＺサーバ１３５３Ａに、実行可能コード１３５１として、クラウド１１１４内のメディアサーバ１１１８にそれぞれ、ゾーンＺ１用のセキュリティを確保したソフトウェアパッケージ１３５２Ａが送信される。同様に、ＳＤＮＰ管理サーバ１３５５を用いて、ゾーンＺ２用の共有秘密１３５０ＢとしてＤＭＺサーバ１３５３Ｂに、実行可能コード１３５１としてクラウド１３１５内のメディアサーバにそれぞれ、ゾーンＺ２用のセキュリティを確保したソフトウェアパッケージ１３５２Ｂが配布される。ＳＤＮＰ管理サーバ１３５５はまた、実行可能コード１３５１を含むセキュリティを確保したソフトウェアパッケージ１３５２Ｃを、ＳＤＮＰクラウド１１１４のブリッジメディアノードＭｂ，ｆ、及びＳＤＮＰクラウド１３１５のノードＭｂ，ｎに送信し、ゾーンＺ１及びＺ２の両方の共有秘密１３５０ＣをＤＭＺサーバ１３５３Ｃに送信する。ＳＤＮＰクラウド１１１４のブリッジメディアノードＭｂ，ｆ及びＳＤＮＰクラウド１３１５のＭｂ，ｎは、管理サーバ１３５５から実行可能コード１３５１を直接受信し、ＤＭＺサーバ１３５３ＣからゾーンＺ１及びゾーンＺ２の共有秘密を受信する。ブリッジメディアノードＭｂ，ｆは、Ｚ１とＺ２の秘密間の変換を実行するため、それ（及び図示されていない他のブリッジサーバ）のみが、Ｚ１とＺ２の両方の共有秘密にアクセスする必要がある。それ以外のゾーンＺ１のノードはゾーンＺ１の共有秘密にのみアクセスし、それ以外のゾーンＺ２のノードはゾーンＺ２の共有秘密にのみアクセスするように構成される。
【０７４３】
特筆すべきことに、ＳＤＮＰ管理サーバ１３５５は、共有秘密をＤＭＺサーバ１３５３Ａ、１３５３Ｂ、及び１３５３Ｃに提供するが、ＳＤＮＰ管理サーバ１３５５は、配信後に共有秘密に何が起こるかについての知ることがなく、一旦配信された共有秘密にいかなるコマンドもいかなるコントロールや影響も与えることがない。例えば、アルゴリズムのリストがシャッフルされ、すなわち、並べ替えられて、特定のアルゴリズムのアドレスが変更される場合、ＳＤＮＰ管理サーバ１３５５は、シャッフルがどのように行われるかについて知ることがない。同様に、ＳＤＮＰ管理サーバ１３５５は、通信相手間の数値シードまたはキー交換の受信者でもなく、したがって、いかなる制御も行わない。実際、開示されているように、ＳＤＮＰネットワーク全体において、パッケージ、そのルーティング、セキュリティ設定、またはそのコンテンツに関するすべての情報を持っているサーバは存在しない。したがって、ＳＤＮＰネットワークは、セキュリティを確保したグローバル通信のための完全に分散されたシステムであり、比類のないものである。
【０７４４】
図１０１Ａに示すように、ＤＭＺサーバへの共有秘密の配信は、ＳＤＮＰ管理サーバ１３５５がＤＭＺサーバ１３５３Ａとの通信を確立し、そのコンピュータが実際にＳＤＮＰ認証されたＤＭＺサーバであるかの認証プロセスを経る厳密に定義されたプロセスにおいて行われる。そのプロセスは自動化されていても、銀行の送金と同様に、人とのやりとりやアカウント所有者の認証を含められていてもよい。いずれの場合でも、その認証において、ＤＭＺサーバ１３５３Ａの信頼性を確認した場合にのみ、ＳＤＮＰ管理サーバ１３５５がその秘密、及びコードをＤＭＺサーバ１３５３Ａに転送することを許可する電子認可証明書１３５７が生成される。いったんロードされると、これらの設定は、メディアノード１３６１，１３６２，１３６３に送信され、メディアノードＭ１，Ｍ２，及びＭ３にそれぞれ、送受信されたデータパケットをどのように処理するかを指示する。
【０７４５】
同じＤＭＺサーバ１３５３Ａは、例えばメディアサーバアレイ１３６０のように、１つ以上のメディアサーバを管理してもよく、または、代わりに、複数のＤＭＺサーバが同じセキュリティ設定及び共有秘密を伝送してもよい。メディアノードは全て、タイムシェアリング及びロードバランシングを使用して、メディア、コンテンツ、及びデータを協働して伝送するように動作していてもよい。メディアサーバアレイ１３６０上の通信負荷が低下したときには、クローズドスイッチ１３６４Ａ及び１３６４Ｂによって示されるように、メディアノードＭ２は依然として動作させたまま、オープンスイッチ１３６５Ａ及び１３６５Ｂによって記号的に示されるように、メディアノードＭ３をオフラインにしてもよい。スイッチは、特定のサーバの入力と出力が物理的に切断されていることを示すものではなく、サーバがメディアノードアプリケーションをもはや実行していないことを示しており、これにより、電力が節約され、不要なサーバに対するホスティング費用を省くことができる。図示されるように、１つのＤＭＺサーバ１３５３Ａは、命令、コマンド、及び秘密をＤＭＺサーバ１３５３Ａからサーバアレイ１３６０内の任意のサーバにダウンロードすることによって、複数のメディアサーバの動作を制御することができるが、その逆はできない。メディアサーバからのＤＭＺサーバ１３５３Ａのコンテンツの書き込み、クエリ、または、インスペクト等、情報を得ようとする試みは、すべてファイアウォール１３６６によってブロックされ、メディアノードを介したインターネットを通じて、ＤＭＺサーバ１３５３Ａのコンテンツを調査したり、取り出したりすることはできない。
【０７４６】
共有秘密を基礎とした本発明に基づくセキュリティを確保した通信の例が図１０１Ｂに図示されており、ここでは、全ての通信の前に、ゾーンＺ１の共有秘密１３５０Ａが管理サーバ（図示せず）によって、ＤＭＺサーバ１３５３Ａ及び１３５３Ｂを含むゾーンＺ１のすべてのＤＭＺサーバに供給されている。このような共有秘密には、シード生成器９２１、数字生成器９６０、アルゴリズム１３４０、暗号鍵１０２２、及び復号鍵１０３０が含まれるが、これらに限定されない。送信メディアノードＭＳとメディアサーバ１１１８がホストする受信メディアノードＭＲとの間の通信中に、ＤＭＺサーバ１３５３Ａは、ペイロードパケット１３４２が作成された時間を示すデータ１３４１及びステート９２０とを含むペイロードパケット１３４２を用意するため、共有秘密を送信メディアノードＭＳに渡す。メディアノードＭＳから送信される前に、ペイロードパケット１３４２もまた、パドロックによって記号的に表された暗号化処理１３３９を用いて暗号化される。
【０７４７】
セキュリティを確保したペイロードパケット１３４２を受信すると、受信メディアノードＭＲは、ＤＭＺサーバ１３５３Ｂによって供給される共有秘密１３５０Ａ内に含まれる復号鍵１０３０を用いて、パケット１３４２を復号し、次に、データパケット１３４２に固有のステート情報９２０を用いて、データ１３４１を回復する。別の実施形態としては、数値シード９２９は、事前に、送信メディアノードＭＳから受信メディアノードＭＲに、一時的な寿命を有する数値シード９２９として送信されてもよい。数値シード９２９が一定期間内に使用されない場合、または、ペイロードパケット１３４２が遅延した場合には、シードの寿命が切れ、数値シード９２９は自己破壊し、メディアノードＭＲがペイロードパケット１３４２を開けなくなる。
【０７４８】
伝送されるパケットにシード及びキーを収め、そのシード及びキーを組み合わせた共有秘密を用いた本発明のセキュリティを確保した通信の他の例が図１０１Ｃに示されている。この例では、全ての通信の前に、ゾーンＺ１の共有秘密１３５０Ａがサーバ１３５３Ａ及び１３５３Ｂを含む全てのゾーンＺ１のＤＭＺサーバに供給される。このような共有秘密には、シード生成器９２１、数字生成器９６０、及びアルゴリズム１３４０が含まれ、これらに限定されないが、暗号鍵１０２２及び復号鍵１０３０などのキーは含まれない。送信メディアノードＭＳ及びメディアサーバ１１１８にホストされた受信メディアノードＭＲとの間の通信の間、ＤＭＺサーバ１３５３Ａは、データ１３４１、（ペイロードパケット１３４２が作成された時間を記述する）ステート９２０、及び暗号鍵１０２２（後にペイロードパケットの暗号化に用いられる）を含むペイロードパケット１３４２を準備するために、送信メディアノードＭＳに共有秘密を送信する。ペイロードパケット１３４２は、ルーティング前に、パドロックによって記号的に表された暗号化処理１３３９によって暗号化される。
【０７４９】
セキュリティを確保したペイロードパケット１３４２を受信すると、受信メディアノードＭＲは、一時的な寿命を有し、事前に、すなわち、ペイロード１３４２の通信の前に、送信メディアノードＭｓと受信メディアノードとの間の別個の通信によって供給された復号鍵１０３０を用いて、パケット１３４２を復号する。この先のデータパケットは、別の復号、動的アルゴリズム、数値シード、またはそれらの組み合わせなどの共有キーによって保護されてもよい。復号鍵１０３０が一定期間内に使用されない場合、または、データパケット１３４２が遅延した場合、復号鍵１０３０の寿命が切れ、自己破壊し、メディアノードＭＲがペイロードパケット１３４２を開けなくなる。別の方法として、復号鍵１０３０をペイロードパケット１３４２に含めことが考えられるが、この方法は好ましくない。
【０７５０】
コンテンツに全てのセキュリティ関連情報を配信することを回避する１つの方法は、コンテンツを配信するために用いられるメディア通信チャネルから、コマンド及び制御信号を配信するために用いられるチャネルを分割し、かつ分離することである。本発明によれば、図１０２に示す「デュアルチャネル」通信システムは、メディアサーバによって伝送されるメディア用チャネルと、本明細書ではシグナリングサーバと呼ばれる第２のコンピュータネットワークによって伝送されるコマンド及び制御用チャネルとを備える。通信中、インストールされたＳＤＮＰソフトウェアを実行するシグナリングサーバ１３６５は、コマンド及び制御信号を伝送するためのシグナリングノードＳ１として動作し、インストールされたＳＤＮＰソフトウェアを実行するメディアサーバ１３６１，１３６２，及び１３６３は、それぞれコンテンツ、及びメディアを伝送するためのメディアノードＭ１、Ｍ２、及びＭ３として動作する。このように、メディア用チャネルはコマンド及び制御信号を伝送せず、コマンド及び制御信号は、ペイロードと組み合わされるか、または、個別にメッセージを含むデータパケットよりも前に事前に伝送されるデータとして、メディア用チャネルを介して伝送される必要がない。
【０７５１】
動作中、サーバアレイ１３６０に到達するメディアパケットのためのルーティング及びセキュリティ設定を記載したパケットがシグナリングノードＳ１に伝送される。これらの専用パケットは、ここでは「コマンド及び制御用パケット」と呼ぶ。通信の間、コマンドパケット及び制御用パケットはメディアノード１３２１，１３６２及び１３６３に送信されて、メディアノードＭ１、Ｍ２、及びＭ３に、それぞれ、送受信データパケットをどのように処理するかを指示する。これらの指示は、ＤＭＺサーバ１３５３Ａ内に存在する情報と組み合わされる。前述したように、同じＤＭＺサーバ１３５３Ａは、複数のメディアサーバ、例えば、メディアサーバアレイ１３６０を管理してもよい。メディアノードは、タイムシェアリング、及びロードバランシングを使用して、メディア、コンテンツ、及びデータを協働して伝送するように動作してもよい。メディアサーバアレイ１３６０上の通信負荷が低下すると、クローズドスイッチ１３６４Ａ及び１３６４Ｂによって示すように、メディアノードＭ１及びＭ２が依然として動作したまま、オープンスイッチ１３６５Ａ及び１３６５Ｂによって記号的に示すように、メディアノードＭ３をオフラインにすることができる。スイッチは、特定のサーバの入力と出力が物理的に切断されていることを示すものではなく、サーバがメディアノードアプリケーションをもはや実行していないことを示しており、これにより、電力が節約され、不要なサーバに対するホスティング費用を省くことができる。
【０７５２】
図示されているように、シグナリングサーバ１３６５と共に動作する１つのＤＭＺサーバ１３５３Ａは、指示、コマンド、及び秘密をＤＭＺサーバ１３５３Ａからサーバアレイ１３６０内の任意のサーバにダウンロードすることによって、複数のメディアサーバの動作を制御することができるが、その逆はできない。シグナリングサーバ１３６５から、または、メディアサーバ１３６１，１３６２、及び１３６２からのＤＭＺサーバ１３５３Ａのコンテンツの書き込み、クエリ、またはインスペクトすることによって、情報を得ようとする試みは、全てファイアウォール１３６６によってブロックされ、メディアノードを介したインターネットを通じて、ＤＭＺサーバ１３５３Ａのコンテンツをインスペクトしたり、取り出したりすることはできない。
【０７５３】
このように、デュアルチャネル通信システムでは、通信ネットワークのコマンド及び制御は、別個の異なる通信チャネル、すなわちメッセージの内容とは分離した固有のルーティングを使用する。シグナリングサーバのネットワークは、ネットワークのためのコマンド及び制御情報を全て伝送し、メディアサーバはメッセージの実際の内容を伝送する。コマンド及びコントロール用のパケットには、シード、キー、ルーティングの指示、優先度設定等を含んでもよく、一方、メディア用のパケットには、声、テキスト、ビデオ、電子メール等を含んでいてもよい。
【０７５４】
デュアルチャネル通信の一つの利点としては、データパケットに、その起源や最終的な宛先等の情報を含まないことがある。シグナリングサーバは、メディアサーバに「知る必要性」に基づいて、各受信データパケットに対する処理、すなわち、送信したノードのアドレスによる受信パケットの識別方法、または、ＳＤＮＰ「郵便番号」に基づく処理、及び送信先を、各メディアサーバに通知する。このように、パケットには、クラウド上の直前のステップ及び次のステップで必要となる以上のルーティング情報が含まれない。同様に、シグナリングサーバはコマンドやコントロール情報を伝送し、メディアチャネル内で行われているデータパケットの中身やいかなる通信にもアクセスすることがない。このようなコンテンツを含まない制御用チャネルと、ルーティングを含まないコンテンツ用チャネルに分割することによって、デュアルチャネルのＳＤＮＰベースのネットワークに、より高いレベルのセキュリティを与えることができる。
【０７５５】
本発明におけるデュアルチャネルのセキュリティを確保した通信の一例が図１０３Ａに示されており、そこでは、シード９２９及び復号鍵１０８０を含むコマンド及び制御データパケットがシグナリングサーバ１３６５によって通信され、一方、メディア及びコンテンツがメディアサーバ１１１８間で通信される。例えば、全ての通信の前に、ゾーンＺ１の秘密１３５０Ａが、サーバ１３５３Ａ及び１３５３Ｂを含む全ゾーンＺ１のＤＭＺサーバに供給され、その共有秘密には、シード生成器９２１、数字生成器９５０、及びアルゴリズム１３４０が含まれ、これらには限定されないが、復号鍵１０３０のようなキーを含まない。通信が開始される前に、シグナリングサーバ１３６５を送信することによってホストされるシグナリングノードＳｓは、数値シード９２９及び復号鍵１０３０または他のセキュリティ設定を含むコマンド及び制御パケットをデスティネーションシグナリングノードＳｄに送信する。次に、ＤＭＺサーバ１３５３Ａ及び１３５３Ｂ内に含まれる共有秘密、及びセキュリティ設定と組み合わされたこの情報は、メディアノードＭＳがどのようにして暗号化されたペイロード１３４２を受信メディアノードＭＲに転送すべきかを指示するために使用される。ペイロード１３４２の情報の暗号化は、パドロック１３３９によって示されている。
【０７５６】
このように、通信中のデータ１３４１とは別に、ペイロードパケット１３４２内に含まれる唯一のセキュリティに関連するデータは、ペイロードパケット１３４２が作成された時間を記述するステート９２０である。一旦、ペイロードパケット１３４２が受信メディアノードＭＲに受信されると、それは復号鍵１０３０によって復号される。復号された後、シード９２９は、ステート情報９２０及びＤＭＺサーバ１３５３Ｂから供給される共有秘密１３５０Ａと共に、上に開示した方法に基づいて、ペイロードパケット１３４２、及び他の受信パケットのアンスクランブル化、混合、及び分割に用いられる。データパケットは、最後に修正された時間の情報、すなわち、復号鍵を局所的に生成するために特に有用なステート情報を伝送することができるが、コマンド及びコントロール用チャネルを介して転送されたシードと共に用いることによって、受信したデータパケットにたとえ直前のノードで必ずしも実行されたものでない場合であっても、以前に行われた分割、及び、アンスクランブル化の処理を割り出すことができる。
【０７５７】
図１０３Ｂに示されるように他の実施例において、数値シード９２９はメディアチャネルを介して、事前、すなわち、ペイロードパケット１３４２の前に送信されるが、復号鍵はシグナルチャネルを介して送信される。そのように、セキュリティを確保した通信を行うため、送信方法の組み合わせや変更が可能である。他の実施形態としては、シード、キー、及び動的なセキュリティ設定が時間と共に変化しながら送信されていてもよい。
【０７５８】
上述したエンドツーエンドのセキュリティを容易に実現するために、実行可能なコード、共有秘密、キーは、クライアントにインストールされるか、典型的にはアプリケーションとしてダウンロードされる必要がある。ＳＤＮＰネットワークでセキュリティ設定が開示されることを防止するため、このようなダウンロードは、クライアント、及び、クライアントが通信できるクラウドゲートウェイノードによってのみアクセス可能な別のゾーンにおいて定義される。図１０４に示すように、携帯電話３２のようなモバイルデバイスを、ＳＤＮＰクラウドを用いて通信可能とするためには、まず、認証されたＳＤＮＰクライアントとならなければならない。このステップには、ゾーンＵ１のソフトウェアパッケージ１３５２ＤをＳＤＮＰ管理サーバ１３５５からクライアントノードＣ１，１、すなわち、携帯電話３２に、限られた時間内においてのみ有効となるセキュリティを確保したダウンロードリンク１３５４を用いてダウンロードすることが含まれる。ダウンロードが完了するのに時間がかかりすぎるか、または、ユーザがリアルなデバイスであり、クライアントであると偽るハッカーのコンピュータではないことを認証する特定の認証基準を満たさない場合には、ファイルは復号されることはないか、または、携帯電話３２にインストールされない。ゾーンＵ１ソフトウェアパッケージ１３５２Ｄには、実行可能コード１３５１及びゾーンＵ１秘密１３５０が含まれ、実行可能コード１３５１は携帯電話３２またはコードをインストール可能な他のデバイスのＯＳ、例えば、ｉＯＳ、Ａｎｄｒｏｉｄ、Ｗｉｎｄｏｗｓ（登録商標）、Ｍａｃ  ＯＳ（登録商標）などにカスタマイズされ、ゾーンＵ１秘密１３５０はシード生成器９２１、数字生成器９６０、アルゴリズム１３４０、暗号鍵１０２２及び復号鍵１０３０など、あらゆるゾーンＵ１クライアントにカスタマイズされたものの組み合わせを含んでいてもよい。
【０７５９】
ゾーンＵ１外部のクライアントノードＣ１，１がゾーンＺ１  ＳＤＮＰクラウド１１１４と通信するためには、メディアノードＭａ，ｄのようなゲートウェイノードが、ゾーンＵ１，Ｚ１ダウンロードパッケージ１３５２Ｅに含まれるゾーンＺ１及びＵ１のセキュリティ設定を含む情報を受け取らなければならない。パドロック１３５４によって示される時間制限されたセキュリティを確保したダウンロード方法を使用して、ゾーンＺ１及びゾーンＵ１秘密が共に、リンク１３５０Ｃを介してＤＭＺサーバ１３５３Ｃにダウンロードされ、実行可能コード１３５１がリンク１３５１を介してダウンロードされ、ＳＤＮＰメディアノードＭａ，ｄ、及び、クラウド１１１４と外部クライアントとの間のゲートウェイ接続、すなわち、ラストマイル接続をサポートする接続を実行するために必要な他のゾーンＺ１メディアノードにインストールされる。一旦、ダウンロードパッケージ１３５２Ｅ及び１３５２ＤがそれぞれゾーンＺ１のメディアノードＭａ，ｄ及びゾーンＵ１のクライアントノードＣ１，１にロードされると、暗号化処理１３３９を含めたセキュリティを確保した通信１３０６が実行可能となる。
【０７６０】
メディアサーバ１１１８にホストされるゾーンＺ１内のセキュリティを確保したクラウドから、ゾーンＵ１内の携帯電話３２のような外部デバイスにホストされるクライアントノードＣ１，１への通信はシングル通信チャネルを介して行われ得るため、クラウド１１１４において行われるデュアルチャネルの通信をラストマイルにおいて必要となるシングルチャネルの通信に変換する手段が必要となる。デュアルチャネルからシングルチャネルへ変換する際のＳＤＮＰゲートウェイノードの役割の一例が図１０５Ａに示されており、ゲートウェイメディアノードＭＲはシグナリングサーバ１３６５内のシグナリングノードＳｄに入るゾーンＺ１コマンド及び制御パケットをメディアコンテンツと結合し、データ１３４１と、データパケット１３４２が作成された時間を提供するステート９２０を含むゾーンＵ２セキュリティ設定と、数値シード９２９と、次のパケット、すなわち、ノードＣ１，１によって作成されるパケットの暗号化に用いられる暗号鍵１０２２とを含むペイロードパケット１３４２を用いて、シングルチャネル通信を行う。
【０７６１】
ペイロードパケット１３４２は、暗号化処理１３３９を用いて暗号化される。ペイロードパケットの復号のためには、復号鍵１０３０を用いる必要があり、その復号鍵１０３０には、共にセキュリティを確保したアプリケーション及びデータボルト１３５９に以前ダウンロードされた、共有ゾーンＵ１秘密１３５０Ｄのひとつと、シード生成器９２１、数字生成器９６０、及びアルゴリズム１３４０といった他のゾーンＵ１秘密とが含まれる。他の実施形態としては、図１０５Ｂに示すように、まず、事前にシード９２９が送信され、スクランブルされた復号鍵１０３０をアンスクランブルするために用いられ、次に、ペイロード１３４２を復号するために用いられる。次にステート９２０を用いて、ラストマイル通信におけるセキュリティブレイクに対抗するための複数のバリアを提供するデータ１３４１を復号、またはアンスクランブルする。
【０７６２】
本発明によれば、クライアントによって繰り返し使用されるアルゴリズムの認識を防止するため、クライアントにインストールされたアルゴリズムのリストからアルゴリズムを選択するために用いられるアドレス、またはコードは、例えば、毎週、毎日、毎時間、変更される。「シャッフル」と呼ばれるこの機能は、デッキ内のカードの順序の入れ替えと類似であり、かつ、ネットワーク内で実行されるシャッフルと同様の方法で行われる。シャッフルは、そのアルゴリズムテーブルがスクランブル化、混合、または暗号化のための方法を含むかどうかに関わらず、アルゴリズムのテーブル内の任意のアルゴリズムを識別するために使用される番号を並び替える。図１０６に示すように、クライアントノードＣ１，１内、例えば、携帯電話３２にホストされたアルゴリズムテーブルをシャッフルするために、シグナリングノードＳｓをホスティングしているシグナリングサーバ１３６５は、ＳＤＮＰクラウドが新しいアルゴリズムアドレスを解釈できることを保証すると共に、シードをゾーンＵ１数字生成器９６０に供給するための数値シード９２９をクライアントノードＣ１，１に送信する。与えられた数値はシャッフルアルゴリズム１３１２のトリガとなり、ゾーンＵ１のアルゴリズムテーブル１３６８Ａが新しいゾーンＵ１アルゴリズムテーブル１３６８Ｆに変換され、変更されたテーブルがクライアントノードＣ１，１内にあるセキュリティを確保したアプリケーション及びデータレジスタ１３５９にストアされる。シグナリングサーバ（図示せず）は、スケジュール時間１３１０から導出されたステート情報と、シャッフルプロセスをスケジュールするために使用されるイベント日付１３１１とに基づいて数値シード９２９を生成する。同じステート及び日付の情報がＤＭＺサーバ内のテーブルをシャッフルするために使用されているため、クラウド及びクライアントのアルゴリズムテーブルが同一かつ同期されることが保証される。
【０７６３】
クラウドからクライアントノードＣ１，１にセキュリティ設定を伝える改良された方法としては、図１０７に示すように、デュアルチャネル通信を用いる方法があり、その場合には、メディアサーバ１１１８にホストされたメディアノードＭＲがクライアントノードＣ１，１に数値シード９２９に送信し、別のシグナリングサーバ１３６５にホストされたシグナリングノードＳｄがクライアントノードＣ１，１に復号鍵１０３０を送信する。この方法の利点は、復号鍵１０３０が数値シード９２９及びペイロードパケット１３４２の場合とは異なるＳＤＮＰパケットアドレスを有する異なるソースから送信されるということである。考え得る欠点は、通信経路が異なるという事実にもかかわらず、両方のネットワークチャネルが同じ物理媒体、例えば携帯電話３２への単一のＷｉＦｉまたはＬＴＥ接続を介して伝送されることが多い点である。シグナリングサーバ１３６５からクライアントノードＣ１，１への伝送される前に、復号鍵１０３０がスクランブルまたは暗号化されることによって、この欠陥が大幅に修正され、パケットスニッフィングによって傍受または読み取ることができなくなる。
【０７６４】
動作中、メディアノードＭＲからクライアントノードＣ１，１へメディアチャネルを介して渡される数値シード９２９は、アルゴリズムテーブル１３４０から復号アルゴリズムを選択し、パドロック１３３９Ｃによって示される復号鍵１０３０のセキュリティをアンロックするために用いられる。一旦アンロックされると、復号鍵１０３０は、暗号化処理１３３９Ｂによってペイロードパケット１３４２に対して実行された暗号化をアンロックするために用いられる。次に、数値シード９２９は、ゾーンＵ１秘密１３５０Ｄと共に、クライアントノードＣ１，１が使用するデータ１３４１を復元するために用いられる。
【０７６５】
図１０８に示すように、非対称キー交換が使用される場合には、ＤＭＺサーバ１３５３Ａは、秘密復号鍵１０３０Ａ及び公開暗号鍵１３７０Ａを含む一対の非対称キーを生成する。復号鍵１０３０Ａは、ゾーンＺ１秘密としてＤＭＺサーバ内に秘密のままであり、公開暗号キー１３７０Ａは、シグナリングノードＳｄを介してキー交換サーバ１３６９に渡される。キー交換サーバ１３６９は、必要になるまで暗号キー１３７０Ａを保持し、その後、必要に応じてクライアントデバイス１３３５に渡す。クライアントノードＣ１，１がメディアノードＭＲに送信されるペイロードデータパケット１３４２を準備する際には、まず、ゾーンＺ１暗号鍵１３７０Ａをキー交換サーバ１３６９からダウンロードする。シグナリングサーバが暗号鍵をクライアントノードＣ１，１に直接渡すことができるため、キー交換サーバ１３６９を使用することに多くの利点が存在する。公開キー交換サーバを用いることの最初の利点は、よく見える状態であっても隠された状態にある、すなわち、「数が多いことによる安全性」があるという利点がある。公開キーサーバは何百万もの暗号キーを発行し得るため、会話を不正に盗聴するために、どのキーを入手すればよいのかを侵入者が知ることができない。たとえ、奇跡的に侵入者が正しいキーを選択した場合でも、侵入者は暗号鍵を用いて暗号化することはできるが、復号することはできない。第３に、公開キーの配布は、シグナリングサーバが鍵を配布し、その配布を確認する必要がない。最後に、キー交換サーバを用いることによって、サイバー犯罪者にとって暗号鍵がどこから来たかを追跡する方法がなくなり、シグナリングサーバを介して発信者（呼び出し側）を追跡することが困難となる。
【０７６６】
暗号鍵１３７０を取得した後、クライアントサーバ１３３５のノードＣ１，１は、選択された暗号化アルゴリズム及び暗号鍵１３７１Ｂを用いて、ペイロードパケット１３４２を暗号化する。メディアノードＭＲはＤＭＺサーバ１３５３Ａから復号鍵１０３０にアクセスすることができるため、ペイロードパケット１３４２をアンロックすることができ、かつ、そのファイルを読み取ることができる。逆にゾーンＵ１秘密１３５０Ｄは、クライアントノードＣ１，１からキー交換サーバ１３６９に渡される暗号鍵（図示せず）に対応する復号鍵１０３０を含む。メディアノードＭＲがクライアントノードＣ１，１のデータパケットを準備すると、ゾーンＵ１の暗号鍵１３７０Ａをダウンロードし、次に、ペイロードパケット１３４２を暗号化して、クライアントノードＣ１，１に送信する。携帯電話３２は、ゾーンＵ１復号鍵１０３０を含むゾーンＵ１秘密にアクセスできるため、ペイロードパケット１３４２を復号し、読み出すことができる。
【０７６７】
上述した特定の方法、及び、他のそれらの組み合わせによって、ソフトウェア、共有秘密、アルゴリズム、数字生成器、数値シード、非対称または対称暗号鍵の配布を含むセキュリティを確保した通信を、本発明に従って、実現することができる。
【０７６８】
［ＳＤＮＰパケット転送］
本発明に基づくセキュリティを確保した通信の別側面は、サイバーアタッカーが、シングルホップの発信元及び宛先を明らかにすることによって、データパケットまたはコマンド、及び制御パケットがどこから来て、どこに到着するのか、すなわち、真の発信元と最終送信先を判断することが難しいということである。さらに、一つのＳＤＮＰクラウド内で用いられるＳＤＮＰアドレスは、インターネット上で有効な実際のＩＰアドレスではなく、ＮＡＴアドレスと類似した方法でＳＤＮＰクラウドにおいて意味を持つローカルなアドレスのみである。ＮＡＴネットワークにおけるデータ転送とは異なり、ＳＤＮＰネットワークを通過するデータのルーティングにおいて、データパケットヘッダー内のＳＤＮＰアドレスは、各ノードツーノードのホップの後、書き換えられる。さらに、メディアノードは、データパケットを送信してきた直前のメディアノード、及び、転送先の次のメディアノード以外のルーティングを知ることがない。そのプロトコルは、上述したシングルチャネル及びデュアルチャネルの通信の例に基づくものとは異なるが、ルーティングのコンセプトは共通である。
【０７６９】
［シングルチャネル転送］
シングルチャネル通信の一例が図１０９に示されており、そこでは、データパケットはそれぞれがＳＤＮＰ対応のアプリケーション１３３５が実行しているタブレット３３及び携帯電話３２を接続するＳＤＮＰメッシュネットワークを介して転送される。クライアントノードＣ２，１からクライアントノードＣ１，１へのセキュリティを確保した通信において、データはゾーンＵ２においてクライアントノードＣ２，１からメディアノードＭａ，ｆへのシングルチャネルラストマイルルーティングを通過し、次に、ゾーンＺ１のＳＤＮＰクラウドにおいて、ゲートウェイメディアノードＭａ，ｆからゲートウェイメディアノードＭａ，ｄへのメッシュルーティングを通過し、最終的にゾーンＵ１においてメディアノードＭａ，ｄからクライアントノードＣ１，１へシングルラストルーテイングを通過する。データパケット１３７４Ｂは、パケットが発信元ＩＰ  Ａｄｄｒ  ＴＢからメディアサーバ１２２０ＦのＩＰアドレス、ＩＰ  Ａｄｄｒ  ＭＦに送信されることを示すＩＰアドレス指定を表している。
【０７７０】
これらのラストマイルアドレスは、実際のＩＰアドレスを表している。一旦、ゾーンＺ１クラウドに入ると、ＳＤＮＰパケット１３７４Ｆの発信元ＩＰアドレスは、インターネット上では意味をなさないＮＡＴタイプのアドレスである擬似ＩＰアドレス  ＳＤＮＰ  Ａｄｄｒ  ＭＰに変更される。単純化のため、ネットワークルーティングがシングルホップを含むと仮定すると、送付先のアドレスはまた、擬似ＩＰアドレスであり、この場合は、ＳＤＮＰ  Ａｄｄｒ  ＭＤである。ゾーンＵ１のラストマイル通信を通過した後、ＳＤＮＰパケット１３７４に示されるアドレスは、発信元のアドレス  ＩＰ  Ａｄｄｒ  ＭＤ及び送付先のアドレス  ＩＰ  Ａｄｄｒ  ＣＰを含む実際のＩＰアドレスに戻る。リアルタイムのパケット転送においては、全てのＳＤＮＰメディアパケットにはＴＣＰではなく、ＵＤＰが用いられる。上述したように、ペイロードはゾーン毎に変化する―ラストマイルゾーンＵ２においては、ＳＤＮＰメディアパケット１３７４ＢのペイロードはＵ２  ＳＤＮＰパケットを含み、メッシュネットワーク及びＳＤＮＰクラウドゾーンＺ１においては、ＳＤＮＰメディアパケット１３７４ＤのペイロードはＺ１  ＳＤＮＰパケットを含み、ラストマイルゾーンＵ１においては、ＳＤＮＰメディアパケット１３７４ＧはＵ１  ＳＤＮＰパケットを含む。したがって、インターネット通信とは異なり、ＳＤＮＰメディアパケットは、アドレス、フォーマット、及びコンテンツが変化しながら、ネットワークを横断する発展的なペイロードである。
【０７７１】
図１１０Ａ−１１０Ｆには、どのようにシングルチャネルＳＤＮＰ通信が行われるかを示す一連のフローチャートが含まれる。シングルチャネルのアドホックな通信においては、通信者同士が、セッションを生成し、その後、データまたは音声を転送するシーケンスによって、シングルチャネル、すなわち、メディアチャネルを介して情報を交換する。図１１０Ａのステップ１３８０Ａに示すように、クライアントはＳＤＮＰ対応のアプリケーション１３３５を開き、デフォルトのＳＤＮＰサーバテーブル１３７５にリストされた任意のＳＤＮＰデフォルトのメディアサーバとのダイアログを開始する。認証済みのクライアントがＳＤＮＰネットワークを用いて、呼び出し（コール）やセッションを確立したい場合には、デフォルトのＳＤＮＰサーバのいずれか１つ、この場合は、メディアノードＭａ，ｓにホストするメディアサーバ１１２０Ｓが最初のコンタクトナンバーとして示される。シングルチャネル通信において、サーバ１２２０Ｓは２つの機能−新しい発信者（呼び出し側）からのコンタクトを最初に受けるデフォルトサーバとしての機能、及び、同時に既に開始された通信を転送するメディアサーバとしての機能を果たす。別の実施形態では、別個の専用の「ネームサーバ」が、通信が開始されるときではなく、デバイスが最初に接続する、すなわち、ネットワーク上に登録するときに、最初のコンタクト先として動作する。本発明におけるネームサーバの使用については、本明細書において後述される。
【０７７２】
クライアントのＳＤＮＰ対応のアプリケーション１３３５は、携帯電話、タブレット、またはノートブック等において実行される個人用のプライベートなメッセンジャやセキュリティを確保した電子メールのようなＳＤＮＰ対応のセキュリティを確保したアプリケーションであってもよい。あるいは、クライアントは、埋め込まれたＳＤＮＰソフトウェアを実行するセキュリティを確保したハードウェアデバイスを含んでいてもよい。ＳＤＮＰが埋め込まれたデバイスには自動車用のテレマティックス端末、例えば、クレジットカード取引のためのＰＯＳ端末、専用のＳＤＮＰ対応のＩｏＴクライアント、または、ＳＤＮＰルータ等であってもよい。本明細書に記載のＳＤＮＰルータは、ＳＤＮＰソフトウェアが実行されていないデバイスを、セキュリティを確保したＳＤＮＰクラウドに接続するために使用される汎用のハードウエア周辺機器であり、例えば、ノートブック、タブレット、電子ブック、携帯電話、ゲーム、イーサネット（登録商標）、ＷｉＦｉ、または、Ｂｌｕｅｔｏｏｔｈ（登録商標）を介して接続することのできるガジェットであってよい。
【０７７３】
クライアントアプリケーション１３３５がデフォルトＳＤＮＰサーバの一つにコンタクトすると、続いてＳＤＮＰゲートウェイノードにリダイレクトされる。ゲートウェイノードは、クライアントの位置とサーバとの間の物理的な近接度、ネットワークトラフィックが最も低いもの、または、最も伝送遅延が小さく、最も待ち時間が少なくなるパスに基づいて選択されてもよい。ステップ１３８０Ｂにおいて、デフォルトＳＤＮＰサーバ１２２０Ｓは、クライアントの接続を、最善の選択であるＳＤＮＰゲートウェイメディアノードＭａ，ｆをホストするＳＤＮＰゲートウェイメディアサーバ１２２０Ｆにリダイレクトする。ゲートウェイメディアノードＭａ，ｆは、次に、両通信者の証明書を認証し、ユーザを確認し、呼び出し（コール）が無料であるかプレミアム機能であるかを確認し、必要に応じてアカウントの支払い状況を確認し、ＳＤＮＰセッションを確立する。
【０７７４】
ステップ１３８０Ｃにおいて、クライアントアプリケーション１３３５は、ゲートウェイメディアサーバ１２２０Ｆに向けられたルートクエリ１３７１を用いて、アドレス、及びコール先、すなわち、呼び出される側またはデバイスのルーティング情報を要求する最初のＳＤＮＰパケット１３７４Ａを送信する。ルートクエリ１３７１を含むＳＤＮＰパケット１３７４Ａはリアルタイム通信（すなわち、データパケット）よりもコマンド及び制御パケットを表すため、ＵＤＰよりもＴＣＰを用いて配信される。ルートクエリ１３７１は、コンタクト情報がクライアントアプリケーション１３３５に電話番号、ＳＤＮＰアドレス、ＩＰアドレス、ＵＲＬ、またはＳＤＮＰコード、例えば、宛先となるデバイス、この場合、携帯電話３２のＳＤＮＰ  ｚｉｐコードを含む、任意の数のフォーマットで供給されるように指定してもよい。したがって、ルートクエリ１３７１は呼び出される当事者についての情報、すなわち、そのＳＤＮＰ  ｚｉｐコード、そのＩＰアドレス、または、そのＳＤＮＰアドレスを含む呼び出しを行うために要する情報を要求するものである。
【０７７５】
図１１０Ｂのステップ１３８０Ｄにおいて、ＳＤＮＰゲートウェイメディアノードＭａ，ｆはＳＤＮＰクラウド１１１４を検索し、宛先を要求、すなわち、メディアノードＭａ，ｆは呼び出された当事者を確認し、例えば、呼び出された当事者のＳＤＮＰ  ｚｉｐコード、ＩＰアドレス、または、ＳＤＮＰアドレスを含む、呼び出しを行うために要する情報を取得し、その後、ステップ１３８０Ｅにおいて、ＳＤＮＰゲートウェイメディアノードＭａ，ｆはクライアントアプリケーション１３３５に、ルーティング情報、その呼び出し（コール）が辿るパス、及び特定のゾーンを横断するために要する暗号鍵を提供する。ステップ１３８０Ｆにおいて、クライアント、すなわちタブレット３３が宛先を取得すると、タブレット３３はＳＤＮＰデータパケット１３７４Ｂを用いて、呼び出しを開始する。マイクロホン１３８３Ａによってキャプチャされた音声１３８４Ａは、オーディオＣＯＤＥＣ（図示せず）によってデジタル情報に変換され、アプリケーション１３３５に送られる。オーディオデータをＳＤＮＰヘッダーにアッセンブルされるアドレスルーティング、及び他の情報と組み合わせることによって、アプリケーション１３３５は「ＩＰ  Ａｄｄｒ  ＴＢ」から「ＩＰ  Ａｄｄｒ  ＭＦ」へのファーストマイルルーティングのためのＳＤＮＰデータパケット１３７４Ｂを構築し、メディアノードＭａ，ｆへのパケット送信を開始する。データパケット１３７４Ｂのペイロード１３７２に埋め込まれるＳＤＮＰヘッダーには、緊急度、配信設定、セキュリティプロトコル、及び、データタイプの仕様が含まれていてもよい。ＳＤＮＰデータパケット１３７４ＢのファーストマイルルーティングがＩＰアドレスを用いて行われた場合には、データパケットの転送は、実際のデータコンテンツがスクランブルされ、かつ、ＳＤＮＰゾーンＵ２セキュリティ設定を用いて暗号化され、データをカプセル化するＵ２  ＳＤＮＰペイロード１３７２に含まれるＳＤＮＰヘッダーもまた、ゾーンＵ２のためのセキュリティを確保した動的なネットワークプロトコルを用いて特別にフォーマットされている点を除いて、従来のインターネットのトラフィックと同様である。ゾーンＵ２のセキュリティを確保した動的なネットワークプロトコルは、特定のゾーンを横断する通信に特に適用可能な共有秘密のセットであり、例えば、ゾーンＵ２特有のシード生成器、すなわち、図５１Ａの例に上述されたアルゴリズムと、ゾーンＵ２に特有のセキュリティ設定、テーブル等を用いたシード生成方法を用いて計算されるゾーンＵ２のシードを含む。同様に、ゾーンＵ２の暗号化及びスクランブル化のアルゴリズムは、ゾーンＵ２に固有のセキュリティ設定に基づく。したがって、タブレット３３によって送信されるパケットはステート（時間）に基づいて上述された方法によってスクランブル化、及び暗号化され、これらのパケットはそれらが作られたステート（時間）を識別するための復号鍵及びシードを含み、その復号鍵及びシードによって、ゾーンＵ２固有のセキュリティ設定を用いてメディアノードＭａ，ｆがパケットをアンスクランブル化し、復号することが可能となる。
【０７７６】
要約すると、各ノードはタグによって受信した各パケットを識別する。ノードが一旦パケットを識別すると、そのパケットに対して、指定された順序で、シグナリングサーバが実行するように指示した復号、アンスクランブル化、混合、スクランブル化、暗号化及び分割の処理を実行する。この処理に用いられるアルゴリズムまたは他の方法は、ステート、例えば、パケットが生成された時間、または、ステートによって決定されたアルゴリズムに従って生成されたシードに基づいてもよい。各処理を実行するときに、ノードはメモリにあるテーブルから特定のアルゴリズムまたは方法を選択するために、そのステートまたはシードを用いてもよい。シグナリングサーバの指示に従って、ノードは各パケットにタグを付与し、その後、パケットを次のノードにルートし、ＳＤＮＰネットワークを通過させる。勿論、受信するパケットは混合され、かつ／または、分割されているため、ノードによって送信されるパケットは受信するパケットと通常同一ではないと考えられ、いくつかのデータセグメントが他のパケットに移動され、他のパケットからデータセグメントが加わっている場合もある。このように、一旦、パケットが分割されると、それぞれの分割されたパケットにはタグが付与され、その「兄弟」がどのようにして同じ最終目的地にたどり着くかに全く依存することなく、それ自身のルートに基づいて移動する。ノードは、次のホップを除いて、各パケットのルートを感知しない。
【０７７７】
シングルチャネルＳＤＮＰシステムにおいて、ゲートウェイ及び他のメディアノードは、ネームサーバ、及び、シグナリングサーバの仕事をエミュレートする３つの義務を実行しなければならない。実際、シングルチャネル、デュアルチャネル、トリチャネルシステムは、３つの機能―パケット転送、シグナリング、「ネーミング」−が、シングルチャネルシステムでは同一のサーバで実行され、デュアルチャネルでは２つのタイプのサーバで実行され、トリチャネルシステムでは３つのタイプのサーバによって実行されるという点で異なる。その機能自体は、３種類のシステムすべてにおいて、同一である。
【０７７８】
分散されたシステムでは、シグナリング機能を実行するサーバ群がパケットの最終的な宛先を知っているが、単一のサーバがパケットの全てのルートを知っているわけではない。例えば、最初のシグナルサーバは、ルートの一部を知り得るが、パケットがあるメディアノードに到達したときに、シグナリング機能は、その時点からルートの決定を行う他のシグナリングサーバに引き継がれる。
【０７７９】
大まかな例示をすれば、ニューヨークシティにある携帯電話からサンフランシスコのラップトップにパケットが送信されるときには、最初のシグナリングサーバ（または、シグナリング機能を実行する最初のサーバ）は、携帯電話からのパケットをニューヨークのローカルサーバ（エントリーゲートウェイノード）に転送し、そこからフィラデルフィア、クリーブランド、インディアナポリス、及びシカゴにあるサーバに転送し、第２のシグナリングサーバがシカゴのサーバからカンザスシティ、及びデンバーにあるサーバに転送し、第３のシグナリングサーバがデンバーのサーバからソルトレイクシティ、リノ、サンフランシスコ（エグジットゲートウェイノード）に転送し、最終的にラップトップに到達し、その際に、各シグナリングサーバは、伝送遅延、及び、その時の他のＳＤＮＰネットワークのトラフィック状況に基づいて、担当するルートの一部を決定する。最初のシグナリングサーバは、第２のシグナリングサーバにパケットがシカゴのサーバにあることを伝え、第２のシグナリングサーバは第３のシグナリングサーバにパケットがデンバーのサーバにあることを伝えることがあり得るが、いかなるシグナリングサーバ（または、シグナリング機能を実行するいかなるサーバ）も、パケットの全てのルートを感知することがない。
【０７８０】
上述したように、勿論、パケットはそのルート上で、混合され、分割されてもよい。例えば、フィラデルフィアのサーバからクリーブランドのサーバへパケットが単純にルーティングされる代わりに、シグナリングサーバはフィラデルフィアのサーバにそのパケットを３つに分割し、それらをそれぞれ、シンシナティ、デトロイト、及びクリーブランドに転送するように指示してもよい。そのとき、シグナリングサーバは、フィラデルフィアのサーバに３つのパケットそれぞれに指定されたタグを付与するように指示してもよく、パケットを認識できるように、シンシナティ、デトロイト、及びクリーブランドのサーバにタグを通知してもよい。
【０７８１】
図１１０Ｃのステップ１３８０Ｇは、メディアサーバ１２２０ＦにホストされたゲートウェイメディアノードＭａ，ｆからメディアサーバ１２２０ＪにホストされたＳＤＮＰメディアノードＭａ，ｊにルーティングされるＳＤＮＰデータパケット１３７４Ｃを示している。シングルチャネル通信においては、データのルーティングは、ゲートウェイがステップ１３８０Ｄにおいて呼び出されたアドレスを取得したときに、最初に決定される。ＩＰデータパケット１３７４Ｂのファーストマイルルーティングとは異なり、このクラウド内のＳＤＮＰパケット１３７４Ｃの最初のホップは、インターネット上で認識することのできない「ＳＤＮＰ  Ａｄｄｒ  ＭＦ」及び「ＳＤＮＰ  Ａｄｄｒ  ＭＪ」のＳＤＮＰアドレスを用いて行われる。シングルチャネル通信においては、ゲートウェイノード（ここでは、ノードＭａ，ｆ）が最初に呼び出されたアドレスを取得したとき（ここでは、ステップ１３８０Ｄ）に、データのルーティング、すなわち、各パケットが宛先に達するまでにその経路上において通過するノードのシーケンスが決定される。
【０７８２】
ＳＤＮＰデータパケット１３７４Ｃのペイロード１３７３Ａは、ＳＤＮＰゾーンＺ１セキュリティ設定を用いて、スクランブル化、及び暗号化され、ペイロード１３７３Ａにデータをカプセル化するＳＤＮＰデータパケット１３７４Ｃに含まれるＳＤＮＰヘッダーもまた、ゾーンＺ１のセキュリティを確保した動的ネットワークプロトコルに従って、特別にフォーマットされる。任意のゾーンにおけるセキュリティを確保した動的ネットワークプロトコルは、その特定のゾーンを横切る通信に特別に適用可能な共有秘密のセットであり、この場合は、ゾーンＺ１のシードアルゴリズムに基づいて計算されたゾーンＺ１のシード、ゾーンＺ１の暗号化アルゴリズムなどである。セキュリティ上の理由から、ゾーンＺ１セキュリティ設定はゾーンＵ２に伝えられることはなく、ゾーンＵ２セキュリティ設定がゾーンＺ１に伝えられることもない。
【０７８３】
ステップ１３８０Ｈは、メディアサーバ１２２０ＪにホストされたメディアノードＭａ，ｊからメディアサーバ１２２０ＳにホストされたＳＤＮＰメディアノードＭａ，ｓに転送されるＳＤＮＰデータパケット１３７４Ｄを示している。ＳＤＮＰパケット１３７４Ｄのクラウドホップもまた、インターネット上で認識できないＳＤＮＰアドレス「ＳＤＮＰ  Ａｄｄｒ  ＭＪ」及び「ＳＤＮＰ  Ａｄｄｒ  ＭＳ」を用いて実行される。ＳＤＮＰデータパケット１３７４Ｄのペイロード１３７３Ｂは、ＳＤＮＰゾーンＺ１セキュリティ設定を用いて、スクランブル化及び暗号化され、ペイロード１３７３Ｂにデータをカプセル化するＳＤＮＰデータパケット１３７４Ｄに含まれるＳＤＮＰヘッダーもまた、ゾーンＺ１のセキュリティを確保した動的ネットワークプロトコルに従って、特別にフォーマットされる。
【０７８４】
ＳＤＮＰクラウド内のノード間においてパケットを送信するこのプロセスは一度に行われてもよく、それぞれ再パケット化、及び再ルーティング化処理１３７３を行うことにより、複数回繰り返されてもよい。
【０７８５】
ＳＤＮＰパケット１３７４Ｅの最後のクラウドホップは、図１１０Ｄのステップ１３８０Ｊに示すように、インターネット上では認識できないＳＤＮＰアドレス「ＳＤＮＰ  Ａｄｄｒ  ＭＳ」及び「ＳＤＮＰ  Ａｄｄｒ  ＭＤ」を用いて同様に行われる。ＳＤＮＰデータパケット１３７４Ｅは、メディアサーバ１２２０ＳにホストされるメディアノードＭａ，ｓからメディアサーバ１２２０ＤにホストされるＳＤＮＰゲートウェイメディアノードＭａ，ｄに転送される。ＳＤＮＰデータパケット１３７４Ｅに含まれるペイロードパケット１３７３Ｃは、ゾーンＺ１セキュリティ設定を用いて、スクランブル化及び暗号化され、ペイロード１３７３Ｃにデータをカプセル化するＳＤＮＰデータパケット１３７４Ｅに含まれるＳＤＮＰヘッダーもまた、ゾーンＺ１のセキュリティを確保した動的ネットワークプロトコルに従って、特別にフォーマットされる。
【０７８６】
ステップ１３８０Ｋにおいて、データパケット１３７４Ｇはセキュリティを確保したクラウド外、すなわち、メディアサーバ１２２０ＤにホストされたゲートウェイメディアノードＭａ，ｄから携帯電話３２上のアプリケーション１３３５にホストされたクライアントノードＣ１，１へ転送される。ＩＰパケット１３７４Ｇ内のペイロード１３７４がＳＤＮＰゾーンＵ１セキュリティ設定を用いてスクランブル化、及び暗号化され、ペイロード１３７４内にデータをカプセル化するＳＤＮＰデータパケットに含まれるＳＤＮＰヘッダーもまた、ゾーンＵ１のセキュリティを確保した動的ネットワークプロトコルに従って、特別にフォーマットされることを除き、ＩＰパケット１３７４Ｇのラストマイルルーティングは、インターネット上で認識することのできるＩＰアドレス「ＩＰ  Ａｄｄｒ  ＭＤ」及び「ＩＰ  Ａｄｄｒ  ＣＰ」を用いて行われる。携帯電話３２のアプリケーション１３３５にペイロード１３７４のデータコンテンツが引き渡されると、スピーカ１３８８Ｂは、オーディオＣＯＤＥＣ（図示せず）を用いて、デジタルコードを音声１３８４Ａに変換する。
【０７８７】
ステップ１３８０Ｌにおいて、図１１０Ｅに示すように、呼び出された人は、元の通信とは逆の方向に音声を発することによって応答する。それにより、音声１３８４Ａはマイクロホン１３８３Ｂによってキャプチャされ、携帯電話３２のアプリケーション１３３５に実装された音声ＣＯＤＥＣ（図示せず）によってデジタルコードに変換される。ゾーンＵ１  ＳＤＮＰセキュリティ設定を用いて、音声データはペイロード１３７５を生成するため、ゾーンＵ１  ＳＤＮＰヘッダーに結合され、ＩＰデータパケット１３７４Ｈを用いて、「ＩＰ  Ａｄｄｒ  ＣＰ」から  「ＩＰ  Ａｄｄｒ  ＭＤ」に送られる。データパケット１３７４Ｈの中のペイロード１３７５がゾーンＵ１  ＳＤＮＰセキュリティ設定を用いてスクランブル化、及び暗号化され、ペイロード１３７５にデータをカプセル化するＳＤＮＰパケット１３７４Ｈに含まれるＳＤＮＰヘッダーもまた、ゾーンＵ１のセキュリティを確保した動的ネットワークプロトコルに従って特別にフォーマットされていることを除き、このＩＰパケット１３７４Ｈのファーストマイルルーティングはインターネット上で認識することのできるＩＰアドレスを用いて行われる。
【０７８８】
ステップ１３８０Ｍに示すように、ＩＰパケット１３７４Ｈを受信するときに、サーバ１２２０ＤにホストされるゲートウェイメディアノードＭａ，ｄは、そのアドレスをＳＤＮＰルーティングに変換し、ＳＤＮＰデータパケット１３７４Ｊ及びそのペイロード１３７６ＡをメディアノードＭａ，ｊに送信する。このＳＤＮＰノードツーノードの通信は、単一のノードツーノードのホップを含んでもよく、また、各ホップに再パケット化及び再ルーティング処理１３７３を含む複数のメディアノードを介した転送を含んでいてもよい。
【０７８９】
図１１０Ｆのステップ１３８０Ｎにおいて、ＳＤＮＰデータパケット１３７４Ｋ及びゾーンＺ１固有のペイロード１３７６Ｂは、コンピュータサーバ１２２０ＪにホストされたメディアノードＭａ，ｊからコンピュータサーバ１２２０ＦにホストされたゲートウェイメディアノードＭａ，ｆに送信される。ＳＤＮＰパケット１３７４内で用いられるＳＤＮＰアドレス「ＳＤＮＰ  Ａｄｄｒ  ＭＪ」及び「ＳＤＮＰ  Ａｄｄｒ  ＭＦ」は、ＮＡＴアドレスと同様のＳＤＮＰ固有アドレスであり、有効なインターネット上のルーティングを表さない。ステップ１３８０Ｐにおいて、ゲートウェイメディアノードＭａ，ｆは、受信したデータパケットの内容をゾーンＺ１固有のペイロード１３７６ＢからゾーンＵ２ペイロード１３７７に変換し、図１０９に示すように、ＩＰアドレス「ＩＰ  Ａｄｄｒ  ＭＦ」及び  「ＩＰ  Ａｄｄｒ  ＴＢ」を用いて、ＩＰパケット１３７４Ｌをタブレット３３にホストされるクライアントノードＣ２，１に転送する。次に、アプリケーション１３３５はペイロード１３７７のデータを抽出し、復号及びアンスクランブル化した後、そのデジタルコードは、オーディオＣＯＤＥＣを用いて、スピーカ１３８８Ａによって再生される音声１３８４Ｂに変換される。
【０７９０】
呼び出しを開始し、呼び出し側（発信者）、すなわちタブレット３３から、呼び出される側、すなわち携帯電話３２まで音声を転送するアドホックな通信のシーケンス全体が、図１１１Ａに要約されている。図１１１Ａに示すように、ＩＰコマンド及び制御パケット１３７４Ａが、ルーティングを決定するためのコンタクト情報を取得するために使用され、ＩＰデータパケット１３７４Ｂが、ＩＰアドレスを用いて、「ＩＰ  Ａｄｄｒ  ＭＦ」のＩＰアドレス上にあるＳＤＮＰゲートウェイノードＭａ，ｆに到達するファーストマイルルーティングを開始するために用いられる。タブレット３３とＳＤＮＰクラウド１１１４との間のファーストマイル通信には全て、ゾーンＵ２のセキュリティ設定が用いられる。
【０７９１】
次に、ゲートウェイメディアノードＭａ，ｆは、ＳＤＮＰ固有のルーティングアドレスへのルーティングを変換し、全てゾーンＺ１セキュリティ設定に基づいて、ＳＤＮＰパケット１３７４Ｃ、１３７４Ｄ及び１３７４Ｅを用いて、「ＳＤＮＰ  Ａｄｄｒ  ＭＦ」から、「ＳＤＮＰ  Ａｄｄｒ  ＭＪ」、「ＳＤＮＰ  Ａｄｄｒ  ＭＳ」、「ＳＤＮＰ  Ａｄｄｒ  ＭＤ」へと、順にＳＤＮＰクラウド１１１４を介して通信を移動させる。このシークセンスは、通信パケットを「ＳＤＮＰ  Ａｄｄｒ  ＭＦ」から直接、「ＳＤＮＰ  Ａｄｄｒ  ＭＤ」に送信するＳＤＮＰデータパケット１３７４Ｆと機能的に同等である。アドホックな通信において、パケットの配信を監督するルーティング管理者が存在しないため、ＳＤＮＰクラウド１１１４のコマンド及び制御パケットのルーティングは、２つの方法の一方によって達成されるとよい。一実施形態としては、ＳＤＮＰデータパケット１３７４Ｃ，１３７４Ｄ，及び１３７４Ｅの発信元及び宛先のアドレスはそれぞれＳＤＮＰネットワークを通過するパケットのホップ毎のパスを明確にかつ厳密に定義し、それらのパスはシングルチャネル通信において、転送中の全体的な伝送遅延が最善となるように事前にゲートウェイメディアノードによって選択される。他の実施形態としては、ＳＤＮＰクラウドの入口、及び出口となるＳＤＮＰノーダルゲートウェイを定義し、正確なルーティングを指定しない一つの「ゲートウェイからゲートウェイ」へのパケットのみが用いられる。この実施形態では、ＳＤＮＰメディアノードにパケットが到着する毎に、メディアノードはインターネット上のルーティングとほぼ同じ方法で次のホップを指示するが、ＳＤＮＰメディアノードは自動的に最も遅延が短くなるようにパスを選択するのに対して、インターネットではそのようなことは行われていない。
【０７９２】
最後に、パケット１３７４Ｅが「ＳＤＮＰ  Ａｄｄｒ  ＭＤ」のゲートウェイメディアノードＭａ，ｄに到着すると、ゲートウェイメディアノードＭａ，ｄは入力されたデータパケットをＩＰアドレス「ＩＰ  Ａｄｄｒ  ＭＤ」及び「ＩＰ  Ａｄｄｒ  ＣＰ」に変更し、セキュリティ設定をゾーンＵ１のものに変更して、ＩＰデータパケット１３７４Ｇを生成する。
【０７９３】
このルーティングの別の要約が図１１１Ｂに示されており、３つのクラウド内のホップ１４４１Ｃ、１４４１Ｄ、及び１４４１Ｅと、２つのラストマイルルーティング１４４１Ｂ及び１４４１Ｆとが含まれている。クラウドマップの下に示されるパケットアドレスは、通信中における２つの形式のパケットアドレス−ＩＰアドレスルーティング及び、ＮＡＴアドレスと類似のＳＤＮＰアドレスルーティングの組み合わせが示されている。特に、パケットアドレス１４４２Ａ及び１４４２ＦはインターネットＩＰアドレスを表すのに対して、パケットアドレス１４４２Ｃ及び１４４２ＤはＳＤＮＰのＩＰアドレスを表している。パケットアドレス１４４２Ｂ及び１４４２Ｅはゲートウェイメディアノードによって用いられ、ＩＰアドレスとＳＤＮＰアドレスとを共に含んでおり、これは、ＳＤＮＰゲートウェイノードがアドレスを変換し、ゾーンＵ２のセキュリティ設定をゾーンＺ１のセキュリティ設定に変換し、ゾーンＺ１の設定をゾーンのＵ１セキュリティ設定に変換する役割を担うことを示している。
【０７９４】
同様に、図１１２Ａは通信の返信部分を要約しており、ＩＰアドレス「ＩＰ  Ａｄｄｒ  ＣＰ」及び「ＩＰ  Ａｄｄｒ  ＭＤ」を用いたファーストマイルゾーンＵ１データパケット１３７４Ｊと、ゾーンＺ１固有のデータパケット１３７４Ｋ及び１３７４Ｌ内のＳＤＮＰアドレス「ＳＤＮＰ  Ａｄｄｒ  ＭＤ」及び「ＳＤＮＰ  Ａｄｄｒ  ＭＪ」及び「ＳＤＮＰ  Ａｄｄｒ  ＭＦ」を用いたＳＤＮＰクラウドルーティングと、ＩＰアドレス「ＩＰ  Ａｄｄｒ  ＣＰ」及び「ＩＰ  Ａｄｄｒ  ＭＤ」を用いたラストマイルゾーンＵ２のデータパケット１３７４Ｊと、を示している。対応するクラウドルーティングマップが図１１２Ｂに示されており、そこでは、ファーストマイルホップ１４４１Ｈ及びラストマイルホップ１４４１ＬはＩＰアドレス１４２２Ｇ及び１４４２Ｌのみを用い、クラウド管のホップ１４４１Ｊ及び１４４１ＫはＳＤＮＰアドレスのみを用い、ゲートウェイメディアノードＭａ，ｄ及びＭａ，ｆはＩＰ及びＳＤＮＰアドレス１４４２Ｈ及び１４４２Ｋの間の変換を実行する。
【０７９５】
図１１３ＡはＳＤＮＰパケットがどのように準備されるかを示す概略図である。音声またはビデオ通信の間、音、声、またはビデオシグナル１３８４Ａは、マイクロホン１３８３Ａによってアナログの電気信号に変換され、その後、オーディオビデオＣＯＤＥＣ１３８５によってデジタル化される。アルファベット順に順序通りに表された一連のデータセグメント（９Ａ、９Ｂ等）を含む得られたデジタルデータストリング１３８７は、解析処理１３８６にかけられて、オーディオまたはビデオコンテンツを含むより小さなデータパケット１３８８となり、次にシングルチャネル分割処理１１０６によってジャンク１３８９が挿入される。シングルチャネル分割処理１１０６には、長いパケット１３８７をより短いパケット１３８８に解析し、ジャンクデータ１３８９を挿入し、最終的に２つのセクション−一方はヘッダーＨｄｒ９を有し、他方はジャンクヘッダーＪを有する、を含む延長されたデータパケットを生成することを含む。Ｈｄｒ９及びＨｄｒＪとの間に含まれるデータセグメントのストリングには、末尾にいくつかのジャンクデータセグメントを備えたパケット１３８８のオーディオまたはビデオデータが含まれる。ＨｄｒＪに続くデータセグメントには、有用なデータが含まれていない。次に、ＳＳＥ処理１２１３は以前のパケット１３８８をスクランブルしてデータストリング１３９１を生成し、ＳＤＮＰプリアンブル１３９９Ａを付加してＳＤＮＰパケット１３９２を生成し、次にＳＤＮＰプリアンブルを除く全パケットを暗号化して、スクランブル化され暗号化されたペイロード１３９３Ａを生成し、次にペイロード１３９３Ａは発信元アドレス「ＩＰ  Ａｄｄｒ  ＴＢ」及び宛先アドレス「ＩＰ  Ａｄｄｒ  ＭＦ」を含むＳＤＮＰパケット１３７４Ｂにロードされて、ルーティングの準備が完了する。ヘッダーＨｄｒ９及びＨｄｒＪによって、ペイロードにおいて各構成部分を認識することが可能となる。ヘッダー及びＳＤＮＰプリアンブルの機能及びフォーマットについては本明細書において後に説明される。
【０７９６】
データストリング１３８７におけるデータセグメント９Ｇ以下は、同様にして、更なるＳＤＮＰパケットを構成する。
【０７９７】
図１１３Ｂは、元のシリアルデータからペイロードを生成する際に使用可能な他の様々な方法を示している。例えば、ＣＯＤＥＣ１３８５からのデータストリング１３８７は、異なる方法によって解析され、分割されてもよい。図示するように、データセグメント９Ａ，９Ｂ，９Ｄ，及び９Ｆはジャンクデータに置き換えられた欠落データセグメントと共にＨｄｒ９１セクションにアッセンブルされ、データセグメント９Ｃ及び９ＤはＨｄｒ９２にアッセンブルされて、共にデータパケット１３９４を生成する。次に、各ヘッダーセクションのデータセグメントは、Ｈｄｒ９１に続くデータフィールド１３９９Ｃ内の個々のデータセグメントが、Ｈｄｒ９２に続くデータフィールド１３９９Ｅ内の個々のデータセグメントとは混合されないように、スクランブルされる。得られたＳＤＮＰパケット１３９５はＳＤＮＰプリアンブル、Ｈｄｒ９１とラベル付けられたファーストヘッダー１３９９Ｂ、ファーストデータフィールド１３９９Ｃ、セカンドデータヘッダー１３９９Ｄ（Ｈｄｒ９２）及びセカンドデータフィールド１３９９Ｅとを含む。データストリング１３８７のデータセグメント９Ａ−９Ｆを様々なデータフィールドに渡って広げるように構成してもよい。ここで示されている方法は単なる例示に過ぎない。
【０７９８】
次に複数のデータフィールドを含み、複数のヘッダーによって分割されたＳＤＮＰパケット１３９５は、いくつかの方法の一つによって暗号化することができる。全パケット暗号化では、ＳＤＮＰプリアンブル１３９９Ａのデータを除いた全てのデータが暗号化、すなわち、ファーストヘッダー１３９９Ｂ、ファーストデータフィールド１３９９Ｃ、セカンドデータヘッダー１３９９Ｄ、及びセカンドデータフィールド１３９９Ｅの中身全てが暗号化され、暗号化されていないＳＤＮＰプレアンブル１３９９Ａ及び暗号文１３９３Ａとを含むＳＤＮＰパケット１３９６を生成する。他の実施形態としては、メッセージの暗号化において、ＳＤＮＰパケット１３９７を、独立して暗号化された２つのストリング−データヘッダー１３９９Ｂ及びデータフィールド１３９９Ｃが暗号化されたストリング１３９３Ｂ、及び、データヘッダー１３９９Ｄ及びデータフィールド１３９９Ｅが暗号化されたストリング１３９３Ｃを含むように構成してもよい。本発明の他の実施形態としては、データのみ暗号化するものであって、データフィールド１３９９Ｃ及び１３９９Ｅが暗号化されたストリング１３９３Ｄ及び１３９３Ｅに暗号化されるが、データヘッダー１３９９Ｂ及び１３９９Ｄは乱されない。得られたＳＤＮＰパケット１３９８は、ＳＤＮＰプリアンブル１３９９Ａ、ファーストデータヘッダー１３９９Ｂ及びセカンドデータヘッダー１３９９Ｄに対応するプレーンテキストと、それぞれデータフィールド１３９９Ｃ及び１３９９Ｅが独立に暗号化されたものに対応する暗号化されたストリング１３９３Ｄ及び１３９３Ｅとを含む。
【０７９９】
シングルチャネル通信においては、次のメディアノードに必要となるルーティング及び優先順位に関する情報を伝えるため、ＳＤＮＰペイロード１４００は図１１４に示すように、必要な情報を所持する必要がある。このデータは、ＳＤＮＰプリアンブル１４０１またはデータフィールドヘッダー１４０２のいずれかに含まれる。ＳＤＮＰプリアンブル１４０１にはパケット全体に関する情報が含まれており、最大８までのデータフィールドの数「Ｆｌｄ  ＃」、各データフィールドの長さ「Ｌ  Ｆｌｄ  Ｘ」（本実施形態ではＸは１から８まで）、ＳＤＮＰパケットが生成されたＳＤＮＰゾーン（例えば、ゾーンＺ１）、２つの数値シード、及び共有秘密によって生成された２つのキーが含まれる。
【０８００】
データフィールドヘッダー１４０２は規定のフォーマットに従って、各データＸフィールドに対して用意される。データフィールドヘッダー１４０２は宛先のアドレスタイプと、データフィールド固有の宛先、すなわち、クラウド上のこの固有のホップの宛先のアドレス（フィールド宛先アドレス）を含む。パケットは次のメディアノードに到着するまで変更されないため、所定のパケット中の各データフィールドの宛先のアドレスは常に同一である。しかし、パケットが複数のパケットに分割され、分割されたパケットが異なるメディアノードに転送される場合には、分割されたパケットのフィールド宛先アドレスは他のパケットのものとは異なる。
【０８０１】
マルチルート及びメッシュ転送では、フィールド宛先アドレスは、動的ルーティングで用いられる様々なフィールドの分割及び混合に使用される。
【０８０２】
次のホップのアドレスタイプは、パケットがネットワークを通過するときに変化することがある。例えば、そのアドレスタイプには、クライアントとゲートウェイの間のＩＰアドレスと、一旦ＳＤＮＰクラウドに入った場合には、ＳＤＮＰアドレスまたはＳＤＮＰ  ｚｉｐとを含んでいてもよい。宛先には、ＳＤＮＰ固有のルーティングコード、すなわち、ＳＤＮＰアドレス、ＳＤＮＰ  Ｚｉｐ、または、ＩＰｖ４若しくはＩＰｖ６アドレス、  ＮＡＴアドレス、  電話番号等が含まれていてもよい。
【０８０３】
「フィールドゾーン」とラベル付けられたパケットフィールドは、特定のフィールドが生成されたゾーン、すなわち、過去の暗号化またはスクランブル化がＵ１、Ｚ１，Ｕ２等のどのゾーンの設定に基づいて行われたかを示す。データパケットのアンスクランブル化または復号に追加の情報、例えば、鍵、シード時間またはステートが必要となる場合には、フィールド「フィールドその他」とラベル付けされたパケットフィールドがそのフィールド固有の情報を付与するために用いられてもよい。「データタイプ」とラベル付けられたパケットフィールドによって、コンテキスト固有のルーティングが容易となり、ビデオやライブビデオのような時間に敏感な情報を含むデータパケットから、リアルタイムの通信を要求することなく、データ、録画、テキスト、及びコンピュータファイルを区別する、すなわち、リアルタイムルーティングと非リアルタイムルーティングとを区別することができる。データタイプには、音声、テキスト、リアルタイムビデオ、データ、ソフトウェア等が含まれる。
【０８０４】
「緊急性」及び「デリバリ」とラベル付けられたパケットフィールドは共に、特定のデータフィールドのデータをルーティングする最良な方法を決定するために用いられる。緊急性には、遅い（snail）、普通、優先、及び、緊急のカテゴリが含まれる。デリバリには、通常、冗長、特別、及びＶＩＰのカテゴリを示すＱｏＳマーカが含まれる。本発明の一つの実施形態では、表１４０３に示すような様々なデータフィールドのバイナリサイズは、通信に必要となる帯域幅が最小となるように選択される。例えば、データパケットが図示するように０〜２００Ｂの範囲であり、データフィールドには２００Ｂの８パケットを含むことができるため、ＳＤＮＰパケットは１６００Ｂのデータを運ぶことができる。
【０８０５】
［デュアルチャネル通信］
デュアルチャネルＳＤＮＰデータ転送の一つの実施形態としては、図１１５に示すように、コンテンツはテーブル３３にホストされたクライアントノードＣ２，１からゾーンＵ２のファーストマイルルーティングを介してゲートウェイメディアノードＭａ，ｆに到着し、次に、コンピュータサーバ１１１８にホストされたゾーンＺ１メッシュルーティングを通過し、ゲートウェイメディアノードＭａ，ｄからゾーンＵ１ラストマイルルーティングを介して携帯電話３２にホストされるクライアントＣ１，１に転送される。ルーティングは、ファーストマイルＩＰパケット１３７４Ｂ、ＳＤＮＰＳＤＮＰメッシュネットワークを通過するＳＤＮＰパケット１３７４Ｆ、及び、ラストマイルＩＰパケット１３７４Ｇによって制御される。
【０８０６】
並行して、メディア及びコンテンツ転送に対して、シグナリングサーバ１３６５によってホストされるシグナリングノードＳｓと通信するクライアントＣ２，１は、シグナリングサーバＳｄ、シード９２９及び復号鍵を介して、クライアントＣ２，１がそれらを送信した時間またはステートに基づいて決定される数値シード９２９、及び復号鍵１０３０をクライアントＣ１，１に送信する。キー、シードといったセキュリティ設定（または、セキュリティ証明書）を、ゾーンＺ１を介してではなく、シグナリングルート１４０５を介してクライアント間で直接交換することによって、エンドツーエンドのセキュリティが実現され、ゾーンＺ１のネットワークオペレータがセキュリティ情報にアクセスし、ゾーンＵ１またはゾーンＵ２のセキュリティを侵害するリスクを有益的に排除することができる。本実施形態では、ＳＤＮＰネットワーク通信におけるさらに別の次元のセキュリティを示す。例えば、シード９２９、クライアントのアプリケーションにおけるデータパケットのスクランブル化、及びアンスクランブル化に用いられてもよい。同様に、図示するように、復号鍵１０３０によってクライアントＣ１，１のみが暗号化されたメッセージを開くことができるように構成してもよい。キー１０３０及び数値シード９２９がゾーンＺ１内に渡ることがないため、ネットワークオペレータはそのネットワークのセキュリティを侵害することがない。クライアントＣ２，１からゲートウェイメディアノードＭａ，ｆにデータパケットが入るときには、そのデータパケットは既に暗号化され、スクランブルされている。ゲートウェイノードＭａ，ｄからクライアントＣ１，１によって受信されたパケットは、クライアントＣ２，１から送信されゲートウェイノードＭａ，ｆに到着するパケットと同じように形式によって、スクランブル、及び／または、暗号化されている。各ノードに存在するネットワークの動的なスクランブル化と暗号化（図１１５には明示的に示されていない）は、ＳＤＮＰクラウドによって容易に実現できる第２のセキュリティレイヤに対応する。クライアント間での直接的なセキュリティ証明書の交換を含む、この外部でのエンドツーエンドのセキュリティレイヤが、ＳＤＮＰクラウド自身の動的なスクランブル化及び暗号化に付与されているということもできる。
【０８０７】
したがって、図１１５に示すように、シグナリングノードＳｓ、及びＳｄは、メディアノードＭａ，ｆ及びＭａ，ｄに、ＩＰパケット１３７４Ｂを使用して、ゾーンＵ２内の「ＩＰ  Ａｄｄｒ  ＴＢ」から「ＩＰ  Ａｄｄｒ  ＭＦ」に、ＳＤＮＰパケット１３７４Ｆを使用してゾーンＺ１の「ＳＤＮＰ  ＡｄｄｒＭＦ」から「ＳＤＮＰ  Ａｄｄｒ  ＭＤ」に、ＩＰパケット１３７４Ｇを使用してゾーンＵ１の「ＩＰ  Ａｄｄｒ  ＭＤ」から「ＩＰ  Ａｄｄｒ  ＣＰ」に、それぞれデータをルーティングするよう指示する。この実施形態では、シグナリングノードＳｓ、及びＳｄはクライアントノードＣ２，１及びＣ１，１と直接通信し、ゲートウェイメディアノードＭａ、ｆ及びＭａ、ｄとメディア通信チャネル上のデータパケットを介して間接的に通信するため、メッシュネットワークへのルーティング接続は、ＳＤＮＰパケット１３７４Ｆを使用して、ゲートウェイ間で行われる。シグナリングサーバＳｓ及びＳｄは、メッシュネットワーク内の中間のメディアノードに通信することはできない。そのため、図１１５に示す実施形態では、メディアノードはシングルチャネル通信システムとしてのクラウド内の動的なセキュリティを管理し、シグナリングノードはＳＤＮＰクラウド、すなわち、ゾーンＺ１を超えたエンドツーエンドのセキュリティを実現するために用いられている。
【０８０８】
デュアルチャネルＳＤＮＰデータ転送の別の実施形態では、図１１６に示すように、サーバ１３６５によってホストされるシグナリングノードＳｓ及びＳｄは、クライアントのエンドツーエンドセキュリティを容易にし、同時にＳＤＮＰクラウド内の動的ルーティング及びセキュリティを管理する。したがって、シグナリングノードＳｓ及びＳｄは、シグナルルート１４０５を用いて、クライアントノードＣ２，１及びＣ１，１のエンドツーエンド間において、数値シード９２９及び復号鍵１０３０を伝送するだけでなく、シグナルルート１４０６によって運ばれる動的ＳＤＮＰパケット１３７４Ｚを用いて、ゾーン固有のシード９２９、復号鍵１０３０、シングルホップルーティング指令を通信パケット及びコンテンツが移動するメッシュネットワーク内の全メディアノードに送信する。このようにして、シグナリングノードＳｓ及びＳｄはルーティング及びセキュリティを制御し、ネットワーク内のメディアノードはコンテンツを運び、シグナリングノードＳｓ及びＳｄからの指令を実行する。そのように実装された場合には、メディアノード、及び、シグナリングノードＳｓ及びＳｄのいずれかが、どのメディアサーバがオンラインでどのメディアサーバがそうでないか、及び、それらの動的ＩＰアドレスがその時点で何であるかを追跡する役割を担う。
【０８０９】
［トリチャネル通信］
実際のデータ転送からネットワークのノードを追跡する役割を分離することによって、より強固なセキュリティとより高いネットワークのパフォーマンスを実現することができる。このアプローチでは、「ネームサーバ」と呼ばれるサーバの冗長なネットワークによって、絶えずネットワークとメディアノードをモニタし、シグナリングサーバを解放してルーティング及びセキュリティデータ交換のジョブをさせ、メディアサーバにシグナリングノードから受信したルーティングの指示の実行に専念させる。これによって、本明細書では「トリチャネルシステム」と呼ばれ、図１１７に図示されるものが得られ、ここでは、ネームサーバノードＮＳをホストするネームサーバ１４０８はネットワークノードリスト１４１０を含むネットワーク上のアクティブなＳＤＮＰノードのリストを保持している。シグナリングサーバ１３６５によってホストされるシグナリングノードＳからの要求に対して、ネームサーバ１４０８にホストされるネームサーバノードＮＳはネットワーク記述をシグナリングサーバ１３６５に渡し、それに基づいて、シグナリングサーバはゾーンＵ２，Ｚ１，Ｕ１，及びその他を含むネットワークコンディションテーブル１４０９に示されるように、ＳＤＮＰクラウド１１１４上の全てのメディアノード間の通信状況及び伝送遅延を追跡し、記録する。コールを生成するプロセスにおいて、シグナリングノードＳは、ゾーンＵ２のファーストマイルルーティングのためのタブレット３３にホストされたクライアントノードＣ２，１への指示、ラストマイルルーティングのための携帯電話３２にホストされたクライアントノードＣ１，１への指示、及びＳＤＮＰデータパケットにおけるメディアコンテンツの転送に用いられるセキュリティを確保したＳＤＮＰクラウド１１１４上の全ての中間のメディアノードへのゾーンＺ１ルーティングのための指示を含む、データパケットがネットワーク上において通過する経路に含まれるすべてのノードへのルーティング指示を行う。
【０８１０】
更新されたネットワークの記述を維持するため、デバイスがネットワークにログオンする度に、その状態、ＩＰアドレスのＳＤＮＰアドレスの少なくとも一方を含むデータが、図１１８に示すように、ネームサーバに転送される。ネットワークの状態、及び／またはアドレスデータは、その後、タブレット３３または携帯電話３２上で実行されるアプリケーション１３３５、ノートブック３５またはデスクトップ（図示せず）上で実行されるアプリケーション、または、自動車１２５５、または、冷蔵庫によって図式的に示されるＩｏＴデバイスにおいて実行されるアプリケーションにストアされたネットワークアドレス表１４１５にストアされる。ネットワークアドレス表１４１５はまた、全てのクラウド上のメディアサーバ、例えば、コンピュータ１２２０ＦにホストされたメディアノードＭａ，ｆ及びコンピュータ１２２０ＤにホストされたメディアノードＭａ，ｄの状態を追跡する。ネットワークアドレス表１４１５は、ネットワークに接続された全てのデバイスのルーティングアドレスを記録する。ほぼ全ての場合において、接続されたデバイスのＩＰアドレスまたはＳＤＮＰアドレスはネットワークアドレス表１４１５に記録され、追跡される。ＳＤＮＰ対応の通信アプリケーションが実行されるメディアサーバ、及び、任意のパーソナルなモバイルデバイスは、ゲートウェイメディアノードのアドレス変換に必要となるＩＰアドレス及びＳＤＮＰアドレスの両方を記録してもよい。
【０８１１】
ネームサーバノードＮＳがネットワークの完全な記述を維持し、図１１９に示すように、シグナリングサーバ１３６５にホストされるシグナリングノードＳは、ネットワーク上の利用可能なメディアノードの全ての組み合わせについて、伝送遅延の表１４１６を維持する。伝送遅延の表１４１６は、ネットワークメディアノードを介したデータパケットの通常の移動から導き出される遅延予測によってアップデートされ、遅延予測は、メディアサーバ１２２０Ｄ及び１２２０Ｆと、１２２０Ｆ及び１２２０Ｈと、１２２０Ｄ及び１２２０Ｈとの間の伝送遅延をモニタするストップウォッチ１４１５Ａ、１４１５Ｂ、及び１４１５Ｃによってそれぞれ記号的に図示されている。進行中のトラフィックが少ないかまたは稀な場合には、ＳＤＮＰネットワークはネットワークの健全性をチェックするためにテストパケットを利用する。テストパケットの一方法が図１２０に示されており、そこでは、シグナリングサーバがメディアサーバによって遅延が検知されるまで送られるデータパケットの長さ、または頻度が増加する一連のパケットのバーストを送信するように指示される。曲線１４１７によって示された負荷グラフの結果によって、特定の通信ルートまたは通信リンクの最大負荷が線１４１８によって示される最大負荷を超えないように、サイズまたはレートにおいて制限されるべきであることが示されている。
【０８１２】
ネットワーク、そのノードアドレス、伝送遅延に関する上述の情報が既に、ネームサーバ及びシグナリングサーバにおいて利用可能であることを前提とすると、図１２１で描写される３チャネル通信を用いることで、高ＱｏＳ通信を最善に実施することが可能である。図示されるように、シグナリングサーバ１３６５にホストされるシグナリングノードＳは、ノードツーノードのルーティングデータ１３７４Ｚ、ゾーン固有の数値シード９２９、及び、復号鍵１０３０を含む特徴あるＳＤＮＰパケット１４２０によって、メディアサーバ１１１８を通り、クライアント１３３５に到着するデータのルーティングを、完全にコントロールする。呼び出し（コール）を確立するときに、クライアントノードＣ２，１、この場合はタブレット３３のアプリケーション１３３５がネームサーバ１４０６上のネームサーバノードＮＳにコンタクトし、ネットワーク上に自らを登録し、最近接のシグナリングサーバを見つけて、それにより、呼び出しを開始するためシグナリングサーバ１３６５上のシグナリングノードＳにコンタクトする。その後、シグナリングノードＳはルーティングを管理し、メディアサーバはそれに従ってデータをルーティングし、ゾーンＵ２、Ｚ１及びＵ１それぞれのセキュリティ設定を変更する。
【０８１３】
ネームサーバは更新されたネットワークノードリスト１４１０を維持するという点で重要であるため、図１２２に示すように、ネームサーバ１４０８にホストされたネームサーバノードＮＳは、バックアップメディアサーバ１４２１で実行されているバックアップメディアサーバノードＮＳ２によって図示される１または複数の予備サーバと協力して動作する。クライアントノード及びメディアノードがネームサーバ１４０８に到達することができない場合には、情報のクエリが自動的かつシームレスにバックアップメディアサーバ１４２１に転送される。シグナリングサーバが呼び出しを実行するか、またはパケットをルーティングするための一定の利用可能性を保証するために、同一の予備を用いる方法が用いられる。図１２３に示すように、シグナリングサーバ１３６５にホストされるシグナリングノードＳはバックアップシグナリングサーバ１４２２にホストされ、シグナリングサーバ１３６５が落ちる、または攻撃された場合には、自動的に代役となるシグナリングノードＳ２を有している。
【０８１４】
本発明による３チャンネルＳＤＮＰパケットルーティングを用いた通信が図１２４Ａに示されており、そこではステップ１４３０Ａにおいて、デバイスまたは呼び出し側（発信者）がネットワークにログインする。このとき、タブレット３３のクライアントアプリケーション１３３５は自動的にネームサーバ１４０８にホストされたネームサーバノードＮＳにコンタクトし、自らを登録する。この動作はクライアントをネットワークにログインさせるために行われるため、必ずしも呼び出し（コール）を行う必要はない。登録のプロセスにおいて、ネームサーバノードＮＳはネームサーバリスト、すなわち、ＳＤＮＰネームサーバリスト１４３１、及び、任意でシグナリングサーバのリストを、クライアントアプリケーション１３３５に引き渡す。その情報によって、デバイスはＳＤＮＰコールを実行できる準備ができ、ＳＤＮＰコールの実行が可能となる。
【０８１５】
実際に呼び出しが行われる際の最初のステップでは、タブレット３３はネームサーバノードＮＳにＩＰパケット１４５０Ａを送り、ルーティング、及び、送信先または呼び出される人のコンタクト情報を要求する。コンタクト情報の要求、すなわちルートクエリ１４３１は、ＩＰアドレス、ＳＤＮＰアドレス、電話番号、ＵＲＬ、または他の通信識別子の形式で送信されてもよい。ステップ１４８０Ｃでは、ネームサーバ１４０８にホストされるネームサーバノードＮＳは、クライアントのＳＤＮＰアプリケーション１３３５に意図された受信者のアドレスを供給する。その返答は、ＴＣＰ転送レイヤを介したＩＰパケット１４５０Ｂによって転送される。他の実施形態では、クライアントはシグナリングサーバｈにルーティング情報を要求し、そのシグナリングサーバがネームサーバに情報を要求する。
【０８１６】
図１２４Ｂに示されるように、ステップ１４３０Ｄにおいて、クライアントは、最終的に、「ＩＰ  Ａｄｄｒ  ＴＢ」からシグナリングノードＳをホストしているシグナリングサーバ１３６５のＩＰアドレス、「ＩＰ  Ａｄｄｒ  Ｓ」へのＩＰパケット１４５０Ｃを用いて呼び出しを開始することができる。ＩＰパケット１４５０Ｃは受信者のアドレスを運搬するので、ＩＰパケット１４５０Ｃは通信レイヤとしてＴＣＰを用いることが好ましい。テーブル１４１６に示されるネットワークのノードツーノードの伝送遅延の知識に基づいて、シグナリングサーバＳはＳＤＮＰゲートウェイサーバへのラストマイル接続を含むＳＤＮＰネットワーク１１１４のネットワークルーティングを立案し、ステップ１４３０Ｅにおいて、このルーティング情報をＳＤＮＰクラウド１１１４に伝える。シグナリングサーバは各メディアノードに、受信するデータパケットの処理方法を指示するコマンド及び制御データパケットを送信する。制御及びコントロールデータパケットは、そのペイロードが、音声コンテンツを運搬するのではなく、新しい宛先の固有の識別タグ、ＳＤＮＰアドレス、またはＳＤＮＰ  ｚｉｐコードを持つパケットをルーティングする方法をメディアノードに通知する一連の指示が含むという点を除き、通常のデータパケットと同様である。あるいは、上述したように、変形実施形態としては、単一のシグナリングサーバによって全ルーティングが立案されるのではなく、一連のシグナリングサーバが、パケットがＳＤＮＰネットワークを通過するときに、連続的にルーティング計画の部分を立案するようにしてもよい。
【０８１７】
その後、ステップ１４３０Ｆにおいて、最初のパケットを、セキュリティを確保してファーストマイルに渡って送信させるために必要となるゲートウェイメディアノードアドレス、ゾーンＵ２の復号鍵１０３０、シード９２９及び他のセキュリティ設定を、タブレット３３のアプリケーション１３３５に送信する。
【０８１８】
タブレット３３がステップ１４３０Ｆにおいてセキュリティ設定を取得すると、図１２４Ｃに示すように、ＳＤＮＰパケット１４５０を用いて呼び出しを開始する。音波１３８４Ａによって表される音声は、マイクロホン１３８３Ａによってキャプチャされ、オーディオＣＯＤＥＣによってデジタル情報に変換されて、タブレット３３のアプリケーション１３３５に送られる。オーディオデータは、ＳＤＮＰヘッダーにアッセンブルされたアドレスルーティング、及び他の情報と結合することによって、アプリケーション１３３５は「ＩＰ  Ａｄｄｒ  ＴＢ」から「ＩＰ  Ａｄｄｒ  ＭＦ」へのファーストマイルルーティングのためのＳＤＮＰパケット１４５０Ｄを生成し、ゲートウェイメディアノードＭａ，ｆにパケットの転送を開始する。データパケットペイロード１４３２に埋め込まれたＳＤＮＰヘッダーには、緊急性、デリバリプリファレンス、セキュリティプロトコル、及び、データタイプ仕様を含んでいてもよい。ＳＤＮＰヘッダーはまた、ＳＤＮＰプリアンブルに加えて、ＭＡＣアドレス、発信元及び送信先のＩＰアドレス、及び、基本的にはＳＤＮＰヘッダーをカプセル化するペイロードに含まれるレイヤ２，３及び４の情報であるプロトコルフィールドを含み、全てのデータパケットにはＳＤＮＰヘッダーを有している。ＳＤＮＰパケット１４５０ＤはＩＰアドレスを用いて行われているため、実際のデータコンテンツがゾーンＵ２のセキュリティ情報を用いてスクランブル化及び暗号化され、データを含むＳＤＮＰペイロードに含まれたＳＤＮＰヘッダーがゾーンＵ２のセキュリティを確保した動的なネットワークプロトコルに従って特別にフォーマットされていることを除いて、パケットの転送は従来のインターネットのトラフィックと同様である。
【０８１９】
ステップ１４３０Ｈは、図１２４Ｃにも示すように、メディアサーバ１２２０ＦにホストされたゲートウェイメディアノードＭａ，ｆからＳＤＮＰクラウドのメディアサーバ１２２０ＪにホストされたメディアノードＭａ，ｊにルーティングされるデータパケット１４５０Ｅを示している。ＩＰデータパケット１４５０Ｄのファーストマイルルーティングとは異なり、ＳＤＮＰパケット１４５０Ｄのこの最初のクラウド内のホップは、インターネットでは認識できないＳＤＮＰアドレス「ＳＤＮＰ  Ａｄｄｒ  ＭＦ」及び「ＳＤＮＰ  Ａｄｄｒ  ＭＪ」を用いて行われる。さらに、ペイロード１４３３は、ＳＤＮＰゾーンＺ１のセキュリティ設定を用いて暗号化され、データをカプセル化するそのＺ１  ＳＤＮＰパケットに含まれるＳＤＮＰヘッダーはまた、ゾーンＺ１の共有秘密に従って、特別にフォーマットされる。セキュリティを目的として、ゾーンＺ１のセキュリティ設定は、ゾーンＵ２に伝えられることはなく、ゾーンＵ２のセキュリティ設定もまたゾーンＺ１に伝えられることもない。
【０８２０】
図１２４Ｄに示すように、ステップ１４３０Ｊにおいて、データパケット１４５０Ｆはセキュリティを確保したＳＤＮＰクラウド外のメディアサーバ１２２０ＤにホストされたゲートウェイメディアノードＭａ，ｄから、携帯電話３２上のアプリケーション１３３５によってホストされたクライアントノードＣ１，１にルーティングされる。このＩＰパケット１４５０Ｆのラストマイルルーティングは、インターネット上で認識できるＩＰアドレス「ＩＰ  Ａｄｄｒ  ＭＤ」及び「ＩＰ  Ａｄｄｒ  ＣＰ」を用いて行われるが、ペイロード１４３４はＳＤＮＰのゾーンＵ１の共有秘密を用いて暗号化され、ペイロード１４３４に含まれるＳＤＮＰヘッダーは共有秘密に従って特別にフォーマットされる。ペイロード１４３４のデータコンテンツを携帯電話３２のアプリケーション１３３５に転送するときに、スピーカ１３８８Ｂはデジタルコードを、オーディオＣＯＤＥＣ（図示せず）を用いて音波１３８４Ａに変換する。
【０８２１】
入力されたＳＤＮＰパケット１４５０Ｆを携帯電話３２のアプリケーションが受け取ったときに、データパケットがＳＤＮＰクラウドを離脱した最後のメディアノードＭａ、ｄだけをそのアドレスから見ることができる。ＳＤＮＰペイロードが発信者に関する情報を運搬していないか、または、シグナリングノードがこの情報を供給しないため、呼び出し（コール）を受け取った、またはデータを受信した者はその起源または発生源を追跡することができない。この「匿名」の通信及び追跡不可能なデータ配信は、ＳＤＮＰ通信の独特な側面であり、本発明によるシングルホップの動的なルーティングに特有な成果である。ＳＤＮＰネットワークは発信者（呼び出し側）が希望したときのみ、発信者または発信元の情報を転送し、それ以外は利用可能な情報を転送しない−よって、匿名性は、ＳＤＮＰパケット転送にとって、デフォルトの状態である。事実、送信側のクライアントのＳＤＮＰアプリケーションが、呼び出される側、または、メッセージを受信する者に、特別な送信者から情報が届いたことを伝えるメッセージを意図して送信する必要がある。シグナリングサーバは発信者及びパケットルーティングを知っているため、発信者の身元を一切明らかにすることなく、応答データパケットのためのルートを決定することができる。
【０８２２】
代わりに、シグナリングサーバは偽りや化身の身元を明らかにするか、または、発信者（呼び出し側）の身元へのアクセスを、ごく親しい友人、または、認証された接触先にのみ明らかにするように制限する。匿名性は、プレイヤが、特に、知らない相手と、本当の身元を共有する必要のない、ゲームのようなアプリケーションにおいて奥に有効である。匿名の通信が必要となる別の形態としては、クライアントにとって、機械、ガジェット、及びデバイスを、敵対するデバイス、諜報員、または、サイバー犯罪者のデバイスと潜在的になり得るものに、コンタクト及び個人情報を引き渡しさせたくないマシン・ツー・マシンまたはＭ２Ｍ、ＩｏＴまたはモノのインターネット、車車間またはＶ２Ｖ、路車間またはＶ２Ｘ通信がある。考えすぎるユーザにとっては、声を電子的に偽装することもできるので、声でのコミュニケーションでさえも匿名で行うことができる。
【０８２３】
図１２４Ｄのステップ１４３０Ｋに示すように、入力されたパケットへの応答として、携帯電話３２にホストされるアプリケーション１３３５は、シグナリングサーバ１３６５にホストされたシグナリングノードＳにＩＰパケット１４５０Ｇを送信する。出力されるパケットには、応答用のルーティング情報が必要である。一実施形態では、シグナリングノードＳは、次に、呼び出された者に発信者（呼び出し側）の真の身元を提供し、それによって、呼び出された者のＳＤＮＰアプリケーションのプログラムは、両者を接続するために用いられた全接続プロセス、すなわち、ネームサーバに接続し、それらのＳＤＮＰまたはＩＰアドレスを見つけ、シグナリングサーバに接続し、応答をルーティングする等を逆向きに繰り返すことで応答するようにしてもよい。他の実施形態では、シグナリングサーバはパケットが送信された場所を知っており、発信者（呼び出し側）にコンタクト情報を開示することなく、送られるべき返信のパケットのルートを設計することができる。
【０８２４】
使用された返信方法に依らず、図１２４Ｅのステップ１４３０Ｌにおいて、返信ＩＰパケットはマイクロホン１３８４Ｂによってキャプチャされ、アナログシグナルに変換された後、オーディオＣＯＤＥＣ（図示せず）によってデジタルコードに変換された音波１３８４Ｂを含むオーディオデータと結合される。一度処理され、スクランブル化され、暗号化され、パッケージ化されたオーディオコンテンツは、「ＩＰ  Ａｄｄｒ  ＣＰ」から「ＩＰ  Ａｄｄｒ  ＭＦ」のＳＤＮＰゲートウェイメディアノードにルーティングされるＩＰパケット１４５０Ｈのセキュリティを確保したペイロード１４３５となる。これらのＩＰアドレスは、ペイロード１４３５がＳＤＮＰゾーンＵ１のセキュリティ設定を用いてスクランブル化され、かつ暗号化されたコンテンツを含み、ペイロード１４３５に含まれるＳＤＮＰヘッダーがゾーンＵ１の共有秘密に従って特別にフォーマットされている点を除いて、インターネット上で認識可能である。
【０８２５】
ステップ１４３０Ｍにおいて、返信用のパケットはＳＤＮＰクラウド内においていかなるノードツーノードのホップを実行することなく、セキュリティを確保したＳＤＮＰから出る。この場合、メディアサーバ１２２０ＦにホストされたゲートウェイメディアノードＭａ，ｆはＳＤＮＰパケット１４５０ＨをゾーンＺ１固有のペイロード１４３５からゾーンＵ１固有のペイロード１４３６に変換し、ＩＰアドレス「ＩＰ  Ａｄｄｒ  ＭＦ」及び「ＩＰ  Ａｄｄｒ  ＴＢ」を用いて、ＩＰパケット１４５０Ｊをタブレット３３にホストされたクライアントノードＣ２，１に移動させる。このＩＰパケット１４５０Ｊのラストマイルルーティングは、インターネット上で認識可能なＩＰアドレス「ＩＰ  Ａｄｄｒ  ＭＦ」及び「ＩＰ  Ａｄｄｒ  ＴＢ」を用いて行われるが、ペイロード１４３６はＳＤＮＰゾーンＵ２のセキュリティ設定を用いされて暗号化され、ペイロード１４３６に含まれるＳＤＮＰヘッダーはゾーンＵ２のセキュリティを確保した動的ネットワークプロトコルに従って特別にフォーマットされている。携帯電話３３によって受信されると、ＳＤＮＰ対応のアプリケーション１３３５は次にペイロードデータを引き出し、復号及びアンスクランブル化した後にデジタルコードはオーディオＣＯＤＥＣ（図示せず）によって、スピーカ１３８８Ａから発せられる音声１３８４Ｂに変換する。ステップ１４３０Ｋ〜１４３０Ｍのステップに示されるシーケンスにおいて、通信に一つのゲートウェイメディアノードのみが関与しているため、「ファーストマイル」の直後に「ラストマイル」が続いている。
【０８２６】
本発明の３チャネル通信を用いた呼び出しシーケンスの概要が図１２５Ａに示されており、そこでは、ＩＰパケット１４５０Ａ及び１４５０Ｂに基づいたＴＣＰ転送を用いて、タブレット３３上で実行されるアプリケーション１３３５及びネームサーバノードＮＳは通信を確立し、そこではコンタクト情報または接続された者のＩＰアドレスを一度受信すると、タブレット３３はＴＣＰ転送ベースのＩＰパケット１４５０Ｃを用いて、呼び出し（コールを行い）、参加者とのセッションを確立するように、シグナリングノードＳに指示する。その後、音波１３８４Ａはキャプチャされ、パッケージされ、ファーストマイル及びラストマイルのためにＩＰパケット１４５０Ｄ及び１４５０Ｆに、ＳＤＮＰクラウド上の転送のためにＳＤＮＰパケット１４５０Ｅに、それぞれ結合されて、それぞれの行き先にルーティングされる。タブレット３３からゲートウェイメディアノードＭａ，ｆ、第２ゲートウェイマディアノードＭａ，ｄから携帯電話３２へのルーティングの結果が図１２５Ｂに示されている。ノードツーノードのホップ１４５３Ｂを除く全ての伝送において、ＳＤＮＰアドレスではなくＩＰアドレスが使用されている。このシーケンスは、図１２５Ｂの下部のフローチャートに示されている。
【０８２７】
返信シーケンスが図１２６Ａに示されており、ＩＰパケット１４５２Ｇを用いた携帯電話３２のアプリケーション１３３５は、シグナリングノードＳに返信パケットをタブレット３２に送るように要求し、ゲートウェイメディアノードはＩＰパケット１４５２Ｈ及び１４５２Ｊを用いて、その音声の返信をルーティングする。パケットの伝送の結果は、図１２６Ｂに示すようにほとんどが極めて短く、なぜなら、伝送が、発信元及び送信先のＩＰアドレスを上書きし、データパケットのセキュリティ設定をゾーンＵ１からゾーンＵ２に変換することのみによって、セキュリティを向上さえるゲートウェイメディアノードＭａ，ｆを介するルーティングを除いて、全てインターネット上で行われるからである。その例として、ＳＤＮＰクラウド内のノードツーノードのホップは行われないが、それは、シングルノード、この場合はメディアサーバ１２２０Ｆ内外のデータパケットの追跡及び関連付けが容易になるという欠点がある。
【０８２８】
そのような場合には、図１２６Ｃに示すように、サイバー犯罪者が間違いを引き起こし易くなるように、データの転送パスにダミーノードを挿入することが有益である。その場合には、ルーティングはアドレス「ＩＰ  Ａｄｄｒ  ＭＦ」と同じサーバ、または、同じサーバファームのどちらかにセカンドサーバアドレス「ＩＰ  Ａｄｄｒ  ＭＦ２」を含むように変更され、入力されるＩＰパケット１４５２Ｈは「ＩＰ  Ａｄｄｒ  ＣＰ」から「ＩＰ  Ａｄｄｒ  ＭＦ」に変更され、「ＩＰ  Ａｄｄｒ  ＭＦ」から「ＩＰ  Ａｄｄｒ  ＭＦ２」への中間パケット１４５２Ｋを挿入され、出力されるＩＰパケット１４６２Ｌは「ＩＰ  Ａｄｄｒ  ＭＦ２」から「ＩＰ  Ａｄｄｒ  ＴＢ」に変更され、また、ルーティングはパケット１４５２Ｋを「ＩＰ  Ａｄｄｒ  ＭＦ」から「ＩＰ  Ａｄｄｒ  ＭＦ２」を「干渉しない」か、または、「ＳＤＮＰ  Ａｄｄｒ  ＭＦ」から「ＳＤＮＰ  Ａｄｄｒ  ＭＦ２」へのパケットを生成してもよい。変換処理中にポートの割り当てを変更してもよい。その場合は、データパケット１４５２Ｋがサーバまたはサーバファームから離れない、すなわち、内部において引き渡し及び移動をしている場合には、そのアドレスがインターネットのＩＰアドレスか、ＮＡＴアドレスか、またはＳＤＮＰアドレスかは問題ではない。
【０８２９】
［ペイロード「フィールド」］
ゲートウェイメディアノードを介してＳＤＮＰクライアントに入る入力データパケットのペイロード処理が、図１２７に図示されており、そこでは、入力されたＩＰパケットが最初にアンパックされて、暗号文１３９３を含む暗号化ペイロードが抽出され、その後、暗号化が行われたゾーンの適切なキーと、必要に応じて暗号化が行われた時間またはステートとを用いて復号される。得られたペイロードはプレーンテキスト１３９２を含み、もしプレーンテキスト１３９２がスクランブル化されていない場合には、適切なゾーン及びステートのセキュリティ設定を用いて、再びアンスクランブルされなければならない。次に、ＳＤＮＰプリアンブルを除去することによって、さまざまなフィールド、今回は、対応するヘッダーＨｄｒ  Ｊを備えたヘッダー９と、ヘッダーＨｄｒＪに対応するファンクフィールドとを備えたコンテンツデータパケット１３９１が現れる。
【０８３０】
別の実施形態では、図１２７に示すように、入力されるＩＰパケット１４６０が復号され、アンスクランブル化され、そのプリアンブルが除去され、解析されて、２つの有効なデータフィールド−対応するヘッダーＨｄｒ６を備えたフィールド６、及び対応するヘッダーＨｄｒ８を備えたフィールド８が生成される。これらのパケットは後に、異なるフィールドとマージされて、適切に新しいＩＰパケット及びＳＤＮＰパケットを生成してもよい。
【０８３１】
ネストされたフィールドのデータ構造を使用して、独自のヘッダーを持つ複数のフィールドのデータを１つのパケットのペイロードにまとめることは、複数のボックスを大きなボックスの中に配置するのと同じである。データをＳＤＮＰにおいて再パッキングするプロセス、すなわち、ボックスを開け、小さい箱を取り出し、それらを新しいボックスに収める、というプロセスでは、データセグメントのルーティングにおいて多くの選択肢が含まれる。パケットのロスを避けるために、同じ起源を有するデータセグメントは、他のデータ、会話、声名のデータセグメントと同じフィールドに混合されず、ヘッダーによって見分けることができるか、または、送信者によって整理されたように、独自に分離されたままであることが好ましい。例えば、図１２８に示すように、ＳＤＮＰまたはＩＰデータパケット（図示せず）から入力されるペイロード１４６１及び１３９３は、おそらく異なるステートまたはゾーンからの復号鍵を用いた復号処理１０３２によって復号され、プレーンテキストのペイロード１３９２及び１４６２となる。混合処理１０６１では、ペイロード１３９２及び１４６２は結合され、解析後、３つのフィールドーパケット１４６４を含むフィールド６、パケット１４６３を含むフィールド８、及び、パケット１４５９を含むフィールド９を持つコンテンツを生成し、それらはまとめてデータコンテンツ１４７０を形成する。３つのパケット１４５９、１４６３、及び１４６４は、独自にストアされるか、または、一つの長いパケットに併合されてもよい。ＳＤＮＰヘッダーによって、運搬のために使用されたＳＤＮＰまたはＩＰパケットから取り外された場合であっても、各データのフィールドは容易に見分けることができる。集合してデータコンテンツ１４７０はその特定の瞬間にメディアノードにあるデータを表す。そのプロセスは動的であり、パケットがＳＤＮＰネットワークを通過するときに、データが絶えず変化している。上述した時間の経過後、入力されるデータをさらに待つ必要がなくなると、データコンテンツ１４７０は分割処理１０５７によって新しい組み合わせに分割され、それによって、ペイロード１４７２は３つのフィールドそれぞれからのデータセグメントの一部、すなわち、フィールド９からのデータセグメント９Ｃ、９Ｄ、フィールド８からのデータセグメント８Ｂ、及びフィールド６からのデータセグメント６Ｃ、６Ｄを含む。これらのフィールドの数はペイロード１４７２に引き継がれる。プレーンテキストは必要に応じてスクランブル化され、その後、そのときのステート及びそのときのゾーンにおける暗号化処理１０２６によって暗号化され、ペイロード１４７４が生成され、ＳＤＮＰパケットまたはＩＰパケットにアッセンブルされて、各方向へルーティング可能となる。
【０８３２】
分割処理１０５７はまた、３つのフィールド、すなわちデータセグメント９Ｂ、９Ａ、９Ｆ及び９Ｅを含むフィールド９、データセグメント８Ｆのみを含むフィールド８、及びデータセグメント６Ｆを含むフィールド６のデータセグメントを含む第２ペイロード１４７１を生成する。
【０８３３】
図示するように、ペイロード１４７１及び１４７２の全てのフィールドにはまた、１つまたは複数のジャンクデータセグメントが含まれる。再スクランブルが実行されない場合には、その後、スクランブルされたペイロード１４７１はそのときの状態またはそのときのゾーンにおける暗号化処理１０２６を用いて暗号化されて、ペイロード１４７３が生成され、ＳＤＮＰパケットまたはＩＰパケットにアッセンブル可能となる。同様に、ペイロード１４７２は、そのときのステートまたはそのときのゾーンにおける暗号化処理１０２６を用いて暗号化されて、ペイロード１４７４が生成され、ＳＤＮＰパケットまたはＩＰパケットにアッセンブル可能となる。ペイロード１４７３はペイロード１４７４とは異なるメディアノードにルーティングされる。この図では、分かり易くするため、ＩＰまたはＳＤＮＰアドレスとデータパケットの残りとが、図から除外されている。
【０８３４】
再パケット化の動的性質が図１２９Ａに示されており、時間ｔ４及び対応するステート９９４において、フィールドＦｌｄ９１及びＦｌｄ９２からのデータセグメントデータを含むペイロード１４８３Ａ及び１４８３Ｂがそれぞれ混合処理１０６１を使用して混合され、ハイブリッドペイロード１４８４Ａを形成する。時間ｔ５及び対応するステート９９５において、混合処理１０６１は、ハイブリッドペイロード１４８４Ａを、Ｆｌｄ９３のためのデータを含むペイロード１４８４Ｂと組み合わせて、ヘッダーＨｄｒ９１が付されたフィールドにスクランブルされた順序で配置されたデータセグメント９Ｂ、９Ａ、９Ｆ、及び９Ｅと、Ｈｄｒ９２が付されたフィールド９２にデータセグメント９Ｃと、Ｈｄｒ９３が付されたフィールド９３にデータセグメント９Ｄを含む長いハイブリッドペイロード１４８５Ａを生成する。時間ｔｆ、及びステート９９９において、携帯電話３２によってホストされるアプリケーション１３３５は、ハイブリッドマルチフィールドペイロード１４８５Ａを処理して再アッセンブル化し、データセグメント９Ａ〜９Ｆが順序通り配置されたオリジナルデータシーケンス１４８９Ａを生成する。
【０８３５】
本明細書で上述したいくつかの例では、他のデータセグメントまたはデータフィールドの到着を待っている間に、一部のデータセグメントまたはフィールドを一時的にストアする必要がある場合がある。このようなストア処理は、内部のメディアノードまたはゲートウェイメディアノードを含むＳＤＮＰネットワーク内のいかなる所与のノード内で行われてもよい。あるいは、ストア処理が携帯電話、タブレット、ノートブック等にホストされたクライアントアプリケーションにおいて行われてもよい。そのような例が図１２９Ｂに示されており、時間ｔ４において、フィールド９１及び９２からのデータセグメントを含むペイロード１４８３Ａ及び１４８３Ｂが混合処理１０６１によって混合されて、ハイブリッドペイロード１４８４Ａが生成される。この新しいペイロードは、そのコンポーネントフィールド１４８５Ａ及び１４８５Ｂとして、または、長いハイブリッドペイロード１４８４Ａとして、ネットワークキャッシュ１５５０に静的に保持される。最後に、ペイロード１４８５Ｄが到着する時に、ネットワークキャッシュ１５５０のコンテンツは混合処理１０６１に開放され、時間ｔ６においてフィールドＦｌｄ９１、Ｆｌｄ９２、及びＦｌｄ９３に渡って分割されたデータセグメント９Ａから９Ｆを含む、対応するハイブリッドペイロード１４８６Ａが生成される。時間ｔｆ及びステート９９９において、携帯電話３２にホストされたアプリケーション１３３５はハイブリッドマルチフィールドペイロード１４８６Ａを処理して、再アッセンブル化し、データセグメント９Ａ〜９Ｆが順序通り配置されたオリジナルデータシーケンス１４８９Ａを生成する。
【０８３６】
本発明の別の実施形態では、携帯電話３２上のアプリケーション１３３５内、すなわち、ＳＤＮＰクラウドではなく、クライアントのアプリケーション内で、フィールドの最終的なアッセンブリ及びキャッシングが行われる。図１２９Ｃに示すように、時間ｔ４において、フィールド９１及び９２からのデータセグメントを含むペイロード１４８３Ａ及び１４８３Ｂは混合処理１０６１によって混合されて、ハイブリッドペイロード１４８４Ａを生成し、ハイブリッドペイロード１４８４Ａは直ちに携帯電話３２のアプリケーション１３３５に転送され、ペイロード１４８４Ｃ及び１４８４Ｄとしてセキュリティを確保したクライアントアプリケーションキャッシュ１５５１に保持される。ペイロード１４８５Ｅが時間ｔ４に到着し、時間ｔ５において、対応するステート９９５と共に、携帯電話３２のアプリケーション１３３５に直ちに転送されて、次に、時間ｔｆにおいて、アプリケーション１３３５は順番に配置されたデータセグメント９Ａから９Ｆを含むオリジナルデータパケット１４８４に再アッセンブルする。
【０８３７】
図１２９Ｄには、クライアントによるＳＤＮＰパケットの再構成を要約したフローチャートが示されており、１つまたは複数の暗号文ブロックを含む単一チャネルのデータパケット１４８０が復号処理１０３２によって復号されてマルチフィールドプレーンテキスト１４９１を生成し、マルチフィールドプレーンテキスト１４９１はアンスクランブル化処理９２８によってアンスクランブルされてマルチフィールドプレーンテキストストリング１４９２Ａ、１４９２Ｂ及び１４９２Ｃを生成し、その後、パース処理１０８７及びデジャンキング（図示せず）を含む混合処理１０６１によってマージされて、オリジナルデータパケット１４９３が生成される。最終的に、データパケット１４９３はオーディオＣＯＤＥＣ１３８５によって音または音声１３８４Ａに変換される。
【０８３８】
［コマンド及び制御］
本発明によるＳＤＮＰ通信の最後の要素である、シグナリングノードによるメディアノードのコマンド及び制御は、セキュリティまたは音声の忠実度を犠牲にすることなく、高いＱｏＳ、及びリアルタイムパケットの小さな伝送遅延を保証するときの重要な要素である。クライアント、会話、及びデータパケットのルーティング及び優先度の処理を決定するために使用される基本的な決定木の例が図１３０に示されている。示されるように、タブレット３３に表されるクライアントノードＣ２，１は、シグナリングサーバ１３６５上のシグナリングノードＳに呼び出し（コール）を実行することを要求すると、呼び出しする側がコンタクトしたい人だけではなく、呼び出し（コール）の性質、例えば、それが音声コール、ビデオコールなどであるかどうか、その緊急性、例えば、通常のベストエフォート、保証された伝送、ＶＩＰ伝送等の好ましい伝送方法を、コマンド及び制御パケットにおいて指定する。シグナリングノードＳは、その要求、そのクライアントの経営状態、支払履歴、または、任意の数のビジネス上の考慮事項に基づく「伝送方法決定」（ステップ１５００）を用いて、伝送要求１４９９Ａを解釈する。いくつかの結果が生じることがある。顧客がＶＩＰであるか、または、その出来高または収益のポテンシャルに基づいて、好ましい顧客であると判断される場合には、その通信セッションは、ＶＩＰとタグ付される。ＶＩＰ伝送はまた、本明細書で後ほど記述されるレースルーティングと呼ばれる特別な性能向上方法を利用してもよい。
【０８３９】
伝送時にファイルが保証されることが最も重要な要素である場合には、パケット保証伝送、すなわち、パケットの複数の予備のコピーを送信し、リアルタイムのパフォーマンスが犠牲になったとしても、パケットのロスのリスクを最小にすべく、ノードツーノードのホップの数を最小化する方法を採用するとよい。それ以外の場合には、通常のＳＤＮＰルーティングが採用されるとよい。図１３０に示すように、呼び出される（コールされる）者のアドレス及び電話番号１４９９Ｂに基づいて行われる伝送方法の決定（ステップ１５００）の結果が、「ルーティングオプションの決定及びランク付け」（ステップ１５０１）の処理に影響を及ぼすルーティングを管理するために用いられる。一度、ルートオプションがランク付けされると、緊急性要求１４９９Ｃ、及び、ラッシュ料金等の特別料金が、通常、優先、緊急、及び、オーディオ品質が犠牲にならない条件でより低コストの「遅い（snail）」等のオプションを含む出力を行う「パケット緊急度の選択」に基づいて決定される。
【０８４０】
ルーティングオプション（ステップ１５０１）、及び、緊急性選択（ステップ１５０２）を組み合わせることによって、シグナリングノードは各パケット、フレーム、またはデータセグメントにとって最善のルーティングの選択（ステップ１５０３）を行うことができる。選択されたルートが複数のゾーンを通過する場合には、各ゾーンに対する様々なセキュリティ設定（ステップ１５０４）が含まれる。シード、復号鍵１０３０、及び、他のセキュリティに関する情報を含むこのデータはメッシュネットワークの伝送において、ノード毎のルーティング、分割、及び、混合の際に使用され、ＳＤＮＰゾーンＵ２プリアンブル１５０５Ａ、ＳＤＮＰゾーンＵ１プロアンブル１５０５Ｃ、及び、まとめてプリアンブル１５０５Ｂと表されるＳＤＮＰ内のメッシュネットワークの伝送ための複数のＳＤＮＰゾーンＺ１プロアンブルから成り、ファースト及びラストマイルのＩＰパケットを含む全てのデータパケットのプリアンブルを生成するために用いされる。プリアンブル１５０５Ａ、１５０５Ｂ、１５０５Ｃ及びその他のプリアンブルは、その後、ＩＰアドレス及びＳＤＮＰと結合されて、様々なＩＰ（インターネットプロトコル）及びＳＤＮＰパケットを生成する。このようなルーティングの指示には、タブレット３３に送信され、クライアントノードＣ２，１から呼び出しまたは通信のためのルーティングを記述するＩＰパケット１５０６Ａと、メディアサーバ１１１８に送信され、ＳＤＮＰクラウド上のメディアノードＭｉ，ｊ間の呼び出しまたは通信のルーティングに使用される複数のＳＤＮＰパケット１５０６Ｂと、携帯電話３２に送信され、ＳＤＮＰゲートウェイノードから携帯電話３２に示されるクライアントノードＣ１，１への呼び出しまたは通信のためのルーティングを記述するＩＰパケット１５０６Ｃとが含まれる。このように、メディアノードは、シグナリングサーバから受け取る指示に基づいて、入力されるペイロードを指示する必要がなく、インターネットベースのＯＯＴ通信で用いられるルーティング手順のメカニズムとは全く逆である。
【０８４１】
例えば、先に述べたように、インターネットルータは、パケットを最も遅い伝送遅延または最短遅延時間でルーティングすることによるクライアントの利益に関心を持つ必要のない多くの異なるＩＳＰ及び電話会社によってホストされている。実際、本発明によるＳＤＮＰ通信でなければ、インターネットルータはリアルタイムオーディオまたはビデオを運搬するデータパケットと、ジャンクメールとを区別することさえできない。リアルタイム通信において、遅延は致命的である。数百ミリ秒の遅延はＱｏＳに著しく影響を与え、５００ミリ秒を超える遅延は、同期した音声会話を維持することが極めて困難となる。このような、また、他の様々な理由によって、本明細書に記載されたＳＤＮＰネットワークでは伝送遅延が絶えずモニタされ、各リアルタイムデータパケットが伝送されるときに、各リアルタイムデータパケットに対して最善のルートが選択される。
【０８４２】
図１３１に示されるように、「ＩＰ  Ａｄｄｒ  ＴＢ」、すなわち、タブレット３３から、「ＩＰ  Ａｄｄｒ  ＣＰ」、すなわち、携帯電話３２へルーティングが要求されたときには、採用され得るルーティングが多数存在する。各ノードツーノードの伝送遅延は、絶えず変化し、追跡され、かつ、伝送遅延テーブル１４１６に記録されている。さらに、呼び出しを最も少ない数のメディアサーバを介するようにルーティングした場合であっても、必ずしも、最も遅延が小さな通信となるわけではない。例えば、呼び出しをクライアントノードＣ２，１からメディアノードＭａ，ｆへ、その後、クライアントノードＣ２，１へのルーティングした場合、全伝送遅延は５５＋６０＝１１５ミリ秒となるのに対して、影付きのパス、及び、図１３２Ａに示すように、メディアノードＭａ，ｆからメディアノードＣ１，１へ直接伝送する代わりに、メディアノードＭａ，ｆを介する場合には、全伝送遅延は５５＋１５＋１５＝８５ミリ秒となり、追加のメディアノードを介して伝送された場合であっても２０％早くなる。ＳＤＮＰ動的ルーティングにおいて、シグナリングサーバは最も遅延を小さくするだけではなく、よりセキュリティを高めるため、メッシュ伝送を用いてデータを断片化し、コンテンツを送信するのに、パスの最適な組み合わせを常に検討する。図示するように、図１３２に示されているメディアノードＭａ，ｈを介した影付きのパスは遅延時間が短く、累積される伝送遅延が２５＋２０＋１５＋１５＋１５＝１０５ミリ秒となる―よって、より多くのホップを含むにも関わらず、他の場合に比べて優れている。
【０８４３】
コマンド及び制御の他の重要な機能としては、パケットの再構成を指示することがある。この機能は、クラウド上のＳＤＮＰパケットの混合、分割、及び再ルーティングのキーとなる。図１３２Ｃは、シグナリングノードＳがメディアノード、この例では、ホスティングメディアノードＭａ，ｑと通信し、特定のノードへのデータパケットの出入りを管理する方法の一実施形態を示している。入力されるＳＤＮＰパケットとそのペイロードフレームに対する全ての関連するセキュリティ設定１５０４に関する全ての知識を用いて、コマンド及び制御データパケット１４９６に基づいて、シグナリングノードＳはメディアノードＭａ，ｑに入力されるＳＤＮＰパケット１４９７Ａを処理して出力するデータパケット１４９７Ｂを生成する方法を指示する。図示するように、複数のフレームを含むペイロード１５１１Ａを抽出した後、ＤＵＭ操作１２１０において、メディアノードＭａ、ｑは、それぞれが生成されたときに用いられたステート情報９２０、シード９２９、及び復号鍵１０３０に基づいて、ペイロード１５１１Ａから全フレーム及び他の入力されたパケットのペイロードから全フレームを復号し、かつ、アンスクランブルし、その後、すべての受信したフィールドを混合して、この場合は、集合的にはデータフレーム１５１２として、また、個別的にはデータフレーム１、６、９、１２、２３、及び３１としてそれぞれ示される全ての独立したフレームによって示されるロングパケットを生成する。
【０８４４】
次に、このデータはＳＤＮＰ  ｚｉｐソータ１３１０に送られ、シグナリングノードＳによって既に提供されたＳＤＮＰパケット１５０６Ｂ、または、コマンド及び制御パケット１４９５Ａにおいて特定された呼び出し（コール）情報への応答としてのＳＤＮＰパケットにおけるルーティング情報に全て従って、フレームはＳＤＮＰクラウドにおいて次のホップが同じ宛先であるフレームのグループにソートされる。次に、ＳＳＥ処理１２１３によって、そのフレームは現在のステート９２０の情報、アップデートされたシード９２９、及び新しい復号鍵１０３０を用いて、同じ宛先を持つグループに分割される。前のペイロード１５１１Ａがフレーム１、６、及び９のデータを含んでいたのに対して、フレーム１、９、及び２３のデータを含むそのような１つのペイロード、ペイロード１５１１ＢはメディアノードＭａ、ｊに宛てられている。したがって、シグナリングノードＳによって指示されるように、メディアノードＭａ、ｑはフレーム６のデータを除去し、それをフレーム２３のデータと置き換えて、ペイロード１５１１Ｂを生成し、出力されるＳＤＮＰパケット１４８７Ｂにアッセンブルして、メディアノードＭａ、ｊに対して送信する。
【０８４５】
７層のＯＳＩモデルを用いると、図１３３Ａに示すＳＤＮＰ通信はセキュリティを確保したゲートウェイ間のトンネル１５２２を示し、２つのクライアントのみ、この場合は、タブレット３３及び携帯電話３２のみでホストされる個別のＳＤＮＰアプリケーション１３３５間でのエンドツーエンドのセキュリティを確保した通信１５２９をサポートする。本発明の実施形態では、物理層及びデータリンク層１５２５は、ＳＤＮＰ動作を実現するためのいかなる特別な設計も必要としない。しかし、ネットワーク層３は、ＳＤＮＰがセキュリティ、遅延を短くする、また、最善のＱｏＳを実現するため、ＳＤＮＰクラウドにおいて各シングルホップのルーティングを制御するため、各インターネットと完全に異なる動作をする。トランスポート層４は、制御にＴＣＰを使い、リアルタイムデータに拡張されたバージョンのＵＤＰを使用しているため、ＳＤＮＰパケット、ペイロード、またはフレームが何であるか、及び、どのような優先順位であるかの情報に基づいて、その方法及び優先順位を変更するコンテキスト伝送が採用されている。セッション層５はＳＤＮＰ動作においても特有なものであり、コマンド及び制御情報−メディアチャネル上またはシングルチャネル上を伝送されるコマンド及びコントロールパケットのいずれかを介して通信される―によって、ルーティング、品質、伝送状態、及び優先度を含む、全てのセッションの管理が決定される。
【０８４６】
ＳＤＮＰ通信では、プレゼンテーション層６はクライアント独自の暗号化とは無関係なネットワークのホップ毎の暗号化及びスクランブル化を実行する。
【０８４７】
アプリケーション層７は、ＳＤＮＰ通信では、いかなるＳＤＮＰ対応のアプリケーションも断片化されたデータを混合し、リストアし、断片化されたペイロードが到着しない場合に、すべきことを知ることができなければならないため特有なものであり、コンテキスト伝送が採用されている。
【０８４８】
開示されたＳＤＮＰネットワークの上述のセキュリティ及びパフォーマンスは全てクライアント暗号化及びプライベートキーマネジメントを使うことなく達成することができる。クライアントのアプリケーションもまた、例えば民間会社のセキュリティによって、暗号化されている場合には、ＶＰＮ的なトンネリングがデータ断片化と共に実行されることによって、図１３３Ｂに示すような、断片化されたトンネリングされたデータ、プレゼンテーション層６及びアプリケーション層７のハイブリッドによる、新しいタイプのセキュリティを確保した通信が実現される。
【０８４９】
本発明によるＳＤＮＰ通信特有な一側面は、図１３４に示す「レースルーティング」に例示される。ＳＤＮＰネットワークが断片化されたデータのメッシュ伝送上に作り上げられているため、メッシュネットワークを介して、断片化されたデータフィールドを２重または３重に送ることによってオーバーヘッドが生じない。セキュリティを犠牲にすることなく、概念上は可能な限り遅延を最小とするために、ペイロードはサブパケットに分割され、２つの補完フレームに編成される。レースルーティングにおいて、第１のフレームが１つのルートで、第２のフレームが他のルートを介して送信されるのではなく、各フレームの複数のコピーが異なるルートを介して送信され、宛先に最初に到着したフレームが使用される。後に到着したコピーは単に破棄される。例えば、図示するように、フレーム９１は、２つの経路、すなわち経路１５４０及び１５４１を介して送られ、一方、フレーム９２もまた複数の経路、すなわち経路１５４１及び１５４３によって送られる。フレーム９１ペイロード及びフレーム９２ペイロードを最初に運搬する経路の組み合わせがどのような場合であっても、使用される組み合わせはその組み合わせである。
【０８５０】
［要約］
上記の開示によって、本発明によるＳＤＮＰ通信によって達成される性能、遅延、品質、セキュリティ、及びプライバシーにおける多数の利点が説明されている。表１３５では、開示されたセキュリティを確保した動的ネットワーク及びプロトコル（ＳＤＮＰ）と、Ｏｖｅｒ−ｔｈｅ−ｔｏｐまたはＯＴＴキャリアとの、仮想プライベートネットワークまたはＶＰＮとの、及び、ピアツーピアまたはＰＴＰネットワークとの比較が示されている。表に示すように、すべての競合し、かつ、先行する技術の通信方法は、一度に１つの経路上で行われる伝送に依存し、通信の内容の保護のための暗号化に完全に依存している。ＶＰＮ内での暗号化を除いて、既存の通信方法は全て、通信相手の発信元のアドレスと宛先のアドレスが公開されるため、サイバー攻撃に対する脆弱性となるフィッシング、スニッフィング、プロファイリングが可能となる。それらすべてにおいて、セキュリティは静的であり、パケットがネットワークを横断するときに変化しない。どの先行技術も通信のルーティングを制御しないため、通信がハイジャックされたかどうかを検出することができず、ネットワークの遅延、または、リアルタイムのパフォーマンスを制御することができない。さらに、さらに、ＯＴＴとＰＴＰネットワークでは、高帯域幅のルータが呼び出し（コール）をサポートすることが保証されていないため、音質の変化及びコールドロップが定常的に発生する。最後に、開示されたＳＤＮＰ通信方法及びメッシュネットワークを除く全ての場合では、ハッカーが暗号化コードを破った場合、ハッカーはセキュリティの侵害が発覚する前に重大な被害を負わせるためにその知識を使うことができ、したがって、個人的な、または、公にされていない通信内容を全て傍受可能となり得る。
【０８５１】
開示されたＳＤＮＰネットワークでは、サイバー攻撃者が暗号を破った場合でも、全ての１つのパケットが文字化けし、不完全で、他のメッセージと混合され、かつ、順浮動でスクランブルされている―基本的には、いかなるＳＤＮＰパケットの中身も、意図された人以外には無益である。さらに、たとえ、ネットワークの暗号が破られた場合、完了までに量子コンピューティングを用いても年を要する挑戦であり、１０分の１秒後には、全ＳＤＮＰクラウドを横断する各パケットの動的な暗号は変化している。これは、ハッキングしようとするハッカーは１００ミリ秒毎にハッキングを開始しなければならないことを意味している。そのような動的な方法を用いることによって、５分の会話、たとえ、それが単一のデータストリングで完全に利用可能であったとしても、解読するのに何百年を要する。これ以外にも、データ断片化、動的スクランブル化、動的な混合、及び再ルーティングが使用されているため、暗号を破ることによって得られる利益は完全に幻想的なものとなる。
【０８５２】
動的スクランブル化、断片化データ転送、匿名データパケット、動的暗号化を含む、本明細書に記載されたセキュリティを確保した動的ネットワークとプロトコルによって実現される複数レベルのセキュリティの組み合わせは、単純な静的暗号化によって提供されるセキュリティをはるかに上回る。本明細書に開示されたＳＤＮＰ通信において、会話、ダイアログ、または他の通信からのデータパケットは、シングルルートを通って移動するのではなく、無意味なデータフラグメントの解読不能な断片に分割され、順不動でスクランブルされ、混合され、データの基礎となるセキュリティ認証に基づいて、絶えず変化する複数の経路に送信される。その結果、その通信方法は、初めての「ハイパーセキュア」通信システムを表している。
【図１】
2020195141.tif 000013
【図２】
2020195141.tif 000014
【図３】
2020195141.tif 000015
【図４】
2020195141.tif 000016
【図５Ａ】
2020195141.tif 000017
【図５Ｂ】
2020195141.tif 000018
【図６Ａ】
2020195141.tif 000019
【図６Ｂ】
2020195141.tif 000020
【図７Ａ】
2020195141.tif 000021
【図７Ｂ】
2020195141.tif 000022
【図７Ｃ】
2020195141.tif 000023
【図８Ａ】
2020195141.tif 000024
【図８Ｂ】
2020195141.tif 000025
【図８Ｃ】
2020195141.tif 000026
【図９】
2020195141.tif 000027
【図１０】
2020195141.tif 000028
【図１１】
2020195141.tif 000029
【図１２Ａ】
2020195141.tif 000030
【図１２Ｂ】
2020195141.tif 000031
【図１３】
2020195141.tif 000032
【図１４Ａ】
2020195141.tif 000033
【図１４Ｂ】
2020195141.tif 000034
【図１５】
2020195141.tif 000035
【図１６】
2020195141.tif 000036
【図１７】
2020195141.tif 000037
【図１８】
2020195141.tif 000038
【図１９】
2020195141.tif 000039
【図２０】
2020195141.tif 000040
【図２１】
2020195141.tif 000041
【図２２】
2020195141.tif 000042
【図２３】
2020195141.tif 000043
【図２４】
2020195141.tif 000044
【図２５】
2020195141.tif 000045
【図２６】
2020195141.tif 000046
【図２７】
2020195141.tif 000047
【図２８Ａ】
2020195141.tif 000048
【図２８Ｂ】
2020195141.tif 000049
【図２９】
2020195141.tif 000050
【図３０】
2020195141.tif 000051
【図３１Ａ】
2020195141.tif 000052
【図３１Ｂ】
2020195141.tif 000053
【図３１Ｃ】
2020195141.tif 000054
【図３１Ｄ】
2020195141.tif 000055
【図３２Ａ】
2020195141.tif 000056
【図３２Ｂ】
2020195141.tif 000057
【図３３】
2020195141.tif 000058
【図３４】
2020195141.tif 000059
【図３５Ａ】
2020195141.tif 000060
【図３５Ｂ】
2020195141.tif 000061
【図３６】
2020195141.tif 000062
【図３７】
2020195141.tif 000063
【図３８】
2020195141.tif 000064
【図３９】
2020195141.tif 000065
【図４０】
2020195141.tif 000066
【図４１Ａ】
2020195141.tif 000067
【図４１Ｂ】
2020195141.tif 000068
【図４１Ｃ】
2020195141.tif 000069
【図４２】
2020195141.tif 000070
【図４３】
2020195141.tif 000071
【図４４】
2020195141.tif 000072
【図４５】
2020195141.tif 000073
【図４６】
2020195141.tif 000074
【図４７】
2020195141.tif 000075
【図４８Ａ】
2020195141.tif 000076
【図４８Ｂ】
2020195141.tif 000077
【図４８Ｃ】
2020195141.tif 000078
【図４９Ａ】
2020195141.tif 000079
【図４９Ｂ】
2020195141.tif 000080
【図５０】
2020195141.tif 000081
【図５１Ａ】
2020195141.tif 000082
【図５１Ｂ】
2020195141.tif 000083
【図５１Ｃ】
2020195141.tif 000084
【図５１Ｄ】
2020195141.tif 000085
【図５１Ｅ】
2020195141.tif 000086
【図５１Ｆ】
2020195141.tif 000087
【図５２】
2020195141.tif 000088
【図５３】
2020195141.tif 000089
【図５４】
2020195141.tif 000090
【図５５Ａ】
2020195141.tif 000091
【図５５Ｂ】
2020195141.tif 000092
【図５６】
2020195141.tif 000093
【図５７】
2020195141.tif 000094
【図５８】
2020195141.tif 000095
【図５９】
2020195141.tif 000096
【図６０Ａ】
2020195141.tif 000097
【図６０Ｂ】
2020195141.tif 000098
【図６１Ａ】
2020195141.tif 000099
【図６１Ｂ】
2020195141.tif 000100
【図６１Ｃ】
2020195141.tif 000101
【図６２Ａ】
2020195141.tif 000102
【図６２Ｂ】
2020195141.tif 000103
【図６３】
2020195141.tif 000104
【図６４】
2020195141.tif 000105
【図６５】
2020195141.tif 000106
【図６６Ａ】
2020195141.tif 000107
【図６６Ｂ】
2020195141.tif 000108
【図６６Ｃ】
2020195141.tif 000109
【図６６Ｄ】
2020195141.tif 000110
【図６７Ａ】
2020195141.tif 000111
【図６７Ｂ】
2020195141.tif 000112
【図６７Ｃ】
2020195141.tif 000113
【図６７Ｄ】
2020195141.tif 000114
【図６７Ｅ】
2020195141.tif 000115
【図６７Ｆ】
2020195141.tif 000116
【図６７Ｇ】
2020195141.tif 000117
【図６７Ｈ】
2020195141.tif 000118
【図６７Ｉ】
2020195141.tif 000119
【図６８Ａ】
2020195141.tif 000120
【図６８Ｂ】
2020195141.tif 000121
【図６８Ｃ】
2020195141.tif 000122
【図６８Ｄ】
2020195141.tif 000123
【図６８Ｅ】
2020195141.tif 000124
【図６９】
2020195141.tif 000125
【図７０】
2020195141.tif 000126
【図７１Ａ】
2020195141.tif 000127
【図７１Ｂ】
2020195141.tif 000128
【図７１Ｃ】
2020195141.tif 000129
【図７２】
2020195141.tif 000130
【図７３】
2020195141.tif 000131
【図７４】
2020195141.tif 000132
【図７５】
2020195141.tif 000133
【図７６】
2020195141.tif 000134
【図７７Ａ】
2020195141.tif 000135
【図７７Ｂ】
2020195141.tif 000136
【図７７Ｃ】
2020195141.tif 000137
【図７７Ｄ】
2020195141.tif 000138
【図７８Ａ】
2020195141.tif 000139
【図７８Ｂ】
2020195141.tif 000140
【図７８Ｃ】
2020195141.tif 000141
【図７８Ｄ】
2020195141.tif 000142
【図７９Ａ】
2020195141.tif 000143
【図７９Ｂ】
2020195141.tif 000144
【図８０】
2020195141.tif 000145
【図８１Ａ】
2020195141.tif 000146
【図８１Ｂ】
2020195141.tif 000147
【図８１Ｃ】
2020195141.tif 000148
【図８２Ａ】
2020195141.tif 000149
【図８２Ｂ】
2020195141.tif 000150
【図８２Ｃ】
2020195141.tif 000151
【図８３Ａ】
2020195141.tif 000152
【図８３Ｂ】
2020195141.tif 000153
【図８３Ｃ】
2020195141.tif 000154
【図８３Ｄ】
2020195141.tif 000155
【図８３Ｅ】
2020195141.tif 000156
【図８３Ｆ】
2020195141.tif 000157
【図８３Ｇ】
2020195141.tif 000158
【図８３Ｈ】
2020195141.tif 000159
【図８３Ｉ】
2020195141.tif 000160
【図８３Ｊ】
2020195141.tif 000161
【図８３Ｋ】
2020195141.tif 000162
【図８３Ｌ】
2020195141.tif 000163
【図８３Ｍ】
2020195141.tif 000164
【図８３Ｎ】
2020195141.tif 000165
【図８３Ｏ】
2020195141.tif 000166
【図８３Ｐ】
2020195141.tif 000167
【図８３Ｑ】
2020195141.tif 000168
【図８３Ｒ】
2020195141.tif 000169
【図８３Ｓ】
2020195141.tif 000170
【図８４Ａ】
2020195141.tif 000171
【図８４Ｂ】
2020195141.tif 000172
【図８４Ｃ】
2020195141.tif 000173
【図８４Ｄ】
2020195141.tif 000174
【図８５Ａ】
2020195141.tif 000175
【図８５Ｂ】
2020195141.tif 000176
【図８５Ｃ】
2020195141.tif 000177
【図８５Ｄ】
2020195141.tif 000178
【図８６】
2020195141.tif 000179
【図８７】
2020195141.tif 000180
【図８８Ａ】
2020195141.tif 000181
【図８８Ｂ】
2020195141.tif 000182
【図８８Ｃ】
2020195141.tif 000183
【図８８Ｄ】
2020195141.tif 000184
【図８８Ｅ】
2020195141.tif 000185
【図８８Ｆ】
2020195141.tif 000186
【図８９Ａ】
2020195141.tif 000187
【図８９Ｂ】
2020195141.tif 000188
【図８９Ｃ】
2020195141.tif 000189
【図８９Ｄ】
2020195141.tif 000190
【図８９Ｅ】
2020195141.tif 000191
【図８９Ｆ】
2020195141.tif 000192
【図８９Ｇ】
2020195141.tif 000193
【図９０】
2020195141.tif 000194
【図９１Ａ】
2020195141.tif 000195
【図９１Ｂ】
2020195141.tif 000196
【図９１Ｃ】
2020195141.tif 000197
【図９２Ａ】
2020195141.tif 000198
【図９２Ｂ】
2020195141.tif 000199
【図９３】
2020195141.tif 000200
【図９４】
2020195141.tif 000201
【図９５Ａ】
2020195141.tif 000202
【図９５Ｂ】
2020195141.tif 000203
【図９５Ｃ】
2020195141.tif 000204
【図９５Ｄ】
2020195141.tif 000205
【図９５Ｅ】
2020195141.tif 000206
【図９５Ｆ】
2020195141.tif 000207
【図９６Ａ】
2020195141.tif 000208
【図９６Ｂ】
2020195141.tif 000209
【図９６Ｃ】
2020195141.tif 000210
【図９６Ｄ】
2020195141.tif 000211
【図９７Ａ】
2020195141.tif 000212
【図９７Ｂ】
2020195141.tif 000213
【図９８】
2020195141.tif 000214
【図９９Ａ】
2020195141.tif 000215
【図９９Ｂ】
2020195141.tif 000216
【図９９Ｃ】
2020195141.tif 000217
【図９９Ｄ】
2020195141.tif 000218
【図９９Ｅ】
2020195141.tif 000219
【図９９Ｆ】
2020195141.tif 000220
【図１００Ａ】
2020195141.tif 000221
【図１００Ｂ】
2020195141.tif 000222
【図１０１Ａ】
2020195141.tif 000223
【図１０１Ｂ】
2020195141.tif 000224
【図１０１Ｃ】
2020195141.tif 000225
【図１０２】
2020195141.tif 000226
【図１０３Ａ】
2020195141.tif 000227
【図１０３Ｂ】
2020195141.tif 000228
【図１０４】
2020195141.tif 000229
【図１０５Ａ】
2020195141.tif 000230
【図１０５Ｂ】
2020195141.tif 000231
【図１０６】
2020195141.tif 000232
【図１０７】
2020195141.tif 000233
【図１０８】
2020195141.tif 000234
【図１０９】
2020195141.tif 000235
【図１１０Ａ】
2020195141.tif 000236
【図１１０Ｂ】
2020195141.tif 000237
【図１１０Ｃ】
2020195141.tif 000238
【図１１０Ｄ】
2020195141.tif 000239
【図１１０Ｅ】
2020195141.tif 000240
【図１１０Ｆ】
2020195141.tif 000241
【図１１１Ａ】
2020195141.tif 000242
【図１１１Ｂ】
2020195141.tif 000243
【図１１２Ａ】
2020195141.tif 000244
【図１１２Ｂ】
2020195141.tif 000245
【図１１３Ａ】
2020195141.tif 000246
【図１１３Ｂ】
2020195141.tif 000247
【図１１４】
2020195141.tif 000248
【図１１５】
2020195141.tif 000249
【図１１６】
2020195141.tif 000250
【図１１７】
2020195141.tif 000251
【図１１８】
2020195141.tif 000252
【図１１９】
2020195141.tif 000253
【図１２０】
2020195141.tif 000254
【図１２１】
2020195141.tif 000255
【図１２２】
2020195141.tif 000256
【図１２３】
2020195141.tif 000257
【図１２４Ａ】
2020195141.tif 000258
【図１２４Ｂ】
2020195141.tif 000259
【図１２４Ｃ】
2020195141.tif 000260
【図１２４Ｄ】
2020195141.tif 000261
【図１２４Ｅ】
2020195141.tif 000262
【図１２５Ａ】
2020195141.tif 000263
【図１２５Ｂ】
2020195141.tif 000264
【図１２６Ａ】
2020195141.tif 000265
【図１２６Ｂ】
2020195141.tif 000266
【図１２６Ｃ】
2020195141.tif 000267
【図１２７】
2020195141.tif 000268
【図１２８】
2020195141.tif 000269
【図１２９Ａ】
2020195141.tif 000270
【図１２９Ｂ】
2020195141.tif 000271
【図１２９Ｃ】
2020195141.tif 000272
【図１２９Ｄ】
2020195141.tif 000273
【図１３０】
2020195141.tif 000274
【図１３１】
2020195141.tif 000275
【図１３２Ａ】
2020195141.tif 000276
【図１３２Ｂ】
2020195141.tif 000277
【図１３２Ｃ】
2020195141.tif 000278
【図１３３Ａ】
2020195141.tif 000279
【図１３３Ｂ】
2020195141.tif 000280
【図１３４】
2020195141.tif 000281
【図１３５】
2020195141.tif 000282
【手続補正書】
【提出日】令和2年7月27日(2020.7.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
本明細書に記載の発明。
【手続補正書】
【提出日】令和2年8月25日(2020.8.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
クラウドを介して第１のクライアントデバイスから第２のクライアントデバイスにデータパケットを安全に送信する方法であって、
前記クラウドはメディアノードのネットワークを含み、前記メディアノードはサーバでホストされ、各メディアノードは、前記ネットワーク内の別のメディアノードからデータパケットを受信し、前記ネットワーク内のさらに別のメディアノードにデータパケットを送信し、前記第１のクライアントデバイスは、第１のマイル接続を介して前記ネットワークの入口ゲートウェイノードに接続され、前記第２のクライアントデバイスは、ラストマイル接続を介して前記ネットワークの出口ゲートウェイノードに接続され、
前記方法は、
１つ以上のシグナリングサーバを提供するステップであって、各シグナリングサーバはネットワークノードのリストを保存し、前記ネットワークノードのリストは、メディアノードとクライアントデバイスのリストを含む、該ステップと、
前記第１及び第２のクライアントデバイスのそれぞれのアドレスを前記シグナリングサーバに提供するステップと、
前記シグナリングサーバにネットワークルーティングプランを作成させるステップであって、前記ネットワークルーティングプランは、前記第１のクライアントデバイスから前記第２のクライアントデバイスへの通信において、前記ネットワークを介したデータパケットのルート内の少なくともいくつかのメディアノードを指定し、前記メディアノードのいずれも、前記ネットワークルーティングプランにアクセスできない、該ステップと、
前記シグナリングサーバに、前記ネットワークルーティングプランで指定されたメディアノードにコマンドと制御パケットを送信させるステップであって、各コマンドと制御パケットは、前記ネットワークルーティングプランで指定されたメディアノードに対し、前記ネットワークルーティングプランの次のホップで着信データパケットを送信する場所を通知する、該ステップとを含むことを特徴とする方法。
【請求項２】
請求項１に記載の方法であって、
前記着信データパケットはタグで特定され、
メディアノードによって受信された前記コマンドと制御パケットは、前記ネットワークルーティングプランで指定されたメディアノードに対し、データパケットを前記ネットワークルーティングプランにおける次のメディアノードに送信する前に前記データパケットに適用するタグを通知することを特徴とする方法。
【請求項３】
請求項１に記載の方法であって、
前記第１のクライアントデバイスに、前記第２のクライアントデバイスのＩＤ及び第２のクライアントデバイスのアドレスを求める要求を前記シグナリングサーバに送信させるステップと、
前記シグナリングサーバに、前記第２のクライアントデバイスのアドレスを前記第１のクライアントデバイスに渡させるステップとをさらに含むことを特徴とする方法。
【請求項４】
請求項３に記載の方法であって、
前記第１のクライアントデバイスは、前記シグナリングサーバに対し、前記入口ゲートウェイノードを介して前記第２のクライアントデバイスのＩＤ及び前記第２のクライアントデバイスのアドレスを求める要求を送信することを特徴とする方法。
【請求項５】
請求項１に記載の方法であって、
前記第１のクライアントデバイスから前記第２のクライアントデバイスへの通信における前記ネットワークを介したデータパケットの伝送時間を短縮するために、前記シグナリングサーバは、前記ネットワーク内のメディアノード間の伝搬遅延を考慮することによって前記ネットワークルーティングプランを作成することを特徴とする方法。
【請求項６】
請求項１に記載の方法であって、
データパケットを送受信する際のメディアノードへの負荷が所定のレベルを下回る場合、前記メディアノードを自動的にオフラインにするステップをさらに含むことを特徴とする方法。
【請求項７】
請求項１に記載の方法であって、
前記第１のクライアントデバイスは、前記ネットワーク内のメディアノードに知られているがインターネットを介してアクセスできないネットワークアドレス、及びインターネットを介してアクセス可能なインターネットアドレスによって特定され、
前記方法は、前記第１のクライアントデバイスに、前記ネットワークアドレスと前記インターネットアドレスの両方を前記シグナリングサーバに転送することによって前記ネットワークにログオンさせるステップを含むことを特徴とする方法。
【請求項８】
請求項１に記載の方法であって、
バックアップシグナリングサーバを提供するステップであって、前記バックアップシグナリングサーバの機能は、前記第１及び第２のクライアントデバイスまたはメディアノードの１つが前記シグナリングサーバに到達できない場合、または前記シグナリングサーバで障害が発生するか、または前記シグナリングサーバが攻撃された場合に、前記シグナリングサーバによって実行されるタスクを自動的に引き継ぐことである、該ステップを含むことを特徴とする方法。
【請求項９】
請求項１に記載の方法であって、
前記入口ゲートウェイノード以外の前記ネットワーク内のメディアノードのいずれも前記第１のクライアントデバイスのアドレスを知らず、前記出口ゲートウェイノード以外の前記ネットワーク内のメディアノードのいずれも前記第２のクライアントデバイスのアドレスを知らないことを特徴とする方法。
【請求項１０】
請求項１に記載の方法であって、
データパケットが前記クラウドを介して送信されている間に、前記データパケットをスクランブル化及び／または暗号化することによって前記データパケットを偽装するステップをさらに含むことを特徴とする方法。
【請求項１１】
請求項１に記載の方法であって、
ネームサーバノードを提供するステップであって、前記ネームサーバノードは１つ以上のネームサーバを含み、ネットワークノードのリストを格納し、前記ネットワークノードのリストは、アクティブなメディアノードとクライアントデバイスのリストを含む、該ステップと、
前記第１のクライアントデバイスに、前記第２のクライアントデバイスのＩＤ及び前記第２のクライアントデバイスのアドレスを求める要求をネームサーバノードに対して送信させるステップと、
前記ネームサーバノードに、前記第２のクライアントデバイスのアドレスを前記第１のクライアントデバイスに渡させるステップと、
前記第１のクライアントデバイスに、前記第２のクライアントデバイスのアドレスを前記シグナリングサーバへと送信させるステップとを含むことを特徴とする方法。
【請求項１２】
請求項１１に記載の方法であって、
前記ネームサーバノードに、前記シグナリングサーバに対し、前記ネットワークルーティングプランを作成するために必要なメディアノードのリストを渡させるステップと、
前記シグナリングサーバに、前記メディアノードのリストを使用して前記ネットワークルーティングプランを作成させるステップとを含むことを特徴とする方法。
【請求項１３】
請求項１１に記載の方法であって、
前記第１のクライアントデバイスは、前記ネットワーク内のメディアノードに知られているがインターネットを介してアクセスできないネットワークアドレス、及びインターネットを介してアクセス可能なインターネットアドレスによって特定され、
前記方法は、前記第１のクライアントデバイスに、前記ネットワークアドレスと前記インターネットアドレスの両方をネームサーバに転送することによって前記ネットワークにログオンさせるステップを含むことを特徴とする方法。
【請求項１４】
請求項１１に記載の方法であって、
バックアップネームサーバを提供するステップであって、前記バックアップネームサーバの機能は、前記第１及び第２のクライアントデバイスまたはメディアノードの１つが前記ネームサーバに到達できない場合、または前記ネームサーバで障害が発生するか、または前記ネームサーバが攻撃された場合に、前記ネームサーバによって実行されるタスクを自動的に引き継ぐことである、該ステップを含むことを特徴とする方法。
【請求項１５】
請求項１１に記載の方法であって、
データパケットが前記クラウドを介して送信されている間に、前記データパケットをスクランブル化及び／または暗号化することによって前記データパケットを偽装するステップをさらに含むことを特徴とする方法。
【請求項１６】
クラウドを介して第１のクライアントデバイスから第２のクライアントデバイスにデータパケットを安全に送信する方法であって、
前記クラウドはメディアノードのネットワークを含み、前記メディアノードはサーバでホストされ、各メディアノードは、前記ネットワーク内の別のメディアノードからデータパケットを受信し、前記ネットワーク内のさらに別のメディアノードにデータパケットを送信し、前記第１のクライアントデバイスは、第１のマイル接続を介して前記ネットワークの入口ゲートウェイノードに接続され、前記第２のクライアントデバイスは、ラストマイル接続を介して前記ネットワークの出口ゲートウェイノードに接続され、
前記ネットワークは、第１のメディアノードを含み、前記第１のメディアノードは、ネームサーバ機能及びシグナリング機能を実行し、ネットワークノードのリストを格納し、前記ネットワークノードのリストは、メディアノード及びクライアントデバイスのリストを含み、
前記方法は、
前記ネットワーク内の前記第１のメディアノードに、前記第１及び第２のクライアントデバイスのそれぞれのアドレスを提供するステップと、
前記第１のメディアノードにネットワークルーティングプランを作成させるステップであって、前記ネットワークルーティングプランは、前記第１のクライアントデバイスから第２のクライアントデバイスへの通信において、前記ネットワークを介したデータパケットのルート内の少なくともいくつかのメディアノードを指定し、前記第１のメディアノード以外のメディアノードは、前記ネットワークルーティングプランにアクセスできない、該ステップと、
前記第１のメディアノードに、前記ネットワークルーティングプランで指定されたメディアノードにコマンドと制御パケットを送信させるステップであって、各コマンドと制御パケットは、前記ネットワークルーティングプランで指定されたメディアノードに対し、前記ネットワークルーティングプランの次のホップで着信データパケットを送信する場所を通知する、該ステップとを含むことを特徴とする方法。
【請求項１７】
請求項１６に記載の方法であって、
前記着信データパケットはタグで特定され、
前記コマンドと制御パケットは、前記ネットワークルーティングプランで指定されたメディアノードに対し、データパケットを前記ネットワークルーティングプランにおける次のメディアノードに送信する前に前記データパケットに適用するタグを通知することを特徴とする方法。
【請求項１８】
請求項１６に記載の方法であって、
前記第１のクライアントデバイスに、前記第２のクライアントデバイスのＩＤ及び第２のクライアントデバイスのアドレスを求める要求を前記第１のメディアノードに送信させるステップと、
前記第１のメディアノードに、前記第２のクライアントデバイスのアドレスを前記第１のクライアントデバイスに渡させるステップとをさらに含むことを特徴とする方法。
【請求項１９】
請求項１６に記載の方法であって、
前記第１のクライアントデバイスから前記第２のクライアントデバイスへの通信における前記ネットワークを介したデータパケットの伝送時間を短縮するために、前記第１のメディアノードは、前記ネットワーク内のメディアノード間の伝搬遅延を考慮することによって前記ネットワークルーティングプランを作成することを特徴とする方法。
【請求項２０】
請求項１６に記載の方法であって、
前記入口ゲートウェイノード以外の前記ネットワーク内のメディアノードのいずれも前記第１のクライアントデバイスのアドレスを知らず、前記出口ゲートウェイノード以外の前記ネットワーク内のメディアノードのいずれも前記第２のクライアントデバイスのアドレスを知らないことを特徴とする方法。
【請求項２１】
請求項１６に記載の方法であって、
前記第１のメディアノードは、前記入口ゲートウェイノードを含むことを特徴とする方法。
【請求項２２】
請求項１に記載の方法であって、
各パケットは、複数のデータセグメントを含み、
前記方法は、
第１のスクランブル化アルゴリズムに従って第１のメディアノードにおいてパケット内のデータセグメントの順序を変更することによって前記パケットをスクランブル化するステップと、
前記パケットを第２のメディアノードに送信するステップと、
前記第１のメディアノードにおける前記スクランブル化の前に、前記パケットにおけるデータセグメントの順序を再作成するために、前記第２のメディアノードにおけるパケットをスクランブル解除するステップと、
前記第２のメディアノードにおける前記スクランブル解除の後、第２のスクランブル化アルゴリズムに従って前記第２のメディアノードにおけるパケットをスクランブル化するステップと、
前記パケットを第３のメディアノードに送信するステップであって、前記第２のスクランブル化アルゴリズムは、前記第１のスクランブル化アルゴリズムとは異なり、前記パケットが前記第３のメディアノードに到着したときの前記パケット内のデータセグメントの順序は、前記パケットが前記第２のメディアノードに到着したときの前記パケット内のデータセグメントの順序とは異なる、該送信するステップとを含む。
【請求項２３】
請求項２２に記載の方法であって、
前記クラウドは、複数のゲートウェイメディアノードを含み、前記ゲートウェイメディアノードの各々は、ラストマイル接続を介してクライアントデバイスに接続されたメディアノードであり、前記第１及び第２のメディアノードの少なくとも１つは、ゲートウェイメディアノードではないことを特徴とする方法。
【請求項２４】
請求項２３に記載の方法であって、
前記第１のスクランブル化アルゴリズムは、状態の値によって決定されることを特徴とする方法。
【請求項２５】
請求項２４に記載の方法であって、
前記状態の前記値は、前記パケットが前記第１のメディアノードでスクランブル化される時間によって決定されることを特徴とする方法。
【請求項２６】
請求項２４に記載の方法であって、
前記状態の前記値は、前記第１のメディアノードが位置するゾーンによって決定されることを特徴とする方法。
【請求項２７】
請求項２４に記載の方法であって、
第１のＤＭＺサーバは、前記第１のメディアノードに関連付けられ、第２のＤＭＺサーバは、前記第２のメディアノードに関連付けられ、
前記第１及び第２のＤＭＺサーバのそれぞれは、前記第１及び第２のメディアノードのいずれも、前記第１及び第２のＤＭＺサーバのいずれかに格納されたファイルにアクセスできないように分離され、
前記方法は、前記状態の第１の値を表すデータを前記第１のメディアノードから前記第２のＤＭＺサーバに送信するステップをさらに含むことを特徴とする方法。
【請求項２８】
請求項２７に記載の方法であって、
前記第２のＤＭＺサーバにセレクタを提供するステップをさらに含み、
前記セレクタは、コンピュータメモリに格納されたスクランブル化アルゴリズムのリストを含むことを特徴とする方法。
【請求項２９】
請求項２８に記載の方法であって、
前記第２のＤＭＺサーバは、前記状態の前記第１の値を表す前記データを使用して、前記セレクタ内の前記スクランブル化アルゴリズムのリストから前記第１のスクランブル化アルゴリズムを選択することを特徴とする方法。
【請求項３０】
請求項２９に記載の方法であって、
前記第２のＤＭＺサーバによって選択された前記第１のスクランブル化アルゴリズムを前記第２のメディアノードに送信するステップをさらに含み、
前記第２のメディアノードは、前記第１のスクランブル化アルゴリズムを使用して前記パケットをスクランブル解除することを特徴とする方法。
【請求項３１】
請求項２８に記載の方法であって、
前記状態の前記値を表す前記データはシードを含み、前記シードは前記状態の前記値の偽装した表現を含むことを特徴とする方法。
【請求項３２】
請求項２８に記載の方法であって、
前記第２のＤＭＺサーバは、隠し数字生成器を備え、
前記隠し数字生成器は、隠し数字アルゴリズムを使用して、前記状態の前記値を表す前記データから隠し数字を計算し、
前記隠し数字は、前記第２のＤＭＺサーバの前記セレクタで前記第１のスクランブル化アルゴリズムを選択するために使用されることを特徴とする方法。
【請求項３３】
請求項２８に記載の方法であって、
前記第１のＤＭＺサーバは、前記状態の前記第１の値を使用して、前記第１のスクランブル化アルゴリズムを前記第１のＤＭＺサーバ内の前記セレクタから選択し、前記第１のスクランブル化アルゴリズムを前記第１のメディアノードに送信し、それによって前記第１のメディアノードが前記パケットをスクランブル化できるようにすることを特徴とする方法。
【請求項３４】
請求項２８に記載の方法であって、
前記第２のＤＭＺサーバは、前記状態の第２の値を使用して、前記第２のＤＭＺサーバ内の前記セレクタ内の前記スクランブル化アルゴリズムのリストから前記第２のスクランブル化アルゴリズムを選択し、前記第２のスクランブル化アルゴリズムを前記第２のメディアノードに送信し、それによって前記第２のメディアノードが前記パケットをスクランブル化できるようにすることを特徴とする方法。
【請求項３５】
請求項１に記載の方法であって、
各パケットは複数のデータセグメントを含み、
前記パケットは、第１のメディアノード、第２のメディアノード、及び前記第１のメディアノードと前記第２のメディアノードとの間の１つ以上の中間メディアノードを通過し、
前記方法は、
前記第１のメディアノードで前記パケットをスクランブル化するステップと、
前記中間メディアノードの少なくとも１つ以上において前記パケットを再スクランブル化するステップであって、前記再スクランブル化は、前記パケットをスクランブル解除してからスクランブル化することを含む、該ステップと、
前記パケットが前記第２のメディアノードによって受信された後、前記第２のメディアノードにおける前記パケットをスクランブル解除するステップであって、前記パケットがスクランブル化される前記メディアノードの各々において前記パケットをスクランブル化するために使用されるスクランブル化アルゴリズムは、前記パケットがスクランブル化される他のすべてのメディアノードにおいて前記パケットをスクランブル化するために使用されるスクランブル化アルゴリズムとは異なる、該ステップとを含むことを特徴とする方法。
【請求項３６】
請求項３５に記載の方法であって、
前記中間メディアノードの各々において前記パケットを再スクランブル化するステップを含むことを特徴とする方法。
【請求項３７】
請求項３５に記載の方法であって、
前記パケットがスクランブル化される前記メディアノードの各々において前記パケットをスクランブル化するために使用されるスクランブル化アルゴリズムは、前記スクランブル化が発生する時間によって決定されることを特徴とする方法。
【請求項３８】
請求項１に記載の方法であって、
前記パケットの各々は、複数のデータセグメントを含み、
前記メディアノードは、第１及び第２のゲートウェイメディアノードを含み、前記第１及び第２のゲートウェイメディアノードは、それぞれ前記第１及び第２のクライアントデバイスに接続され、
前記方法は、
第１の暗号化方法に従って第１のメディアノードにおいてパケット内のデータを暗号化するステップであって、前記第１の暗号化方法は状態の値によって決定される、該ステップと、
前記パケットを第２のメディアノードに送信するステップと、
前記パケットが前記第２のメディアノードで受信された後、前記第１のメディアノードでの暗号化の前に前記パケットを再作成するために、前記第２のメディアノードにおいて前記パケットの暗号化データを復号化するステップであって、前記第１及び第２のメディアノードの少なくとも１つは、ゲートウェイメディアノードではない、該ステップとを含むことを特徴とする方法。
【請求項３９】
請求項３８に記載の方法であって、
前記第２のメディアノードにおける前記復号化の後に、前記第２のメディアノードにおいて前記パケット内のデータを暗号化するステップをさらに含むことを特徴とする方法。
【請求項４０】
請求項３９に記載の方法であって、
前記第１のメディアノードにおける前記暗号化は、第１の暗号化方法に従って実行され、前記第２のメディアノードにおける前記暗号化は、前記第１の暗号化方法とは異なる第２の暗号化方法に従って実行されることを特徴とする方法。
【請求項４１】
請求項４０に記載の方法であって、
前記状態の前記値は、前記パケットが前記第１のメディアノードにおいて暗号化される時間によって決定されることを特徴とする方法。
【請求項４２】
請求項４０に記載の方法であって、
前記状態の前記値は、前記第１のメディアノードが位置するゾーンによって決定されることを特徴とする方法。
【請求項４３】
請求項４０に記載の方法であって、
第１のＤＭＺサーバは、前記第１のメディアノードに関連付けられ、第２のＤＭＺサーバは、前記第２のメディアノードに関連付けられ、
前記第１及び第２のＤＭＺサーバのそれぞれは、前記第１及び第２のメディアノードのいずれも、前記第１及び第２のＤＭＺサーバのいずれかに格納されたファイルにアクセスできないように分離され、
前記方法は、前記状態の第１の値を表すデータを前記第１のメディアノードから前記第２のＤＭＺサーバに送信するステップをさらに含むことを特徴とする方法。
【請求項４４】
請求項４３に記載の方法であって、
前記第２のＤＭＺサーバにセレクタを提供するステップをさらに含み、
前記セレクタは、コンピュータメモリに格納された暗号化方法のリストを含むことを特徴とする方法。
【請求項４５】
請求項４４に記載の方法であって、
前記第２のＤＭＺサーバは、前記状態の前記第１の値を表す前記データを使用して、前記セレクタ内の前記暗号化方法のリストから前記第１の暗号化方法を選択することを特徴とする方法。
【請求項４６】
請求項４５に記載の方法であって、
前記第２のＤＭＺサーバによって選択された前記第１の暗号化方法を前記第２のメディアノードに送信するステップをさらに含み、
前記第２のメディアノードは、前記第１の暗号化方法を使用して前記パケットの前記暗号化データを復号化することを特徴とする方法。
【請求項４７】
請求項４４に記載の方法であって、
前記状態の前記値を表す前記データはシードを含み、前記シードは前記状態の前記値の偽装した表現を含むことを特徴とする方法。
【請求項４８】
請求項４４に記載の方法であって、
前記第２のＤＭＺサーバは、隠し数字生成器を備え、
前記隠し数字生成器は、隠し数字アルゴリズムを使用して、前記状態の前記値を表す前記データから隠し数字を計算し、
前記隠し数字は、前記第２のＤＭＺサーバの前記セレクタで前記第１の暗号化方法を選択するために使用されることを特徴とする方法。
【請求項４９】
請求項４４に記載の方法であって、
前記第１のＤＭＺサーバは、前記状態の前記第１の値を使用して、前記第１の暗号化方法を前記第１のＤＭＺサーバ内の前記セレクタから選択し、前記第１の暗号化方法を前記第１のメディアノードに送信し、それによって前記第１のメディアノードが前記パケットを暗号化できるようにすることを特徴とする方法。
【請求項５０】
請求項４４に記載の方法であって、
前記第２のＤＭＺサーバは、前記状態の第２の値を使用して、前記第２のＤＭＺサーバ内の前記セレクタ内の前記暗号化方法のリストから前記第２の暗号化方法を選択し、前記第２の暗号化方法を前記第２のメディアノードに送信し、それによって前記第２のメディアノードが前記パケットを暗号化できるようにすることを特徴とする方法。
【請求項５１】
請求項１に記載の方法であって、
パケットは、第１のメディアノード、第２のメディアノード、及び前記第１のメディアノードと前記第２のメディアノードとの間の１つ以上の中間メディアノードを通過し、
前記方法は、
前記第１のメディアノードにおいて前記パケット内のデータを暗号化するステップと、
前記中間メディアノードの少なくともいくつかにおいて前記パケットを再暗号化するステップであって、前記再暗号化は、前記パケット内のデータを復号化し、次に前記パケット内のデータを暗号化することを含む、該ステップと、
前記第２のメディアノードにおいて前記パケットのデータを復号化するステップであって、前記パケット内のデータが暗号化される前記メディアノードの各々において前記パケット内のデータを暗号化するために使用される暗号化方法は、前記パケットのデータが暗号化される他のすべてのメディアノードで前記パケットのデータを暗号化するのに使用される暗号化方法とは異なる、該ステップとを含むことを特徴とする方法。
【請求項５２】
請求項５１に記載の方法であって、
前記中間メディアノードの各々において前記パケットを再暗号化するステップを含むことを特徴とする方法。
【請求項５３】
請求項５１に記載の方法であって、
前記パケット内のデータが暗号化される前記メディアノードの各々において前記パケット内のデータを暗号化するために使用される暗号化方法は、前記暗号化が発生する時間によって決定されることを特徴とする方法。