JP2023523915A - virtual network device - Google Patents
virtual network device Download PDFInfo
- Publication number
- JP2023523915A JP2023523915A JP2022563954A JP2022563954A JP2023523915A JP 2023523915 A JP2023523915 A JP 2023523915A JP 2022563954 A JP2022563954 A JP 2022563954A JP 2022563954 A JP2022563954 A JP 2022563954A JP 2023523915 A JP2023523915 A JP 2023523915A
- Authority
- JP
- Japan
- Prior art keywords
- virtual
- frame
- encapsulated
- frames
- port
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 claims description 67
- 238000009432 framing Methods 0.000 claims description 17
- 230000005540 biological transmission Effects 0.000 claims description 12
- 238000012546 transfer Methods 0.000 claims description 11
- 235000008694 Humulus lupulus Nutrition 0.000 claims description 6
- 230000008878 coupling Effects 0.000 claims description 5
- 238000010168 coupling process Methods 0.000 claims description 5
- 238000005859 coupling reaction Methods 0.000 claims description 5
- 238000005538 encapsulation Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 16
- 239000000284 extract Substances 0.000 description 9
- 230000003068 static effect Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001427 coherent effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
- H04N21/4347—Demultiplexing of several video streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/103—Packet switching elements characterised by the switching fabric construction using a shared central buffer; using a shared memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/111—Switch interfaces, e.g. port details
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/4104—Peripherals receiving signals from specially adapted client devices
- H04N21/4108—Peripherals receiving signals from specially adapted client devices characterised by an identification number or address, e.g. local network address
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/4363—Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/647—Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
- H04N21/64707—Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless for transferring content from a first network to a second network, e.g. between IP and wireless
Abstract
仮想ネットワークデバイス(100)が、送信ネットワーク物理ポート(216)の数をより大きな数へと変換するために、いくつかの送信仮想ポート(vPORTa)及び仮想スイッチ(214)を、そして受信ネットワーク物理ポート(610)の数をより大きな数へと変換するために、いくつかの受信仮想ポート(vPORTb)及び仮想スイッチ(612)を利用する。【選択図】 図2AIn order for the virtual network device (100) to convert the number of outgoing network physical ports (216) to a larger number, several outgoing virtual ports (vPORTa) and virtual switches (214) and incoming network physical ports To convert the number of (610) to a larger number, it utilizes several receiving virtual ports (vPORTb) and virtual switches (612). [Selection drawing] Fig. 2A
Description
本出願は、コンピュータネットワークの分野に関し、特に、仮想ネットワークデバイスに関する。 The present application relates to the field of computer networks, and more particularly to virtual network devices.
ワイドエリアネットワーク(WAN)は、ネットワークデバイスどうしの相互接続されているウェブであり、このウェブは典型的に、州全体にわたって、又は国全体にわたってなど、広い地理的エリアにわたってローカルエリアネットワーク又はメトロポリタンエリアネットワークを相互接続する。WANは、リモートに配置されているコンピュータどうしがネットワークデバイスを介して互いと通信することを可能にする。 A wide area network (WAN) is an interconnected web of network devices, typically local or metropolitan area networks that span large geographic areas, such as statewide or countrywide. interconnect. WANs allow remotely located computers to communicate with each other through network devices.
従来のネットワークデバイスは典型的に、たとえば、10/100/1000Mbps(メガビット/秒)、10Gbps(ギガビット/秒)、40Gbps、及び100Gbpsの接続など、予め定められている固定されたデータレートで動作する1つ又は複数の物理ネットワークポートを含む。ネットワークを介したコンピュータシステムどうしの間における通信を可能にすることの一環として、従来のネットワークデバイスは、ネットワークポートの転送スピードをネゴシエートし、そのプロセス中に、ネットワークポートの転送スピードは固定される。 Conventional network devices typically operate at predetermined fixed data rates, e.g., 10/100/1000 Mbps (megabits per second), 10 Gbps (gigabits per second), 40 Gbps, and 100 Gbps connections. Contains one or more physical network ports. As part of enabling communication between computer systems over a network, conventional network devices negotiate the transfer speed of a network port, during which process the transfer speed of the network port is fixed.
従来のネットワークデバイスの不利な点のうちの1つは、利用可能であるよりも多くの物理ポートに対する必要性がある場合が多いということであり、このことは、低減されたサービス又はコストのかさむアップグレードをもたらす。結果として、ポートに対する高まる必要性に対応するためのアプローチに対する必要性がある。 One of the disadvantages of conventional network devices is that there is often a need for more physical ports than are available, which can lead to reduced service or increased costs. bring upgrades. As a result, there is a need for an approach to meet the growing need for ports.
本発明は、利用可能な物理ポートの数を実質的に増やす仮想ポートを有する仮想ネットワークデバイスを提供する。この仮想ネットワークデバイスは、フレーミング回路を含み、フレーミング回路は、複数の入力フレームを受信し、それらの複数の入力フレームを調べて、それぞれの入力フレームに関するフレームタイプを特定し、そのフレームタイプに基づいて、それぞれの入力フレームに関連付けられている仮想出口デバイスを特定する。フレーミング回路はまた、複数の入力フレームをカプセル化して、複数の第1のカプセル化されたフレームを形成する。それぞれの仮想出口デバイスは、受信仮想ポートを有する。複数の第1のカプセル化されたフレームは、複数のヘッダを有する。それらの複数のヘッダは、複数の入力フレームに関連付けられている複数の仮想出口デバイスを識別する。加えて、この仮想ネットワークデバイスは、フレーミング回路に結合されている複数の送信仮想ポートを含む。それらの複数の送信仮想ポートは、複数の第1のカプセル化されたフレームのヘッダにおける仮想出口デバイスに基づいて複数の第1のカプセル化されたフレームに関する仮想ネットワークにおける複数のネクストホップを特定する。複数の送信仮想ポートはさらに、複数の第1のカプセル化されたフレームをカプセル化して、複数の第2のカプセル化されたフレームを形成する。それぞれの第2のカプセル化されたフレームは、ヘッダを有する。第2のカプセル化されたフレームのヘッダは、第1のカプセル化されたフレームのネクストホップに基づいて第2のカプセル化されたフレームのネクストホップを、そして入力フレームの関連付けられている仮想出口デバイスの受信仮想ポートを識別する。送信仮想ポートは、メモリの第1の部分を含む。さらに、仮想ネットワークデバイスは、複数の送信仮想ポートに結合されている送信仮想スイッチを含む。その送信仮想スイッチは、送信仮想ポートをネットワーク物理ポートに選択的に結合する。 The present invention provides virtual network devices with virtual ports that substantially increase the number of available physical ports. The virtual network device includes a framing circuit that receives a plurality of input frames, examines the plurality of input frames to identify a frame type for each input frame, and based on the frame type: , to identify the virtual egress device associated with each input frame. The framing circuit also encapsulates a plurality of input frames to form a plurality of first encapsulated frames. Each virtual egress device has a receiving virtual port. The multiple first encapsulated frames have multiple headers. The multiple headers identify multiple virtual egress devices associated with multiple input frames. Additionally, the virtual network device includes a plurality of transmit virtual ports coupled to the framing circuit. The multiple transmit virtual ports identify multiple next hops in the virtual network for the multiple first encapsulated frames based on virtual egress devices in headers of the multiple first encapsulated frames. The multiple transmit virtual ports further encapsulate the multiple first encapsulated frames to form multiple second encapsulated frames. Each secondary encapsulated frame has a header. The header of the second encapsulated frame identifies the next hop of the second encapsulated frame based on the next hop of the first encapsulated frame and the associated virtual egress device of the input frame. Identifies the incoming virtual port of the The transmit virtual port includes a first portion of memory. Additionally, the virtual network device includes a transmit virtual switch coupled to the plurality of transmit virtual ports. The transmit virtual switch selectively couples transmit virtual ports to network physical ports.
本発明はまた、仮想ネットワークデバイスの動作方法を含む。この方法は、複数の入力フレームを受信するステップと、それらの複数の入力フレームを調べて、それぞれの入力フレームに関するフレームタイプを特定するステップと、そのフレームタイプに基づいて、それぞれの入力フレームに関連付けられている仮想出口デバイスを特定するステップとを含む。それぞれの仮想出口デバイスは、受信仮想ポートを有する。この方法はまた、複数の入力フレームをカプセル化して、複数の第1のカプセル化されたフレームを形成するステップを含む。複数の第1のカプセル化されたフレームは、複数のヘッダを有する。それらの複数のヘッダは、複数の入力フレームに関連付けられている複数の仮想出口デバイスを識別する。加えて、この方法は、複数の第1のカプセル化されたフレームのヘッダにおける仮想出口デバイスに基づいて複数の第1のカプセル化されたフレームに関する仮想ネットワークにおける複数のネクストホップを特定するステップを含む。さらに、この方法は、複数の送信仮想ポートにおいて複数の第1のカプセル化されたフレームをカプセル化して、複数の第2のカプセル化されたフレームを形成するステップを含む。それぞれの第2のカプセル化されたフレームは、ヘッダを有する。第2のカプセル化されたフレームのヘッダは、第1のカプセル化されたフレームのネクストホップに基づいて第2のカプセル化されたフレームのネクストホップを、そして入力フレームの関連付けられている仮想出口デバイスの受信仮想ポートを識別する。送信仮想ポートは、共有メモリの第1の部分を含む。この方法は、送信仮想ポートをネットワーク物理ポートに選択的に結合するステップをさらに含む。 The invention also includes a method of operating a virtual network device. The method includes the steps of receiving a plurality of input frames, examining the plurality of input frames to identify a frame type for each input frame, and associating with each input frame based on the frame type. identifying a virtual egress device that is being accessed. Each virtual egress device has a receiving virtual port. The method also includes encapsulating a plurality of input frames to form a plurality of first encapsulated frames. The multiple first encapsulated frames have multiple headers. The multiple headers identify multiple virtual egress devices associated with multiple input frames. Additionally, the method includes identifying a plurality of next hops in the virtual network for the plurality of first encapsulated frames based on virtual egress devices in headers of the plurality of first encapsulated frames. . Additionally, the method includes encapsulating the plurality of first encapsulated frames at the plurality of transmit virtual ports to form a plurality of second encapsulated frames. Each secondary encapsulated frame has a header. The header of the second encapsulated frame identifies the next hop of the second encapsulated frame based on the next hop of the first encapsulated frame and the associated virtual egress device of the input frame. Identifies the receiving virtual port of the The transmit virtual port includes a first portion of shared memory. The method further includes selectively coupling the transmission virtual port to the network physical port.
本発明はまた、プログラム命令が埋め込まれている非一時的コンピュータ可読記憶媒体を提供し、そのプログラム命令は、プロセッサによって実行されたときに、仮想ネットワークデバイスの動作方法をプロセッサに実行させる。その方法は、複数の入力フレームを受信するステップと、それらの複数の入力フレームを調べて、それぞれの入力フレームに関するフレームタイプを特定するステップと、そのフレームタイプに基づいて、それぞれの入力フレームに関連付けられている仮想出口デバイスを特定するステップとを含む。それぞれの仮想出口デバイスは、受信仮想ポートを有する。その方法はまた、複数の入力フレームをカプセル化して、複数の第1のカプセル化されたフレームを形成するステップを含む。複数の第1のカプセル化されたフレームは、複数のヘッダを有する。それらの複数のヘッダは、複数の入力フレームに関連付けられている複数の仮想出口デバイスを識別する。加えて、その方法は、複数の第1のカプセル化されたフレームのヘッダにおける仮想出口デバイスに基づいて複数の第1のカプセル化されたフレームに関する仮想ネットワークにおける複数のネクストホップを特定するステップを含む。さらに、その方法は、複数の送信仮想ポートにおいて複数の第1のカプセル化されたフレームをカプセル化して、複数の第2のカプセル化されたフレームを形成するステップを含む。それぞれの第2のカプセル化されたフレームは、ヘッダを有する。第2のカプセル化されたフレームのヘッダは、第1のカプセル化されたフレームのネクストホップに基づいて第2のカプセル化されたフレームのネクストホップを、そして入力フレームの関連付けられている仮想出口デバイスの受信仮想ポートを識別する。その方法は、送信仮想ポートをネットワーク物理ポートに選択的に結合するステップをさらに含む。 The present invention also provides a non-transitory computer-readable storage medium having program instructions embedded therein which, when executed by a processor, cause the processor to perform a method of operating a virtual network device. The method includes the steps of receiving a plurality of input frames, examining the plurality of input frames to identify a frame type for each input frame, and associating with each input frame based on the frame type. identifying a virtual egress device that is being accessed. Each virtual egress device has a receiving virtual port. The method also includes encapsulating a plurality of input frames to form a plurality of first encapsulated frames. The multiple first encapsulated frames have multiple headers. The multiple headers identify multiple virtual egress devices associated with multiple input frames. Additionally, the method includes identifying a plurality of next hops in a virtual network for the plurality of first encapsulated frames based on virtual egress devices in headers of the plurality of first encapsulated frames. . Further, the method includes encapsulating the plurality of first encapsulated frames at a plurality of transmit virtual ports to form a plurality of second encapsulated frames. Each secondary encapsulated frame has a header. The header of the second encapsulated frame identifies the next hop of the second encapsulated frame based on the next hop of the first encapsulated frame and the associated virtual egress device of the input frame. Identifies the receiving virtual port of the The method further includes selectively coupling the transmission virtual port to the network physical port.
本発明の原理が利用される例示的な実施形態を示す以降の詳細な説明及び添付の図面を参照することによって、本発明の特徴及び利点のよりよい理解が得られるであろう。 A better understanding of the features and advantages of the present invention may be obtained by reference to the following detailed description and accompanying drawings, which illustrate illustrative embodiments in which the principles of the invention are employed.
図1は、本発明による仮想ネットワークデバイス100の一例を示すブロック図を示している。以降でさらに詳細に記述されているように、仮想ネットワークデバイス100におけるローカル物理ポートの実質的な数が、それらのローカル物理ポートのうちの1つ又は複数を複数の仮想ローカル物理ポートへと変換することによって増やされ、ネットワーク物理ポートの実質的な数が、それらのネットワーク物理ポートのうちの1つ又は複数を複数の仮想ネットワーク物理ポートへと変換することによって増やされる。
FIG. 1 shows a block diagram illustrating an example of a
仮想ネットワークデバイス100は、ローカルルータ/スイッチをリモートルータ/スイッチと相互接続する仮想ネットワークにおけるコンポーネントである。仮想ネットワークは、ローカルルータ/スイッチに結合されている、仮想ネットワークへの仮想入口デバイスとして機能する仮想ネットワークデバイス100と、リモートルータ/スイッチに結合されている、仮想ネットワークからの仮想出口デバイスとして機能する仮想ネットワークデバイス100とを含む。
A
図1において示されているように、仮想ネットワークデバイス100は、送信回路110を含み、送信回路110は、ルータ/スイッチなどのローカルネットワークデバイスから、データのセットトップボックス(STB)、パーソナルコンピュータ(PC)、及びビデオフレームなど、データのフレームをそれぞれが受信するいくつかのローカル物理ポート112と、データのフレームを仮想ネットワークへそれぞれが出力するいくつかのネットワーク物理ポート114とを有する。
As shown in FIG. 1, the
図1においてさらに示されているように、仮想ネットワークデバイス100はまた、受信回路120を含み、受信回路120は、ルータ/スイッチなどのローカルネットワークデバイスへデータのフレームをそれぞれが出力するいくつかのローカル物理ポート122と、仮想ネットワークからデータのフレームをそれぞれが受信するいくつかのネットワーク物理ポート124とを有する。一実施形態においては、ローカル物理ポート112及び122のうちの1つ又は複数は、送信回路110と受信回路120との間において共有されることが可能であり、ネットワーク物理ポート114及び124のうちの1つ又は複数は、送信回路110と受信回路120との間において共有されることが可能である。
As further shown in FIG. 1, the
加えて、仮想ネットワークデバイス100は、送信回路110及び受信回路120の両方に結合されている共有メモリ130を含む。共有メモリ130は、仮想ネットワークへ出力されることになるデータのフレームを一時的に格納する送信キューと、仮想ネットワークから受信されたデータのフレームを一時的に格納する受信キューとを含む。
In addition,
図2Aは、本発明による送信回路200の一例を示すブロック図を示している。図2Aにおいて示されているように、送信回路200は、ローカル物理ポート210と、ローカル物理ポート210に結合されているフレーミング回路212と、フレーミング回路212に結合されているいくつかの送信仮想ポートvPORTa1~vPORTanとを含む。
FIG. 2A shows a block diagram illustrating an example of a
そしてそれぞれの送信仮想ポートvPORTaは、送信キュー及び送信フレームフォーマッティング回路を含む。加えて、送信回路200はまた、送信仮想ポートvPORTaのうちのそれぞれに結合されている送信仮想スイッチ214と、送信仮想スイッチ214に結合されているネットワーク物理ポート216とを含む。
Each transmit virtual port vPORTa then includes a transmit queue and transmit frame formatting circuitry. In addition, transmit
図3Aは、本発明による、送信回路200の動作方法300の一例を示すフローチャートを示している。図3Aにおいて示されているように、方法300は、310においてフレーミング回路212がローカル物理ポート210から一連の入力フレームを受信することから始まる。方法300は次に312へ移って、その一連の入力フレームを調べて、それぞれの入力フレームに関するフレームタイプ(たとえば、STB、PC、ビデオ)を特定し、次いで314へ移って、そのフレームタイプに基づいて、それぞれの入力フレームに関連付けられている仮想出口デバイスを特定する。そしてそれぞれの仮想出口デバイスは、いくつかの受信仮想ポートを有する。
FIG. 3A shows a flow chart illustrating an
これに続いて、方法300は316へ移り、316でフレーミング回路212は、一連の入力フレームをカプセル化して、いくつかの第1のカプセル化された(FE)フレームを形成する。FEフレームは、一連の入力フレームに関連付けられている仮想出口デバイスを識別するヘッダを有する。
Following this,
この後に、方法300は318へ移り、318で送信仮想ポートvPORTa1~vPORTanは、FEフレームのヘッダにおける仮想出口デバイスに基づいてFEフレームに関する仮想ネットワークにおけるネクストホップを特定する。次に、方法300は320へ移り、320で送信仮想ポートvPORTa1~vPORTanは、FEフレームをカプセル化して、第2のカプセル化された(SE)フレームを形成する。それぞれのSEフレームは、FEフレームのネクストホップに基づいてSEフレームのネクストホップを識別するヘッダを有する。そのヘッダは、入力フレームの関連付けられている仮想出口デバイスの受信仮想ポートも識別する。加えて、送信仮想ポートは、共有メモリの第1の部分を占有する。
After this, the
これに続いて、方法300は322へ移り、322で送信仮想スイッチ214は、送信仮想ポートvPORTa1~vPORTanを循環して、それぞれの送信仮想ポートvPORTaから、固定された繰り返し順序でSEフレームを順次転送して、SEフレームのシーケンスを出力する。たとえば、仮想スイッチ214は、SEフレームのシーケンスを出力することが可能であり、そのシーケンスでは、第1のSEフレームは、vPORT1からのものであり、第2のフレームは、vPORT2からのものであり、第3のフレームは、vPORT3からのものであり、そして第4のフレームは、再びvPORT1からのものである。
Following this, the
送信仮想ポートvPORTaが空であるか又は部分的にいっぱいである場合には、フレームは生成されない。たとえば、送信仮想ポートvPORT2が空である場合には、ネットワーク物理ポート216は、フレーム1、フレームなし、フレーム3を含むフレームシーケンスを出力する。方法300は次に324へ移り、324でネットワーク物理ポート216は、SEフレームのシーケンスを仮想ネットワークへと送信する。
If the sending virtual port vPORTa is empty or partially full, no frame is generated. For example, if the transmit virtual port vPORT2 is empty, the network
図3Bは、本発明の代替実施形態による、送信回路200の動作方法350の一例を示すフローチャートを示している。方法350は、方法300と同様であり、結果として、両方の方法に共通する要素を示すために同じ参照番号を利用する。
FIG. 3B shows a flowchart illustrating an
図3Bにおいて示されているように、方法350は、最初に352で方法300から分岐し、352で仮想スイッチ214は、送信仮想ポートvPORTaのうちのいずれかからフル信号が受信されたかどうかを特定する。フル信号は、送信仮想ポートvPORTaにおけるSEフレームが送信される準備ができているということを示す。仮想スイッチ214が送信仮想ポートvPORTaからフル信号を検知した場合には、方法350は354へ移り、354で仮想スイッチ214は、フル信号を出力する送信仮想ポートvPORTaからネットワーク物理ポート216へSEフレームを転送する。
As shown in FIG. 3B,
たとえば、仮想スイッチ214は、送信仮想ポートvPORTa1、送信仮想ポートvPORTa2、及び送信仮想ポートvPORTa3からフル信号を順次受信することが可能である。このケースにおいては、仮想スイッチ214は、SEフレームのシーケンスを出力し、そのシーケンスでは、第1のSEフレームは、送信仮想ポートvPORT1からのものであり、第2のフレームは、送信仮想ポートvPORT2からのものであり、第3のフレームは、送信仮想ポートvPORT3からのものである。
For example,
代替として、ソース(たとえば、STB、PC、ビデオソース)のうちの1つが、その他のソース(たとえば、STB、PC、ビデオソース)のデータレートよりもはるかに速いデータレートを有することがあり、そしてそのことによって、1つの送信仮想ポートvPORTaが、その他の送信仮想ポートvPORTaよりもはるかに頻繁にフル信号を出力する。 Alternatively, one of the sources (eg, STB, PC, video source) may have a much faster data rate than the other source (eg, STB, PC, video source), and Thereby, one transmitting virtual port vPORTa outputs a full signal much more often than the other transmitting virtual ports vPORTa.
たとえば、ネットワーク物理ポート216が、5フレーム/秒のフレームレートでフレームを送信する場合には、送信仮想ポートvPORTa2は、送信仮想ポートvPORTa1及びvPORTa3のフレームレートのうちのそれぞれよりも3倍速いレートでフレームを出力し、送信仮想ポートvPORTa2は、その他のポートの前に3回フルにシグナリングを行い、送信仮想ポートvPORTa1は、vPORTa3がシグナリングを行う前にシグナリングを行い、次いで仮想スイッチ214は、送信仮想ポートvPORT2からの第1のフレームと、送信仮想ポートvPORT2からの第2のフレームと、送信仮想ポートvPORT2からの第3のフレームと、送信仮想ポートvPORT1からの第4のフレームと、送信仮想ポートvPORT3からの第5のフレームとを含むフレームのシーケンスを転送する。
For example, if the network
フル信号を受信する順序が、仮想スイッチ214によって送信仮想ポートvPORTaからSEフレームが出力される順序を特定する先入れ先出しアプローチに加えて、送信仮想ポートvPORTa~vPORTanは、代替として、送信仮想ポートvPORTaからネットワーク物理ポートへ任意の量及び任意の順序でフレームが転送されることを可能にする優先度スキームを含むことが可能である。
In addition to the first-in-first-out approach in which the order in which full signals are received determines the order in which SE frames are output by
図3Bを再び参照すると、仮想スイッチ214が、フル信号を出力する送信仮想ポートvPORTaからネットワーク物理ポート216へSEフレームを転送した後に、方法350は356へ移り、356でネットワーク物理ポート216は、SEフレームを送信する。方法300においては、出力されることになるフレームは予測可能であり、その一方で、方法350において出力されることになるフレームは予測可能ではないが、優先度スキームは、あるレベルの予測可能性を提供する。
Referring again to FIG. 3B, after
図2Aの例を再び参照すると、フレーミング回路212は、仮想スイッチ220と、仮想スイッチ220に結合されているフレーマ222とを含む。仮想スイッチ220は、入力フレームのタイプ(たとえば、STB、PC、ビデオ)を検知し、フレームのそのタイプに対応する仮想ポートvPORTaへのフレームに関するルートを静的転送テーブルから特定し、そのフレームをその仮想ポートvPORTaへ向けて出力する。
Referring again to the example of FIG. 2A, framing
この例においては、仮想スイッチ220は、ローカルソースルータ/スイッチによって送信されたSTBフレームを受信し、その受信されたフレームがSTBフレームであることをそのSTBフレームにおけるソース及び/又は宛先MACアドレスから検知する。スイッチ220は次いで、STBフレームを受信するために事前に選択された仮想ポートvPORTa1へ向けてルーティングされている第1の仮想ポートラインP1上にSTBフレームを出力する。
In this example,
同様に、仮想スイッチ220は、ローカルソースルータ/スイッチによって送信されたPCフレームを受信し、その受信されたフレームがPCフレームであることをそのPCフレームにおけるソース及び/又は宛先MACアドレスから検知する。スイッチ220は次いで、PCフレームを受信するために事前に選択された仮想ポートvPORTa2へ向けてルーティングされている第2の仮想ポートラインP2上にPCフレームを出力する。
Similarly,
仮想スイッチ220はまた、ローカルルータ/スイッチによって送信されたビデオフレームを受信し、その受信されたフレームがビデオフレームであることをそのビデオフレームにおけるソース及び/又は宛先MACアドレスから検知し、次いで、ビデオフレームを受信するために事前に選択された仮想ポートvPORTa3へ向けてルーティングされている第3の仮想ポートラインP3上にビデオフレームを出力する。
フレーマ222は、仮想ポートラインP1上でSTBフレームを受信し、そのSTBフレームをカプセル化して、第1のカプセル化された(FE)STBフレームを形成し、次いでそのFE STBフレームを仮想ポートvPORTa1の送信キューへ転送する。同様に、フレーマ222は、仮想ポートラインP2上でPCフレームを受信し、そのPCフレームをカプセル化して、第1のカプセル化された(FE)PCフレームを形成し、次いでそのFE PCフレームを仮想ポートvPORTa2の送信キューへ転送する。フレーマ222はまた、仮想ポートラインP3上でビデオフレームを受信し、そのビデオフレームをカプセル化して、第1のカプセル化された(FE)ビデオフレームを形成し、次いでそのFEビデオフレームを仮想ポートvPORTa3の送信キューへ転送する。
フレーマ222は、プロバイダバックボーンブリッジトラフィックエンジニアリング(PBB-TE)プロトコル又はトランスポートマルチプロトコルラベルスイッチング(T-MPLS)プロトコルなどの従来のプロトコルを利用して、カプセル化されたフレームを生成することが可能である。加えて、FE STBフレーム、FE PCフレーム、及びFEビデオフレームはそれぞれ、仮想出口デバイスのIDを含むいくつかのフィールドを有するヘッダを有する。
たとえば、FEフレームのヘッダは、仮想出口デバイスのMACアドレスに関する出口アドレスフィールド、I-Tagフィールド、又は同様のフィールドを含むことが可能である。ヘッダは、仮想入口デバイスのMACアドレスなど、その他のフィールドを含むことも可能である。この例においては、仮想出口デバイスのMACアドレスは、管理上、仮想入口デバイスに提供される。 For example, the FE frame header may include an egress address field, an I-Tag field, or similar field for the MAC address of the virtual egress device. The header may also contain other fields, such as the MAC address of the virtual ingress device. In this example, the MAC address of the virtual egress device is administratively provided to the virtual ingress device.
送信回路200の仮想ポートvPORTa1におけるフレームフォーマッティング回路は、FE STBフレームを受信し、FE STBフレームのヘッダにおける、仮想出口デバイスのMACアドレスなど、仮想出口デバイスのIDに基づいて静的転送テーブルからFE STBフレームに関する仮想ネットワークにおけるネクストホップを特定し、FE STBフレームをカプセル化して、第2のカプセル化された(SE)STBフレームを形成する。
The frame formatting circuit at virtual port vPORTa1 of transmit
同様に、送信回路200の仮想ポートvPORTa2におけるフレームフォーマッティング回路は、FE PCフレームを受信し、FE PCフレームのヘッダにおける、仮想出口デバイスのMACアドレスなど、仮想出口デバイスのIDに基づいて静的転送テーブルからFE PCフレームに関する仮想ネットワークにおけるネクストホップを特定し、FE PCフレームをカプセル化して、第2のカプセル化された(SE)PCフレームを形成する。
Similarly, the frame formatting circuit at virtual port vPORTa2 of transmit
加えて、送信回路200の仮想ポートvPORTa3におけるフレームフォーマッティング回路は、FEビデオフレームを受信し、FEビデオフレームのヘッダにおける、仮想出口デバイスのMACアドレスなど、仮想出口デバイスのIDに基づいて静的転送テーブルからFEビデオフレームに関する仮想ネットワークにおけるネクストホップを特定し、FEビデオフレームをカプセル化して、第2のカプセル化された(SE)ビデオフレームを形成する。
In addition, the frame formatting circuit at virtual port vPORTa3 of transmit
SE STBフレーム、SE PCフレーム、及びSEビデオフレームはそれぞれ、仮想ネットワークにおけるネクストホップのMACアドレスを識別するネクストホップフィールドと、仮想入口デバイスの仮想ポート番号を識別するソースフィールドSrc_vIDと、仮想入口デバイスの仮想ポート番号に対応する仮想出口デバイスの仮想ポート番号を識別する宛先フィールドDst_vIDとを有するヘッダを含む。この例においては、SE STBフレームに関するソースフィールドSrc_vIDは、仮想ポートvPORTa1である。ラストホップフィールドなど、その他のフィールドが含まれることも可能である。 The SE STB frame, SE PC frame, and SE video frame each have a next hop field that identifies the MAC address of the next hop in the virtual network, a source field Src_vID that identifies the virtual port number of the virtual ingress device, and a virtual ingress device virtual port number. and a destination field Dst_vID identifying the virtual port number of the virtual egress device corresponding to the virtual port number. In this example, the source field Src_vID for the SE STB frame is the virtual port vPORTa1. Other fields may also be included, such as the last hop field.
さらに、仮想スイッチ214は、仮想ポートvPORTa1~vPORTanを循環し、それぞれの仮想ポートvPORTaから第2のカプセル化された(SE)フレームを順次転送して、一連のSEフレームを物理ポート216へ出力する。この例においては、スイッチ214は、仮想ポートvPORTa1から物理ポート216へSE STBフレームを転送し、続いて仮想ポートvPORTa2から物理ポート216へSE PCフレームを転送し、続いて仮想ポートvPORTa3から物理ポート216へSEビデオフレームを転送し、続いて仮想ポートvPORTa1から物理ポート216へSE STBフレームを転送し、そして引き続き同じ様式で、物理ポート216がそれらのフレームを出力する。図2は、送信回路200を、単一のローカルルータ/スイッチからの入力を受信してそれに伴って動作するものとして示しているが、送信回路200は、代替として、複数のルータ/スイッチからの入力を受信してそれに伴って動作することが可能である。
In addition,
図2Bは、本発明による送信回路250の一例を示すブロック図を示している。送信回路250は、送信回路200と同様であり、結果として、送信回路200及び送信回路250の両方に共通する要素を示すために同じ参照番号を利用する。
FIG. 2B shows a block diagram illustrating an example of a transmit
図2Bにおいて示されているように、送信回路250は、送信回路250が第1のネットワーク物理ポート216A及び第2のネットワーク物理ポート216Bを含み、それらの両方が仮想スイッチ214に結合されているという点で送信回路200とは異なる。加えて、仮想スイッチ214は、送信仮想ポートvPORTa1とネットワーク物理ポート216Aとの間における連続接続を提供する。さらに、追加の送信仮想ポートvPORTa4が示されている。
As shown in FIG. 2B,
送信回路250は、送信回路200と実質的に同じに動作するが、ソース(たとえば、STB、PC、又はビデオソース)のうちの1つ又は複数が、ネットワーク物理ポート216A及び216Bの最大フレームレートよりも大きいフレームレートでデータのフレームを出力するという点が異なる。たとえば、ネットワーク物理ポート216A及び216Bのそれぞれは、5フレーム/秒の最大フレームレートを有することが可能である。
Transmit
図2Bの例においては、セットトップボックスは、毎秒7つのSTBフレームを出力し、パーソナルコンピュータは、毎秒2つのPCフレームを出力し、ビデオデバイスは、毎秒1つのビデオフレームを出力する。(挙げられている数は、例示の目的のためのものにすぎない。)図2Bにおいて示されているように、7つのSTBフレームのうちの5つが、ネットワーク物理ポート216Aから送信され、その一方で、残りの2つのSTBフレーム、2つのPCフレーム、及び1つのビデオフレームが、方法300及び350によって示されている様式でネットワーク物理ポート216Bから送信される。送信回路250の利点のうちの1つは、送信回路250が、ネットワーク物理ポートの最大フレームレートよりも大きい着信フレームレートを取り扱うことが可能であるということである。
In the example of FIG. 2B, the set top box outputs 7 STB frames per second, the personal computer outputs 2 PC frames per second, and the
図4は、本発明の代替実施形態による送信回路400の一例を示すブロック図を示している。送信回路400は、送信回路200と同様であり、結果として、両方の回路に共通する構造を示すために同じ参照番号を利用する。
FIG. 4 shows a block diagram illustrating an example of a transmit
図4において示されているように、送信回路400は、送信回路400のフレーミング回路212が、フレーマ222が後に続く仮想スイッチ220の代わりに、仮想ポートvPORTa1~vPORTanに結合されているシリアルツーパラレル仮想スイッチ412が後に続くシリアルツーシリアルフレーマ410を利用するという点で送信回路200とは異なる。
As shown in FIG. 4, transmit
さらなる代替実施形態においては、送信回路400のフレーマ410及び仮想スイッチ412は、物理的に分離されることが可能であり、それに伴ってフレーマ410は、ローカルルータ/スイッチへと組み込まれる。
In a further alternative embodiment,
図5は、本発明による送信回路500の一例を示すブロック図を示している。送信回路500は、送信回路400と同様であり、結果として、回路400及び回路500の両方に共通する構造を示すために同じ参照番号を利用する。図5において示されている例において示されているように、STB、PC、及びビデオフレームを受信及び出力するローカルルータ/スイッチの代わりに、ローカルフレーマルータ/スイッチ510が送信回路500と共に利用されている。
FIG. 5 shows a block diagram illustrating an example of a
図6は、本発明による受信回路600の一例を示すブロック図を示している。図6において示されているように、受信回路600は、ネットワーク物理ポート610と、ネットワーク物理ポート610に結合されている受信仮想スイッチ612とを含む。受信回路600はまた、スイッチ612に結合されているいくつかの受信仮想ポートvPORTb1~vPORTbnを含む。そしてそれぞれの受信仮想ポートvPORTbは、受信キュー及び受信フレームフォーマッティング回路を含む。受信回路600は、受信仮想ポートvPORTbのうちのそれぞれに結合されているデフレーミング回路614と、デフレーミング回路614に結合されているローカル物理ポート616とをさらに含む。
FIG. 6 shows a block diagram illustrating an example of a receiving
図7は、本発明による、受信回路600の動作方法700の一例を示すフローチャートを示している。図7において示されているように、方法700は、710においてネットワーク物理ポート610が仮想ネットワークから一連の第3のカプセル化された(TE)フレームを受信することから始まる。TEフレームは、ネクストホップアドレスと受信仮想ポート識別子とを含むヘッダを有する。
FIG. 7 shows a flow chart illustrating an
次に、方法700は712へ移り、712でネットワーク物理ポート610は、SEフレームを調べてネクストホップアドレスを特定し、そのネクストホップアドレスを、格納されているアドレスに比較する。この後に、方法700は714へ移り、714でネットワーク物理ポート610は、一致するネクストホップアドレスを有するTEフレームを、一致するカプセル化された(ME)フレームとして転送する。加えて、ポート610は、ネクストホップアドレスのアイデンティティが、格納されているアドレスと一致しない場合には、受信されたTEフレームをドロップする。
The
この後、方法700は716へ移り、716で受信仮想スイッチ612は、MEフレームのヘッダにおける受信仮想ポート識別子に基づいてMEフレームを切り替え可能に渡す。方法700は次いで718へ移り、718で受信仮想ポートvPORTb1~vPORTbnは、切り替え可能に渡されたMEフレームをアンパックして、切り替え可能に渡されたMEフレームから第1のカプセル化されたフレームを抽出し、それによって、それぞれの受信仮想ポートvPORTbは、MEフレームをアンパックして、第4のカプセル化されたフレームを抽出する。受信仮想ポートは、共有メモリの第2の部分を占有する。
The
これに続いて、方法700は720へ移り、720でデフレーミング回路614は、第4のカプセル化されたフレームをアンパックして、第4のカプセル化されたフレームから当初のSTB、PC、及びビデオ入力フレームを抽出する。当初のSTB、PC、及びビデオ入力フレームは、リモートルータ/スイッチからのものであり、いくつかのフレームタイプを有する。さらに、それぞれの入力フレームは、宛先ルータ/スイッチを識別するヘッダを有する。方法700は次いで722へ移り、722でデフレーミング回路614は、STB、PC、及びビデオフレームをローカル物理ポート616へ転送し、ローカル物理ポート616は、当初のSTB、PC、及びビデオフレームを、ローカルルータ/スイッチへ出力する。
Following this, the
この例においては、仮想スイッチ612は、ネットワーク物理ポート610からME STBフレームを受信し、ME STBフレームのヘッダにおける宛先仮想ポート番号Dst_vIDから、宛先仮想ポートが仮想ポートvPORTb1であると特定する。加えて、スイッチ612は、仮想ポートvPORTb1へのルートを静的転送テーブルから特定し、次いで仮想ポートvPORTb1へ向けてルーティングされている第1の仮想ポートライン上にME STBフレームを出力する。
In this example, the
同様に、仮想スイッチ612は、ネットワーク物理ポート610からME PCフレームを受信し、ME PCフレームのヘッダにおける宛先仮想ポート番号Dst_vIDから、宛先仮想ポートが仮想ポートvPORTb2であると特定する。さらに、スイッチ612は、仮想ポートvPORTb2へのルートを静的転送テーブルから特定し、次いで仮想ポートvPORTb2へ向けてルーティングされている第2の仮想ポートライン上にME PCフレームを出力する。
Similarly,
加えて、仮想スイッチ612は、ネットワーク物理ポート610からMEビデオフレームを受信し、MEビデオフレームのヘッダにおける宛先仮想ポート番号Dst_vIDから、宛先仮想ポートが仮想ポートvPORTb3であると特定する。スイッチ612は、仮想ポートvPORTb3へのルートを静的転送テーブルから特定し、次いで仮想ポートvPORTb3へ向けてルーティングされている第3の仮想ポートライン上にMEビデオフレームを出力する。
In addition,
仮想ポートvPORTb1~vPORTbnは、MEフレームを受信し、MEフレームをアンパックして、MEフレームから、第4のカプセル化されたSTBフレーム、第4のカプセル化されたPCフレーム、及び第4のカプセル化されたビデオフレームなど、第4のカプセル化されたフレームを抽出する。図6の例においては、第1の仮想ポートvPORTb1の受信キューは、ME STBフレームを受信し、その一方で、仮想ポートvPORTb1のフレームフォーマッティング回路は、ME STBフレームをアンパックして、FE STBフレームを抽出し、第4のカプセル化されたSTBフレームは、仮想出口デバイスのアイデンティティを含むヘッダを有する。 The virtual ports vPORTb1-vPORTbn receive the ME frame, unpack the ME frame, and from the ME frame, the fourth encapsulated STB frame, the fourth encapsulated PC frame, and the fourth encapsulation Extract the fourth encapsulated frame, such as the encoded video frame. In the example of FIG. 6, the receive queue of the first virtual port vPORTb1 receives ME STB frames, while the frame formatting circuit of virtual port vPORTb1 unpacks the ME STB frames to generate FE STB frames. The extracted, fourth encapsulated STB frame has a header containing the identity of the virtual egress device.
同様に、第2の仮想ポートvPORTb2の受信キューは、ME PCフレームを受信し、その一方で、仮想ポートvPORTb2のフレームフォーマッティング回路は、ME PCフレームをアンパックして、第4のカプセル化されたPCフレームを抽出し、その第4のカプセル化されたPCフレームは、仮想出口デバイスのアイデンティティを含むヘッダを有する。加えて、第3の仮想ポートvPORTb3の受信キューは、MEビデオフレームを受信し、その一方で、仮想ポートvPORTb3のフレームフォーマッティング回路は、MEビデオフレームをアンパックして、第4のカプセル化されたビデオフレームを抽出し、その第4のカプセル化されたビデオフレームは、仮想出口デバイスのアイデンティティを含むヘッダを有する。 Similarly, the receive queue of the second virtual port vPORTb2 receives ME PC frames, while the frame formatting circuit of virtual port vPORTb2 unpacks the ME PC frames into a fourth encapsulated PC Extract the frame, the fourth encapsulated PC frame has a header containing the identity of the virtual egress device. In addition, the receive queue of the third virtual port vPORTb3 receives ME video frames while the frame formatting circuit of virtual port vPORTb3 unpacks the ME video frames to produce a fourth encapsulated video A frame is extracted, the fourth encapsulated video frame of which has a header containing the identity of the virtual egress device.
デフレーミング回路614は、複数の第4のカプセル化されたフレームを受信し、それらの第4のカプセル化されたフレームから当初のSTB、PC、及びビデオ入力フレームを抽出する。それらの入力フレームは、いくつかのフレームタイプ、たとえば、STB、PC、ビデオを有する。それぞれの入力フレームは、宛先ルータ/スイッチのアイデンティティを含むヘッダを有する。それぞれの受信された第4のカプセル化されたフレームに関して、デフレーミング回路614は、第4のカプセル化されたフレームをアンパックして入力フレームを抽出し、入力フレームのヘッダから宛先ルータ/スイッチのアイデンティティを特定し、入力フレームをローカル物理ポート616へ出力し、ローカル物理ポート616は、宛先ルータ/スイッチへ入力フレームを出力する。
A
図6において示されているように、デフレーミング回路614は、デフレーマ620と、デフレーマ620に結合されている仮想スイッチ622とを含む。動作中に、デフレーマ620は、複数の受信仮想ポートvPORTb1~vPORTbnから第4のカプセル化されたフレームを受信し、第4のカプセル化されたフレームをアンパックして、当初の入力フレーム、たとえば、STBフレーム、PCフレーム、及びビデオフレームを抽出し、そのSTBフレーム、PCフレーム、及びビデオフレームを仮想スイッチ622へ転送する。
As shown in FIG. 6,
図6の例においては、デフレーマ620は、受信仮想ポートvPORTb1から第4のカプセル化されたSTBフレームを受信し、第4のカプセル化されたフレームをアンパックしてSTBフレームを抽出し、そのSTBフレームを仮想スイッチ622へ転送する。同様に、デフレーマ620は、受信仮想ポートvPORTb2から第4のカプセル化されたPCフレームを受信し、第4のカプセル化されたフレームをアンパックしてPCフレームを抽出し、そのPCフレームを仮想スイッチ622へ転送する。加えて、デフレーマ620は、受信仮想ポートvPORTb3から第4のカプセル化されたビデオフレームを受信し、第4のカプセル化されたフレームをアンパックしてビデオフレームを抽出し、そのビデオフレームを仮想スイッチ622へ転送する。デフレーマ620は、フレーマ222と同じ又は異なるプロトコルを利用することが可能である。
In the example of FIG. 6,
仮想スイッチ622は、デフレーマ620の出力を循環して、出力フレームを順次受信してローカル物理ポート616へ転送する。この例においては、仮想スイッチ622は、デフレーマ620からSTBフレームを受信し、宛先ルータ/スイッチのMACアドレスを検知し、STBフレームをローカル物理ポート616へ出力する。同様に、仮想スイッチ622は、デフレーマ620からPCフレームを受信し、宛先ルータ/スイッチのMACアドレスを検知し、PCフレームをローカル物理ポート616へ出力する。加えて、仮想スイッチ622は、デフレーマ620からビデオフレームを受信し、宛先ルータ/スイッチのMACアドレスを検知し、ビデオフレームをローカル物理ポート616へ出力する。そしてローカル物理ポート616は、それらのフレームをローカルルータ/スイッチへ出力する。
図6の例は、パラレルツーパラレルデフレーマ620と、それに続くパラレルツーシリアル仮想スイッチ622とを有するデフレーミング回路614を示している。デフレーミング回路614は、代替として、その他の回路構成を用いて実現されることが可能である。たとえば、デフレーミング回路614は、仮想ポートvPORTb1~vPORTbnに結合されているシリアルツーパラレル仮想スイッチと、それに続くシリアルツーシリアルフレーマとを用いて実装されることが可能である。
The example of FIG. 6 shows a
図8は、本発明の代替実施形態による受信回路800の一例を示すブロック図を示している。受信回路800は、受信回路600と同様であり、結果として、両方の回路に共通する構造を示すために同じ参照番号を利用する。
FIG. 8 shows a block diagram illustrating an example of a
図8において示されているように、受信回路800は、受信回路800のフレーミング回路614が、シリアルツーシリアルデフレーマ812が後に続く、仮想ポートvPORTb1~vPORTbnに結合されているパラレルツーシリアル仮想スイッチ810を含むという点で受信回路600とは異なる。フレーミング回路212及びデフレーミング回路614の実装は、入れ替えられることが可能である。たとえば、仮想ネットワークデバイス100は、仮想スイッチ220とフレーマ222とを用いて実装されているフレーミング回路212を利用することが可能であり、その一方でデフレーミング回路614は、仮想スイッチ810とデフレーマ812とを用いて実装されることが可能である。
As shown in FIG. 8, the receive
さらなる代替実施形態においては、仮想スイッチ810及びデフレーマ812は、物理的に分離されることが可能であり、それに伴ってデフレーマ812は、ローカルルータ/スイッチへと組み込まれる。
In a further alternative embodiment,
図9は、本発明による受信回路900の一例を示すブロック図を示している。受信回路900は、受信回路800と同様であり、結果として、回路800及び回路900の両方に共通する構造を示すために同じ参照番号を利用する。図9において示されている例において示されているように、ローカルルータスイッチの代わりに、ローカルデフレーマルータ/スイッチ910が受信回路900において利用されている。
FIG. 9 shows a block diagram illustrating an example of a receiving
本発明の利点のうちの1つは、本発明が、STB、PC、及びビデオフレームの複数のストリームを、いくつかの仮想ポートを介して単一の仮想フレームストリームへと組み合わせ、そしてこのことが、利用可能な物理ポートの数を実質的に増やすということである。 One of the advantages of the present invention is that it combines multiple streams of STB, PC, and video frames into a single virtual frame stream through several virtual ports, and this , which effectively increases the number of available physical ports.
ここでは、本開示のさまざまな実施形態に対して詳細に言及が行われてきたが、それらの実施形態の例が、添付の図面において示されている。さまざまな実施形態に関連して記述が行われているが、これらのさまざまな実施形態は、本開示を限定することを意図されているものではないということが理解されるであろう。それどころか、本開示は、特許請求の範囲に従って解釈された際に本開示の範囲内に含まれることが可能である代替物、修正物、及び均等物をカバーすることを意図されている。 Reference has now been made in detail to various embodiments of the disclosure, examples of which are illustrated in the accompanying drawings. Although described in connection with various embodiments, it will be understood that these various embodiments are not intended to limit the present disclosure. On the contrary, the disclosure is intended to cover alternatives, modifications, and equivalents that may fall within the scope of the disclosure when interpreted according to the claims.
さらに、本開示のさまざまな実施形態についての前述の詳細な説明においては、本開示の徹底的な理解を提供するために多くの具体的な詳細が示されている。しかしながら、本開示は、これらの具体的な詳細を伴わずに、又はそれらの均等物を伴って実施されることが可能であるということが当技術分野における普通のスキルを有する者によって認識されるであろう。その他の場合においては、本開示のさまざまな実施形態の態様を不必要にわかりにくくすることのないように、よく知られている方法、手順、コンポーネント、及び回路は、詳細に記述されていない。 Moreover, in the foregoing detailed descriptions of various embodiments of the disclosure, numerous specific details are set forth in order to provide a thorough understanding of the disclosure. However, it will be recognized by those of ordinary skill in the art that the present disclosure may be practiced without these specific details, or with equivalents thereof. Will. In other instances, well-known methods, procedures, components and circuits have not been described in detail so as not to unnecessarily obscure aspects of the various embodiments of the disclosure.
本明細書においては、明確さのために、番号付けされたオペレーションどうしのシーケンスとして方法が示されている場合があるが、その番号付けは、必ずしもオペレーションどうしの順序を示しているとは限らないということに留意されたい。オペレーションのうちのいくつかは、スキップされること、並列に実行されること、又はシーケンスの厳密な順序を保持する必要性を伴わずに実行されることが可能であるということを理解されたい。 Although methods may be presented herein as a sequence of numbered operations for clarity, the numbering does not necessarily indicate the order of the operations. Please note that. It should be appreciated that some of the operations can be skipped, performed in parallel, or performed without the need to preserve the strict order of the sequence.
本開示によるさまざまな実施形態を示している図面は、半図式的であり、縮尺どおりではなく、特に、寸法のうちのいくつかは、提示の明確さのためのものであり、描かれている図においては誇張されて示されている。同様に、図面における眺めは、説明の容易さのために一般に同様の向きを示しているが、図におけるこの描写は、ほとんどの部分に関して任意である。一般に、本開示によるさまざまな実施形態は、任意の向きで動作されることが可能である。 The drawings showing various embodiments according to the present disclosure are semi-schematic and not to scale, in particular some of the dimensions are for clarity of presentation and drawn It is exaggerated in the drawing. Similarly, views in the drawings generally show similar orientations for ease of illustration, but this depiction in the figures is for the most part arbitrary. In general, various embodiments according to the present disclosure can be operated in any orientation.
詳細な説明のいくつかの部分は、コンピュータメモリ内のデータビット上でのオペレーションの手順、論理ブロック、処理、及びその他のシンボル表示という点から提示されている。これらの説明及び表示は、データ処理技術分野における技術者が自分の作業の実体を他の当業者たちに効果的に伝達するために使用されている。 Some portions of the detailed description are presented in terms of procedures, logic blocks, processing, and other symbolic representations of operations on data bits within a computer memory. These descriptions and representations are the means used by those skilled in the data processing arts to effectively convey the substance of their work to others skilled in the art.
本開示においては、手順、論理ブロック、プロセスなどは、所望の結果へつながるオペレーション又は命令の首尾一貫したシーケンスであると考えられる。それらのオペレーションは、物理量の物理的な操作を利用するオペレーションである。通常、必須ではないが、これらの量は、コンピューティングシステムにおいて、格納されること、転送されること、組み合わされること、比較されること、及びその他の形で操作されることが可能な電気信号又は磁気信号の形態を取る。トランザクション、ビット、値、要素、シンボル、文字、サンプル、ピクセルなどとしてこれらの信号を指すことが、主として共通の使用という理由から、時として好都合であることがわかっている。 In this disclosure, a procedure, logic block, process, etc., is conceived to be a coherent sequence of operations or instructions leading to a desired result. These operations are those that employ physical manipulations of physical quantities. Usually, though not necessarily, these quantities are electrical signals capable of being stored, transferred, combined, compared, and otherwise manipulated in a computing system. or take the form of a magnetic signal. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as transactions, bits, values, elements, symbols, characters, samples, pixels, or the like.
しかしながら、これら及び類似の用語のすべては、適切な物理量に関連付けられるものであり、それらの量に適用される便宜上のラベルにすぎないということに留意されたい。特に別段の記載がない限り、以降の論考から明らかなように、本開示の全体を通じて、「生成する」、「特定する」、「割り振る」、「集約する」、「利用する」、「仮想化する」、「処理する」、「アクセスする」、「実行する」、「格納する」等などの用語を利用している論考は、コンピュータシステム、又は類似の電子コンピューティングデバイス若しくはプロセッサのアクション及びプロセスを指すということが理解される。 Note, however, that all of these and similar terms are associated with appropriate physical quantities and are merely convenient labels applied to those quantities. Throughout this disclosure, unless otherwise stated, “generate,” “identify,” “allocate,” “aggregate,” “utilize,” “virtualize,” Discussion utilizing terms such as "do", "process", "access", "execute", "store" and the like refer to the actions and processes of a computer system or similar electronic computing device or processor. is understood to refer to
コンピューティングシステム、又は類似の電子コンピューティングデバイス若しくはプロセッサは、コンピュータシステムのメモリ、レジスタ、その他のそのような情報ストレージ、及び/又はその他のコンピュータ可読媒体内の物理的な(電子的な)量として表されているデータを操作して、同様にコンピュータシステムのメモリ、又はレジスタ、又はその他のそのような情報ストレージ、送信、若しくは表示デバイス内の物理的な量として表されるその他のデータへと変換する。 A computing system, or similar electronic computing device or processor, as a physical (electronic) quantity in the computer system's memory, registers, other such information storage, and/or other computer-readable medium manipulating represented data to transform it into other data similarly represented as physical quantities within the memory or registers of a computer system or other such information storage, transmission, or display device do.
前のセクションにおいては、本出願の実施形態の図面を参照しながら、本出願の実施形態における技術的な解決策が明確に且つ完全に記述されている。本発明の説明及び特許請求の範囲における、並びに上記の図面における「第1の」、「第2の」などの用語は、類似の対象どうしを区別するために使用されており、必ずしも特定のシーケンス又は順序を記述するために使用されているとは限らないということに留意されたい。これらの数は、適切な場合には、入れ替えられることが可能であり、それによって、本明細書において記述されている本発明の実施形態は、本明細書において示されている又は記述されている順序以外の順序で実施されることが可能であるということを理解されたい。 In the previous section, the technical solutions in the embodiments of the present application are clearly and completely described with reference to the drawings of the embodiments of the present application. Terms such as "first", "second", etc. in the description and claims of the present invention and in the above drawings are used to distinguish between similar objects and are not necessarily in a particular sequence. Note that they are not necessarily used to describe order. These numbers can be interchanged, where appropriate, so that the embodiments of the invention described herein are shown or described herein. It should be understood that the steps may be performed out of order.
この実施形態の方法において記述されている機能は、ソフトウェア機能ユニットの形態で実装されて、独立した製品として販売又は使用される場合には、コンピューティングデバイス可読記憶媒体に格納されることが可能である。そのような理解に基づいて、従来技術に寄与する本出願の実施形態のうちの一部分、又は技術的な解決策の一部分は、本出願のさまざまな実施形態において記述されている方法のステップのうちのすべて又は一部をコンピューティングデバイス(これは、パーソナルコンピュータ、サーバ、モバイルコンピューティングデバイス、又はネットワークデバイスなどであることが可能である)に実行させるための複数の命令を含む、記憶媒体に格納されているソフトウェア製品の形態で具体化されることが可能である。前述の記憶媒体は、USBドライブ、ポータブルハードディスク、読み取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク、光ディスクなどを含み、それらは、プログラムコードを格納することが可能である。 The functionality described in the method of this embodiment can be implemented in the form of software functional units and stored in a computing device readable storage medium when sold or used as an independent product. be. Based on such an understanding, some of the embodiments of the present application or some of the technical solutions that contribute to the prior art are the steps of the methods described in the various embodiments of the present application. stored on a storage medium containing a plurality of instructions for causing a computing device (which can be a personal computer, server, mobile computing device, network device, etc.) to execute all or part of It can be embodied in the form of a software product that is Such storage media include USB drives, portable hard disks, read only memory (ROM), random access memory (RAM), magnetic disks, optical disks, etc., which are capable of storing program code.
本出願の明細書におけるさまざまな実施形態は、進展する様式で記述されており、それぞれの実施形態は、その他の実施形態からの自らの相違に焦点を合わせており、さまざまな実施形態の間における同じ又は同様の部分どうしは、別のケースに参照されることが可能である。記述されている実施形態は、本出願の実施形態のうちのすべてというよりはむしろ、実施形態のうちの一部にすぎない。本発明のスキルから逸脱することなく、本出願の実施形態に基づいて、当技術分野における普通のスキルを有する者によって得られるその他のすべての実施形態は、本出願の範囲内にある。 Various embodiments in the specification of the present application are described in a progressive fashion, with each embodiment focusing on its own differences from other embodiments and the differences between the various embodiments. Same or similar parts can be referred to in different cases. The described embodiments are merely some, rather than all, of the embodiments of the present application. All other embodiments that can be obtained by persons of ordinary skill in the art based on the embodiments of this application without departing from the skill of the present invention are within the scope of this application.
開示されている実施形態についての上記の説明は、当業者が本出願を作成又は使用することを可能にする。これらの実施形態に対するさまざまな修正は、当業者にとって明らかであり、本明細書において定義されている一般的な原理は、本出願の趣旨又は範囲から逸脱することなく、その他の実施形態において実施されることが可能である。そのため、本出願は、本明細書において示されている実施形態に限定されず、本明細書において開示されている原理及び新規な特徴と整合する最も広い範囲である。 The above description of the disclosed embodiments will enable any person skilled in the art to make or use the present application. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of this application. It is possible to Therefore, the present application is not limited to the embodiments shown herein, but is the broadest scope consistent with the principles and novel features disclosed herein.
Claims (20)
前記フレーミング回路に結合されている複数の送信仮想ポートであって、前記複数の第1のカプセル化されたフレームの前記ヘッダにおける前記仮想出口デバイスに基づいて前記複数の第1のカプセル化されたフレームに関する仮想ネットワークにおける複数のネクストホップを特定し、前記複数の第1のカプセル化されたフレームをカプセル化して、複数の第2のカプセル化されたフレームを形成するための複数の送信仮想ポートであり、それぞれの第2のカプセル化されたフレームが、ヘッダを有し、第2のカプセル化されたフレームの前記ヘッダが、第1のカプセル化されたフレームのネクストホップに基づいて前記第2のカプセル化されたフレームのネクストホップを、そして入力フレームの前記関連付けられている仮想出口デバイスの前記受信仮想ポートを識別する、複数の送信仮想ポートと、
前記複数の送信仮想ポートに結合されている送信仮想スイッチであって、前記送信仮想ポートをネットワーク物理ポートに選択的に結合するための送信仮想スイッチと、
を備える仮想ネットワークデバイス。 receiving a plurality of input frames; examining the plurality of input frames to identify a frame type for each input frame; and based on the frame type, identifying a virtual egress device associated with each input frame. , a framing circuit for encapsulating the plurality of input frames to form a plurality of first encapsulated frames, each virtual egress device having a receive virtual port; a framing circuit, wherein one encapsulated frame has a plurality of headers, the plurality of headers identifying a plurality of virtual egress devices associated with the plurality of input frames;
A plurality of transmit virtual ports coupled to the framing circuit for the plurality of first encapsulated frames based on the virtual egress devices in the headers of the plurality of first encapsulated frames. a plurality of transmit virtual ports for identifying a plurality of next hops in a virtual network for and encapsulating the plurality of first encapsulated frames to form a plurality of second encapsulated frames; , each second encapsulated frame has a header, and the header of the second encapsulated frame determines the size of the second encapsulated frame based on the next hop of the first encapsulated frame. a plurality of transmitting virtual ports that identify the next hop of the encoded frame and the receiving virtual port of the associated virtual egress device of the input frame;
a transmitting virtual switch coupled to the plurality of transmitting virtual ports for selectively coupling the transmitting virtual ports to network physical ports;
A virtual network device with
前記フレームタイプに基づいて送信仮想ポートへのフレームに関するルートを特定し、前記フレームを前記送信仮想ポートへ向けて出力する仮想スイッチと、
前記仮想スイッチに結合されているフレーマであって、前記入力フレームをカプセル化するためのフレーマと、
を含む、請求項1に記載の仮想ネットワークデバイス。 The framing circuit
a virtual switch that identifies a route for a frame to a transmission virtual port based on the frame type and outputs the frame toward the transmission virtual port;
a framer coupled to the virtual switch for encapsulating the input frame;
2. The virtual network device of claim 1, comprising:
前記受信物理ポートに結合されている受信仮想スイッチであって、前記一致するカプセル化されたフレームの前記ヘッダにおける前記受信仮想ポート識別子に基づいて前記一致するカプセル化されたフレームを切り替え可能に渡すための受信仮想スイッチと、
前記受信仮想スイッチに結合されている複数の受信仮想ポートであって、前記切り替え可能に渡された一致するカプセル化されたフレームをアンパックして、複数の一致するカプセル化された前記フレームから複数の第4のカプセル化されたフレームを抽出するための複数の受信仮想ポートであり、それによって、それぞれの受信仮想ポートが、一致するカプセル化されたフレームをアンパックして、第4のカプセル化されたフレームを抽出し、前記受信仮想ポートが、前記共有メモリの第2の部分を含む、複数の受信仮想ポートと、
前記複数の受信仮想ポートに結合されているデフレーミング回路であって、前記複数の第4のカプセル化されたフレームをアンパックして、前記複数の第4のカプセル化されたフレームから複数の出力フレームを抽出するためのデフレーミング回路であり、前記複数の出力フレームが、複数のフレームタイプを有し、それぞれの出力フレームが、宛先ルータ/スイッチを識別するヘッダを有する、デフレーミング回路と、
をさらに備える、請求項6に記載の仮想ネットワークデバイス。 Receive a plurality of third encapsulated frames, examine the plurality of third encapsulated frames to identify a plurality of frame destinations, and compare the plurality of frame destinations to a stored destination. and forwarding the third encapsulated frame as a matching encapsulated frame with a matching destination, wherein the plurality of third encapsulated frames and the matching encapsulation a receiving physical port, wherein the encoded frame has a plurality of headers, the plurality of headers having a plurality of receiving virtual port identifiers;
A receiving virtual switch coupled to the receiving physical port for switchably passing the matching encapsulated frame based on the receiving virtual port identifier in the header of the matching encapsulated frame. a receiving virtual switch of
a plurality of receive virtual ports coupled to the receive virtual switch for unpacking the switchably-passed matching encapsulated frames to generate a plurality of the matching encapsulated frames from the plurality of the matching encapsulated frames; a plurality of receive virtual ports for extracting a fourth encapsulated frame, whereby each receive virtual port unpacks a matching encapsulated frame to form a fourth encapsulated frame; a plurality of receive virtual ports for extracting frames, the receive virtual ports including a second portion of the shared memory;
a deframing circuit coupled to the plurality of receive virtual ports for unpacking the plurality of fourth encapsulated frames to produce a plurality of output frames from the plurality of fourth encapsulated frames; wherein the plurality of output frames have a plurality of frame types, each output frame having a header identifying a destination router/switch;
7. The virtual network device of claim 6, further comprising:
複数の入力フレームを受信するステップと、
前記複数の入力フレームを調べて、それぞれの入力フレームに関するフレームタイプを特定するステップと、
前記フレームタイプに基づいて、それぞれの入力フレームに関連付けられている仮想出口デバイスを特定するステップであり、それぞれの仮想出口デバイスが、受信仮想ポートを有する、ステップと、
前記複数の入力フレームをカプセル化して、複数の第1のカプセル化されたフレームを形成するステップであり、前記複数の第1のカプセル化されたフレームが、複数のヘッダを有し、前記複数のヘッダが、前記複数の入力フレームに関連付けられている複数の仮想出口デバイスを識別する、ステップと、
前記複数の第1のカプセル化されたフレームの前記ヘッダにおける前記仮想出口デバイスに基づいて前記複数の第1のカプセル化されたフレームに関する仮想ネットワークにおける複数のネクストホップを特定するステップと、
複数の送信仮想ポートにおいて複数の第1のカプセル化されたフレームをカプセル化して、複数の第2のカプセル化されたフレームを形成するステップであり、それぞれの第2のカプセル化されたフレームが、ヘッダを有し、第2のカプセル化されたフレームの前記ヘッダが、第1のカプセル化されたフレームのネクストホップに基づいて前記第2のカプセル化されたフレームのネクストホップを、そして入力フレームの前記関連付けられている仮想出口デバイスの前記受信仮想ポートを識別する、ステップと、
前記送信仮想ポートをネットワーク物理ポートに選択的に結合するステップと、
を含む方法。 A method of operating a virtual network device, comprising:
receiving a plurality of input frames;
examining the plurality of input frames to identify a frame type for each input frame;
identifying a virtual egress device associated with each input frame based on the frame type, each virtual egress device having a receiving virtual port;
encapsulating the plurality of input frames to form a plurality of first encapsulated frames, the plurality of first encapsulated frames having a plurality of headers, the plurality of a header identifying a plurality of virtual egress devices associated with the plurality of input frames;
identifying a plurality of next hops in a virtual network for the plurality of first encapsulated frames based on the virtual egress devices in the headers of the plurality of first encapsulated frames;
encapsulating a plurality of first encapsulated frames at a plurality of transmit virtual ports to form a plurality of second encapsulated frames, each second encapsulated frame comprising: a header of a second encapsulated frame, the header of the second encapsulated frame identifying the next hop of the second encapsulated frame based on the next hop of the first encapsulated frame; identifying the receiving virtual port of the associated virtual egress device;
selectively coupling the transmission virtual port to a network physical port;
method including.
前記複数の第3のカプセル化されたフレームを調べて、複数のフレーム宛先を特定するステップと、
前記複数のフレーム宛先を、格納されている宛先に比較するステップと、
前記第3のカプセル化されたフレームを、一致する宛先とともに、一致するカプセル化されたフレームとして転送するステップであって、前記複数の第3のカプセル化されたフレーム及び一致するカプセル化されたフレームが、複数のヘッダを有し、前記複数のヘッダが、複数の受信仮想ポート識別子を有する、ステップと、
前記一致するカプセル化されたフレームの前記ヘッダにおける前記受信仮想ポート識別子に基づいて前記一致するカプセル化されたフレームを切り替え可能に渡すステップと、
複数の受信仮想ポートにおいて前記切り替え可能に渡された一致するカプセル化されたフレームをアンパックして、複数の一致するカプセル化された前記フレームから複数の第4のカプセル化されたフレームを抽出するステップであって、それによって、それぞれの受信仮想ポートが、一致するカプセル化されたフレームをアンパックして、第4のカプセル化されたフレームを抽出し、前記受信仮想ポートが、前記共有メモリの第2の部分を含む、ステップと、
前記複数の第4のカプセル化されたフレームをアンパックして、前記複数の第4のカプセル化されたフレームから複数の出力フレームを抽出するステップであって、前記複数の出力フレームが、複数のフレームタイプを有し、それぞれの出力フレームが、宛先ルータ/スイッチを識別するヘッダを有する、ステップと、
をさらに含む、請求項15に記載の方法。 receiving a plurality of third encapsulated frames;
examining the plurality of third encapsulated frames to identify a plurality of frame destinations;
comparing the plurality of frame destinations to stored destinations;
forwarding the third encapsulated frame as a matching encapsulated frame with a matching destination, wherein the plurality of third encapsulated frames and the matching encapsulated frame; has a plurality of headers, said plurality of headers having a plurality of receiving virtual port identifiers;
switchably passing the matching encapsulated frame based on the received virtual port identifier in the header of the matching encapsulated frame;
unpacking the switchably passed matching encapsulated frames at a plurality of receive virtual ports to extract a plurality of fourth encapsulated frames from the plurality of matching encapsulated frames; whereby each receiving virtual port unpacks a matching encapsulated frame to extract a fourth encapsulated frame, and said receiving virtual port stores a second encapsulated frame in said shared memory; a step comprising a portion of
unpacking the plurality of fourth encapsulated frames to extract a plurality of output frames from the plurality of fourth encapsulated frames, wherein the plurality of output frames is a plurality of frames each outgoing frame having a header identifying a destination router/switch;
16. The method of claim 15, further comprising:
複数の入力フレームを受信するステップと、
前記複数の入力フレームを調べて、それぞれの入力フレームに関するフレームタイプを特定するステップと、
前記フレームタイプに基づいて、それぞれの入力フレームに関連付けられている仮想出口デバイスを特定するステップであり、それぞれの仮想出口デバイスが、受信仮想ポートを有する、ステップと、
前記複数の入力フレームをカプセル化して、複数の第1のカプセル化されたフレームを形成するステップであり、前記複数の第1のカプセル化されたフレームが、複数のヘッダを有し、前記複数のヘッダが、前記複数の入力フレームに関連付けられている複数の仮想出口デバイスを識別する、ステップと、
前記複数の第1のカプセル化されたフレームの前記ヘッダにおける前記仮想出口デバイスに基づいて前記複数の第1のカプセル化されたフレームに関する仮想ネットワークにおける複数のネクストホップを特定するステップと、
複数の送信仮想ポートにおいて複数の第1のカプセル化されたフレームをカプセル化して、複数の第2のカプセル化されたフレームを形成するステップであり、それぞれの第2のカプセル化されたフレームが、ヘッダを有し、第2のカプセル化されたフレームの前記ヘッダが、第1のカプセル化されたフレームのネクストホップに基づいて前記第2のカプセル化されたフレームのネクストホップを、そして入力フレームの前記関連付けられている仮想出口デバイスの前記受信仮想ポートを識別する、ステップと、
前記送信仮想ポートをネットワーク物理ポートに選択的に結合するステップと、
を含む、媒体。 A non-transitory computer-readable storage medium having program instructions embedded therein which, when executed by a processor, cause the processor to perform a method of operating a virtual network device, the method of operating comprising:
receiving a plurality of input frames;
examining the plurality of input frames to identify a frame type for each input frame;
identifying a virtual egress device associated with each input frame based on the frame type, each virtual egress device having a receiving virtual port;
encapsulating the plurality of input frames to form a plurality of first encapsulated frames, the plurality of first encapsulated frames having a plurality of headers, the plurality of a header identifying a plurality of virtual egress devices associated with the plurality of input frames;
identifying a plurality of next hops in a virtual network for the plurality of first encapsulated frames based on the virtual egress devices in the headers of the plurality of first encapsulated frames;
encapsulating a plurality of first encapsulated frames at a plurality of transmit virtual ports to form a plurality of second encapsulated frames, each second encapsulated frame comprising: a header of a second encapsulated frame, the header of the second encapsulated frame identifying the next hop of the second encapsulated frame based on the next hop of the first encapsulated frame; identifying the receiving virtual port of the associated virtual egress device;
selectively coupling the transmission virtual port to a network physical port;
medium, including
複数の第3のカプセル化されたフレームを受信するステップと、
前記複数の第3のカプセル化されたフレームを調べて、複数のフレーム宛先を特定するステップと、
前記複数のフレーム宛先を、格納されている宛先に比較するステップと、
それぞれの第3のカプセル化されたフレームを、一致する宛先とともに、一致するカプセル化されたフレームとして転送して、複数の一致するカプセル化されたフレームを転送するステップであって、前記複数の第3のカプセル化されたフレーム及び一致するカプセル化されたフレームが、複数のヘッダを有し、前記複数のヘッダが、複数の受信仮想ポート識別子を有する、ステップと、
前記一致するカプセル化されたフレームの前記ヘッダにおける前記受信仮想ポート識別子に基づいて前記一致するカプセル化されたフレームを切り替え可能に渡すステップと、
複数の受信仮想ポートにおいて前記切り替え可能に渡された一致するカプセル化されたフレームをアンパックして、前記複数の一致するカプセル化されたフレームから複数の第4のカプセル化されたフレームを抽出するステップであって、それによって、それぞれの受信仮想ポートが、一致するカプセル化されたフレームをアンパックして、第4のカプセル化されたフレームを抽出し、前記受信仮想ポートが、前記共有メモリの第2の部分を含む、ステップと、
前記複数の第4のカプセル化されたフレームをアンパックして、前記複数の第4のカプセル化されたフレームから複数の出力フレームを抽出するステップであって、前記複数の出力フレームが、複数のフレームタイプを有し、それぞれの出力フレームが、宛先ルータ/スイッチを識別するヘッダを有する、ステップと、
をさらに含む、請求項19に記載の媒体。 The method of operation comprises:
receiving a plurality of third encapsulated frames;
examining the plurality of third encapsulated frames to identify a plurality of frame destinations;
comparing the plurality of frame destinations to stored destinations;
forwarding each third encapsulated frame as a matching encapsulated frame with a matching destination to forward a plurality of matching encapsulated frames; the three encapsulated frames and the matching encapsulated frame having a plurality of headers, the plurality of headers having a plurality of receiving virtual port identifiers;
switchably passing the matching encapsulated frame based on the received virtual port identifier in the header of the matching encapsulated frame;
unpacking the switchably passed matching encapsulated frames at a plurality of receive virtual ports to extract a plurality of fourth encapsulated frames from the plurality of matching encapsulated frames; whereby each receiving virtual port unpacks a matching encapsulated frame to extract a fourth encapsulated frame, and said receiving virtual port stores a second encapsulated frame in said shared memory; a step comprising a portion of
unpacking the plurality of fourth encapsulated frames to extract a plurality of output frames from the plurality of fourth encapsulated frames, wherein the plurality of output frames is a plurality of frames each outgoing frame having a header identifying a destination router/switch;
20. The medium of claim 19, further comprising:
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/868,345 US11245645B2 (en) | 2020-04-02 | 2020-05-06 | Virtual network device |
US16/868,345 | 2020-05-06 | ||
PCT/CN2021/079987 WO2021223510A1 (en) | 2020-05-06 | 2021-03-10 | Virtual network device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023523915A true JP2023523915A (en) | 2023-06-08 |
Family
ID=78468629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022563954A Pending JP2023523915A (en) | 2020-05-06 | 2021-03-10 | virtual network device |
Country Status (8)
Country | Link |
---|---|
EP (1) | EP4147395A4 (en) |
JP (1) | JP2023523915A (en) |
KR (1) | KR20230006486A (en) |
CN (1) | CN115552819A (en) |
AU (2) | AU2021268768B2 (en) |
BR (1) | BR112022021767A2 (en) |
CO (1) | CO2022015545A2 (en) |
WO (1) | WO2021223510A1 (en) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8089964B2 (en) * | 2005-04-05 | 2012-01-03 | Cisco Technology, Inc. | Transporting multicast over MPLS backbone using virtual interfaces to perform reverse-path forwarding checks |
US8238340B2 (en) * | 2009-03-06 | 2012-08-07 | Futurewei Technologies, Inc. | Transport multiplexer—mechanisms to force ethernet traffic from one domain to be switched in a different (external) domain |
US8644194B2 (en) * | 2010-10-15 | 2014-02-04 | International Business Machines Corporation | Virtual switching ports on high-bandwidth links |
CN102238091B (en) * | 2011-07-22 | 2017-03-15 | 中兴通讯股份有限公司 | A kind of file transmitting method and access controller |
US10003495B1 (en) * | 2014-09-20 | 2018-06-19 | Cisco Technology, Inc. | Discovery protocol for enabling automatic bootstrap and communication with a service appliance connected to a network switch |
-
2021
- 2021-03-10 JP JP2022563954A patent/JP2023523915A/en active Pending
- 2021-03-10 WO PCT/CN2021/079987 patent/WO2021223510A1/en active Application Filing
- 2021-03-10 KR KR1020227038575A patent/KR20230006486A/en active Search and Examination
- 2021-03-10 BR BR112022021767A patent/BR112022021767A2/en unknown
- 2021-03-10 CN CN202180033164.2A patent/CN115552819A/en active Pending
- 2021-03-10 AU AU2021268768A patent/AU2021268768B2/en active Active
- 2021-03-10 EP EP21799925.9A patent/EP4147395A4/en active Pending
-
2022
- 2022-10-29 CO CONC2022/0015545A patent/CO2022015545A2/en unknown
-
2024
- 2024-02-21 AU AU2024201137A patent/AU2024201137A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2021223510A1 (en) | 2021-11-11 |
EP4147395A1 (en) | 2023-03-15 |
EP4147395A4 (en) | 2024-05-01 |
BR112022021767A2 (en) | 2022-12-13 |
KR20230006486A (en) | 2023-01-10 |
AU2024201137A1 (en) | 2024-03-14 |
AU2021268768A1 (en) | 2022-11-17 |
CO2022015545A2 (en) | 2022-11-08 |
AU2021268768B2 (en) | 2023-11-23 |
CN115552819A (en) | 2022-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11496401B2 (en) | Congestion notification packet indicating specific packet flow experiencing congestion to facilitate individual packet flow based transmission rate control | |
CN109194660B (en) | Network access method and device of mobile terminal | |
US6571291B1 (en) | Apparatus and method for validating and updating an IP checksum in a network switching system | |
US9736085B2 (en) | End-to end lossless Ethernet in Ethernet fabric | |
CN105791214B (en) | Method and equipment for converting RapidIO message and Ethernet message | |
US8949578B2 (en) | Sharing of internal pipeline resources of a network processor with external devices | |
US10205660B2 (en) | Apparatus and method for packet header compression | |
CN110855568A (en) | Message forwarding method and system | |
US8824468B2 (en) | System and method for parsing frames | |
US8340090B1 (en) | Interconnecting forwarding contexts using u-turn ports | |
US20220158954A1 (en) | Virtual network device | |
US20220303157A1 (en) | Virtual network | |
JP2023523915A (en) | virtual network device | |
JP2023525966A (en) | virtual network | |
US11894948B2 (en) | Method of forming a virtual network | |
JP2023530269A (en) | How to form a virtual network | |
JP5289340B2 (en) | Frame transfer apparatus, frame transfer system, and frame transfer method | |
WO2023168133A2 (en) | Packet wash of rtp aggregation packets in a video stream | |
CN117614894A (en) | UPF implementation method, system and device based on programmable switching chip | |
KR20000058551A (en) | High-Speed IP Packet Processor for Dual Ring-Based Layer 3 Switching Systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230220 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240319 |