JP7565376B2 - Virtual network device, method of operating a virtual network device and non-transitory computer-readable storage medium - Google Patents
Virtual network device, method of operating a virtual network device and non-transitory computer-readable storage medium Download PDFInfo
- Publication number
- JP7565376B2 JP7565376B2 JP2022563954A JP2022563954A JP7565376B2 JP 7565376 B2 JP7565376 B2 JP 7565376B2 JP 2022563954 A JP2022563954 A JP 2022563954A JP 2022563954 A JP2022563954 A JP 2022563954A JP 7565376 B2 JP7565376 B2 JP 7565376B2
- 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.)
- Active
Links
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
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0895—Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
- H04L41/122—Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/40—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
-
- 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
- H04L49/252—Store and forward routing
-
- 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 stream to a specific local network, e.g. a 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2212/00—Encapsulation of packets
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Input Circuits Of Receivers And Coupling Of Receivers And Audio Equipment (AREA)
- Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)
Description
本出願は、コンピュータネットワークの分野に関し、特に、仮想ネットワークデバイスに関する。 This application relates to the field of computer networks, and in particular to virtual network devices.
ワイドエリアネットワーク(WAN)は、ネットワークデバイスどうしの相互接続されているウェブであり、このウェブは典型的に、州全体にわたって、又は国全体にわたってなど、広い地理的エリアにわたってローカルエリアネットワーク又はメトロポリタンエリアネットワークを相互接続する。WANは、リモートに配置されているコンピュータどうしがネットワークデバイスを介して互いと通信することを可能にする。 A wide area network (WAN) is an interconnected web of network devices that typically interconnects local or metropolitan area networks over a large geographic area, such as across an entire state or country. WANs allow remotely located computers to communicate with each other through network devices.
従来のネットワークデバイスは典型的に、たとえば、10/100/1000Mbps(メガビット/秒)、10Gbps(ギガビット/秒)、40Gbps、及び100Gbpsの接続など、予め定められている固定されたデータレートで動作する1つ又は複数の物理ネットワークポートを含む。ネットワークを介したコンピュータシステムどうしの間における通信を可能にすることの一環として、従来のネットワークデバイスは、ネットワークポートの転送スピードをネゴシエートし、そのプロセス中に、ネットワークポートの転送スピードは固定される。 Traditional network devices typically include one or more physical network ports that operate at a predetermined, fixed data rate, such as, for example, 10/100/1000 Mbps (megabits per second), 10 Gbps (gigabits per second), 40 Gbps, and 100 Gbps connections. As part of enabling communication between computer systems over a network, traditional network devices negotiate the transfer speed of the network port, and during that 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 results in reduced service or costly upgrades. As a result, there is a need for an approach to accommodate the increasing need for ports.
本発明は、利用可能な物理ポートの数を実質的に増やす仮想ポートを有する仮想ネットワークデバイスを提供する。この仮想ネットワークデバイスは、フレーミング回路を含み、フレーミング回路は、複数の入力フレームを受信し、それらの複数の入力フレームを調べて、それぞれの入力フレームに関するフレームタイプを特定し、そのフレームタイプに基づいて、それぞれの入力フレームに関連付けられている仮想出口デバイスを特定する。フレーミング回路はまた、複数の入力フレームをカプセル化して、複数の第1のカプセル化されたフレームを形成する。それぞれの仮想出口デバイスは、受信仮想ポートを有する。複数の第1のカプセル化されたフレームは、複数のヘッダを有する。それらの複数のヘッダは、複数の入力フレームに関連付けられている複数の仮想出口デバイスを識別する。加えて、この仮想ネットワークデバイスは、フレーミング回路に結合されている複数の送信仮想ポートを含む。それらの複数の送信仮想ポートは、複数の第1のカプセル化されたフレームのヘッダにおける仮想出口デバイスに基づいて複数の第1のカプセル化されたフレームに関する仮想ネットワークにおける複数のネクストホップを特定する。複数の送信仮想ポートはさらに、複数の第1のカプセル化されたフレームをカプセル化して、複数の第2のカプセル化されたフレームを形成する。それぞれの第2のカプセル化されたフレームは、ヘッダを有する。第2のカプセル化されたフレームのヘッダは、第1のカプセル化されたフレームのネクストホップに基づいて第2のカプセル化されたフレームのネクストホップを、そして入力フレームの関連付けられている仮想出口デバイスの受信仮想ポートを識別する。送信仮想ポートは、メモリの第1の部分を含む。さらに、仮想ネットワークデバイスは、複数の送信仮想ポートに結合されている送信仮想スイッチを含む。その送信仮想スイッチは、送信仮想ポートをネットワーク物理ポートに選択的に結合する。 The present invention provides a virtual network device having 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 identifies a virtual exit device associated with each input frame based on the frame type. The framing circuit also encapsulates the plurality of input frames to form a plurality of first encapsulated frames. Each virtual exit device has a receiving virtual port. The plurality of first encapsulated frames has a plurality of headers. The plurality of headers identifies a plurality of virtual exit devices associated with the plurality of input frames. In addition, the virtual network device includes a plurality of transmitting virtual ports coupled to the framing circuit. The plurality of transmitting virtual ports identify a plurality of next hops in the virtual network for the plurality of first encapsulated frames based on the virtual exit devices in the headers of the plurality of first encapsulated frames. The plurality of transmitting virtual ports further encapsulates the plurality of first encapsulated frames to form a plurality of second encapsulated frames. Each second encapsulated frame has a header. The header of the second encapsulated frame identifies a next hop of the second encapsulated frame based on the next hop of the first encapsulated frame and a receiving virtual port of the associated virtual egress device of the input frame. The transmitting virtual port includes a first portion of memory. Additionally, the virtual network device includes an transmitting virtual switch coupled to the plurality of transmitting virtual ports. The transmitting virtual switch selectively couples the transmitting virtual ports to network physical ports.
本発明はまた、仮想ネットワークデバイスの動作方法を含む。この方法は、複数の入力フレームを受信するステップと、それらの複数の入力フレームを調べて、それぞれの入力フレームに関するフレームタイプを特定するステップと、そのフレームタイプに基づいて、それぞれの入力フレームに関連付けられている仮想出口デバイスを特定するステップとを含む。それぞれの仮想出口デバイスは、受信仮想ポートを有する。この方法はまた、複数の入力フレームをカプセル化して、複数の第1のカプセル化されたフレームを形成するステップを含む。複数の第1のカプセル化されたフレームは、複数のヘッダを有する。それらの複数のヘッダは、複数の入力フレームに関連付けられている複数の仮想出口デバイスを識別する。加えて、この方法は、複数の第1のカプセル化されたフレームのヘッダにおける仮想出口デバイスに基づいて複数の第1のカプセル化されたフレームに関する仮想ネットワークにおける複数のネクストホップを特定するステップを含む。さらに、この方法は、複数の送信仮想ポートにおいて複数の第1のカプセル化されたフレームをカプセル化して、複数の第2のカプセル化されたフレームを形成するステップを含む。それぞれの第2のカプセル化されたフレームは、ヘッダを有する。第2のカプセル化されたフレームのヘッダは、第1のカプセル化されたフレームのネクストホップに基づいて第2のカプセル化されたフレームのネクストホップを、そして入力フレームの関連付けられている仮想出口デバイスの受信仮想ポートを識別する。送信仮想ポートは、共有メモリの第1の部分を含む。この方法は、送信仮想ポートをネットワーク物理ポートに選択的に結合するステップをさらに含む。 The present invention also includes a method of operating a virtual network device. The method includes receiving a plurality of input frames, examining the plurality of input frames to identify a frame type for each input frame, and identifying a virtual exit device associated with each input frame based on the frame type. Each virtual exit device has a receiving virtual port. The method also includes encapsulating the plurality of input frames to form a plurality of first encapsulated frames. The plurality of first encapsulated frames have a plurality of headers. The plurality of headers identify a plurality of virtual exit devices associated with the plurality of input frames. In addition, the method includes identifying a plurality of next hops in the virtual network for the plurality of first encapsulated frames based on the virtual exit devices in the headers of the plurality of first encapsulated frames. Furthermore, the method includes encapsulating the plurality of first encapsulated frames at a plurality of transmitting virtual ports to form a plurality of second encapsulated frames. Each second encapsulated frame has a header. The header of the second encapsulated frame identifies a next hop of the second encapsulated frame based on the next hop of the first encapsulated frame and a receiving virtual port of an associated virtual egress device of the input frame. The transmitting virtual port includes a first portion of the shared memory. The method further includes selectively coupling the transmitting virtual port to a 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 embedded therein program instructions that, when executed by a processor, cause the processor to perform a method of operating a virtual network device. The method includes receiving a plurality of input frames, examining the plurality of input frames to identify a frame type for each input frame, and identifying a virtual exit device associated with each input frame based on the frame type. Each virtual exit device has a receiving virtual port. The method also includes encapsulating the plurality of input frames to form a plurality of first encapsulated frames. The plurality of first encapsulated frames have a plurality of headers. The plurality of headers identify a plurality of virtual exit devices associated with the plurality of input frames. In addition, the method includes identifying a plurality of next hops in the virtual network for the plurality of first encapsulated frames based on the virtual exit devices in the headers of the plurality of first encapsulated frames. Furthermore, the method includes encapsulating the plurality of first encapsulated frames at a plurality of transmitting virtual ports to form a plurality of second encapsulated frames. Each second encapsulated frame has a header. The header of the second encapsulated frame identifies a next hop for the second encapsulated frame based on the next hop for the first encapsulated frame and a receiving virtual port of an associated virtual egress device for the input frame. The method further includes selectively coupling the transmitting virtual port to a network physical port.
本発明の原理が利用される例示的な実施形態を示す以降の詳細な説明及び添付の図面を参照することによって、本発明の特徴及び利点のよりよい理解が得られるであろう。 A better understanding of the features and advantages of the present invention will be obtained by reference to the following detailed description and accompanying drawings that set forth illustrative embodiments in which the principles of the invention are utilized.
図1は、本発明による仮想ネットワークデバイス100の一例を示すブロック図を示している。以降でさらに詳細に記述されているように、仮想ネットワークデバイス100におけるローカル物理ポートの実質的な数が、それらのローカル物理ポートのうちの1つ又は複数を複数の仮想ローカル物理ポートへと変換することによって増やされ、ネットワーク物理ポートの実質的な数が、それらのネットワーク物理ポートのうちの1つ又は複数を複数の仮想ネットワーク物理ポートへと変換することによって増やされる。
FIG. 1 illustrates a block diagram of an example
仮想ネットワークデバイス100は、ローカルルータ/スイッチをリモートルータ/スイッチと相互接続する仮想ネットワークにおけるコンポーネントである。仮想ネットワークは、ローカルルータ/スイッチに結合されている、仮想ネットワークへの仮想入口デバイスとして機能する仮想ネットワークデバイス100と、リモートルータ/スイッチに結合されている、仮想ネットワークからの仮想出口デバイスとして機能する仮想ネットワークデバイス100とを含む。
The
図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, the
図2Aは、本発明による送信回路200の一例を示すブロック図を示している。図2Aにおいて示されているように、送信回路200は、ローカル物理ポート210と、ローカル物理ポート210に結合されているフレーミング回路212と、フレーミング回路212に結合されているいくつかの送信仮想ポートvPORTa1~vPORTanとを含む。
FIG. 2A shows a block diagram illustrating an example of a transmit
そしてそれぞれの送信仮想ポートvPORTaは、送信キュー及び送信フレームフォーマッティング回路を含む。加えて、送信回路200はまた、送信仮想ポートvPORTaのうちのそれぞれに結合されている送信仮想スイッチ214と、送信仮想スイッチ214に結合されているネットワーク物理ポート216とを含む。
Each of the transmit virtual ports vPORTa includes a transmit queue and a transmit frame formatting circuit. In addition, the transmit
図3Aは、本発明による、送信回路200の動作方法300の一例を示すフローチャートを示している。図3Aにおいて示されているように、方法300は、310においてフレーミング回路212がローカル物理ポート210から一連の入力フレームを受信することから始まる。方法300は次に312へ移って、その一連の入力フレームを調べて、それぞれの入力フレームに関するフレームタイプ(たとえば、STB、PC、ビデオ)を特定し、次いで314へ移って、そのフレームタイプに基づいて、それぞれの入力フレームに関連付けられている仮想出口デバイスを特定する。そしてそれぞれの仮想出口デバイスは、いくつかの受信仮想ポートを有する。
Figure 3A shows a flow chart illustrating an example of a
これに続いて、方法300は316へ移り、316でフレーミング回路212は、一連の入力フレームをカプセル化して、いくつかの第1のカプセル化された(FE)フレームを形成する。FEフレームは、一連の入力フレームに関連付けられている仮想出口デバイスを識別するヘッダを有する。
Following this, the
この後に、方法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,
送信仮想ポートvPORTaが空であるか又は部分的にいっぱいである場合には、フレームは生成されない。たとえば、送信仮想ポートvPORT2が空である場合には、ネットワーク物理ポート216は、フレーム1、フレームなし、フレーム3を含むフレームシーケンスを出力する。方法300は次に324へ移り、324でネットワーク物理ポート216は、SEフレームのシーケンスを仮想ネットワークへと送信する。
If the outgoing virtual port vPORTa is empty or partially full, no frames are generated. For example, if the outgoing virtual port vPORT2 is empty, the network
図3Bは、本発明の代替実施形態による、送信回路200の動作方法350の一例を示すフローチャートを示している。方法350は、方法300と同様であり、結果として、両方の方法に共通する要素を示すために同じ参照番号を利用する。
FIG. 3B shows a flow chart 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 (e.g., STB, PC, video source) may have a much faster data rate than the other sources (e.g., STB, PC, video source), and this causes one transmitting virtual port vPORTa to output a full signal much more frequently than the other transmitting virtual port 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 network
フル信号を受信する順序が、仮想スイッチ214によって送信仮想ポートvPORTaからSEフレームが出力される順序を特定する先入れ先出しアプローチに加えて、送信仮想ポートvPORTa~vPORTanは、代替として、送信仮想ポートvPORTaからネットワーク物理ポートへ任意の量及び任意の順序でフレームが転送されることを可能にする優先度スキームを含むことが可能である。
In addition to the first-in, first-out approach in which the order of receiving full signals determines the order in which SE frames are output from the transmit virtual port vPORTa by the
図3Bを再び参照すると、仮想スイッチ214が、フル信号を出力する送信仮想ポートvPORTaからネットワーク物理ポート216へSEフレームを転送した後に、方法350は356へ移り、356でネットワーク物理ポート216は、SEフレームを送信する。方法300においては、出力されることになるフレームは予測可能であり、その一方で、方法350において出力されることになるフレームは予測可能ではないが、優先度スキームは、あるレベルの予測可能性を提供する。
Referring again to FIG. 3B, after the
図2Aの例を再び参照すると、フレーミング回路212は、仮想スイッチ220と、仮想スイッチ220に結合されているフレーマ222とを含む。仮想スイッチ220は、入力フレームのタイプ(たとえば、STB、PC、ビデオ)を検知し、フレームのそのタイプに対応する仮想ポートvPORTaへのフレームに関するルートを静的転送テーブルから特定し、そのフレームをその仮想ポートvPORTaへ向けて出力する。
Referring again to the example of FIG. 2A, the framing
この例においては、仮想スイッチ220は、ローカルソースルータ/スイッチによって送信されたSTBフレームを受信し、その受信されたフレームがSTBフレームであることをそのSTBフレームにおけるソース及び/又は宛先MACアドレスから検知する。スイッチ220は次いで、STBフレームを受信するために事前に選択された仮想ポートvPORTa1へ向けてルーティングされている第1の仮想ポートラインP1上にSTBフレームを出力する。
In this example, the
同様に、仮想スイッチ220は、ローカルソースルータ/スイッチによって送信されたPCフレームを受信し、その受信されたフレームがPCフレームであることをそのPCフレームにおけるソース及び/又は宛先MACアドレスから検知する。スイッチ220は次いで、PCフレームを受信するために事前に選択された仮想ポートvPORTa2へ向けてルーティングされている第2の仮想ポートラインP2上にPCフレームを出力する。
Similarly,
仮想スイッチ220はまた、ローカルルータ/スイッチによって送信されたビデオフレームを受信し、その受信されたフレームがビデオフレームであることをそのビデオフレームにおけるソース及び/又は宛先MACアドレスから検知し、次いで、ビデオフレームを受信するために事前に選択された仮想ポートvPORTa3へ向けてルーティングされている第3の仮想ポートラインP3上にビデオフレームを出力する。
The
フレーマ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を含むいくつかのフィールドを有するヘッダを有する。
The
たとえば、FEフレームのヘッダは、仮想出口デバイスのMACアドレスに関する出口アドレスフィールド、I-Tagフィールド、又は同様のフィールドを含むことが可能である。ヘッダは、仮想入口デバイスのMACアドレスなど、その他のフィールドを含むことも可能である。この例においては、仮想出口デバイスのMACアドレスは、管理上、仮想入口デバイスに提供される。 For example, the header of the FE frame may include an egress address field for the MAC address of the virtual egress device, an I-Tag field, or a similar field. The header may also include other fields, such as the MAC address of the virtual egress 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 in the virtual port vPORTa1 of the transmitting
同様に、送信回路200の仮想ポートvPORTa2におけるフレームフォーマッティング回路は、FE PCフレームを受信し、FE PCフレームのヘッダにおける、仮想出口デバイスのMACアドレスなど、仮想出口デバイスのIDに基づいて静的転送テーブルからFE PCフレームに関する仮想ネットワークにおけるネクストホップを特定し、FE PCフレームをカプセル化して、第2のカプセル化された(SE)PCフレームを形成する。
Similarly, the frame formatting circuit in virtual port vPORTa2 of the transmitting
加えて、送信回路200の仮想ポートvPORTa3におけるフレームフォーマッティング回路は、FEビデオフレームを受信し、FEビデオフレームのヘッダにおける、仮想出口デバイスのMACアドレスなど、仮想出口デバイスのIDに基づいて静的転送テーブルからFEビデオフレームに関する仮想ネットワークにおけるネクストホップを特定し、FEビデオフレームをカプセル化して、第2のカプセル化された(SE)ビデオフレームを形成する。
In addition, the frame formatting circuit in virtual port vPORTa3 of the transmitting
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 include a header with 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 destination field Dst_vID that identifies the virtual port number of the virtual egress device that corresponds to the virtual port number of the virtual ingress device. In this example, the source field Src_vID for the SE STB frame is virtual port vPORTa1. Other fields, such as a last hop field, may also be included.
さらに、仮想スイッチ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は、代替として、複数のルータ/スイッチからの入力を受信してそれに伴って動作することが可能である。
Further, the
図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, the transmit
送信回路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 seven STB frames per second, the personal computer outputs two PC frames per second, and the video device outputs one video frame per second. (The numbers listed are for illustrative purposes only.) As shown in FIG. 2B, five of the seven STB frames are transmitted from network
図4は、本発明の代替実施形態による送信回路400の一例を示すブロック図を示している。送信回路400は、送信回路200と同様であり、結果として、両方の回路に共通する構造を示すために同じ参照番号を利用する。
Figure 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, the transmit
さらなる代替実施形態においては、送信回路400のフレーマ410及び仮想スイッチ412は、物理的に分離されることが可能であり、それに伴ってフレーマ410は、ローカルルータ/スイッチへと組み込まれる。
In a further alternative embodiment, the
図5は、本発明による送信回路500の一例を示すブロック図を示している。送信回路500は、送信回路400と同様であり、結果として、回路400及び回路500の両方に共通する構造を示すために同じ参照番号を利用する。図5において示されている例において示されているように、STB、PC、及びビデオフレームを受信及び出力するローカルルータ/スイッチの代わりに、ローカルフレーマルータ/スイッチ510が送信回路500と共に利用されている。
Figure 5 shows a block diagram illustrating an example of a transmit
図6は、本発明による受信回路600の一例を示すブロック図を示している。図6において示されているように、受信回路600は、ネットワーク物理ポート610と、ネットワーク物理ポート610に結合されている受信仮想スイッチ612とを含む。受信回路600はまた、スイッチ612に結合されているいくつかの受信仮想ポートvPORTb1~vPORTbnを含む。そしてそれぞれの受信仮想ポートvPORTbは、受信キュー及び受信フレームフォーマッティング回路を含む。受信回路600は、受信仮想ポートvPORTbのうちのそれぞれに結合されているデフレーミング回路614と、デフレーミング回路614に結合されているローカル物理ポート616とをさらに含む。
Figure 6 shows a block diagram of an example of a receiving
図7は、本発明による、受信回路600の動作方法700の一例を示すフローチャートを示している。図7において示されているように、方法700は、710においてネットワーク物理ポート610が仮想ネットワークから一連の第3のカプセル化された(TE)フレームを受信することから始まる。TEフレームは、ネクストホップアドレスと受信仮想ポート識別子とを含むヘッダを有する。
Figure 7 illustrates a flow chart of 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, the
加えて、仮想スイッチ612は、ネットワーク物理ポート610からMEビデオフレームを受信し、MEビデオフレームのヘッダにおける宛先仮想ポート番号Dst_vIDから、宛先仮想ポートが仮想ポートvPORTb3であると特定する。スイッチ612は、仮想ポートvPORTb3へのルートを静的転送テーブルから特定し、次いで仮想ポートvPORTb3へ向けてルーティングされている第3の仮想ポートライン上にMEビデオフレームを出力する。
In addition, the
仮想ポート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 to vPORTbn receive the ME frame, unpack the ME frame, and extract a fourth encapsulated frame, such as a fourth encapsulated STB frame, a fourth encapsulated PC frame, and a fourth encapsulated video frame, from the ME frame. In the example of FIG. 6, the receive queue of the first virtual port vPORTb1 receives the ME STB frame, while the frame formatting circuit of the virtual port vPORTb1 unpacks the ME STB frame and extracts the FE STB frame, and the fourth encapsulated STB frame has a header that includes 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 the ME PC frame, while the frame formatting circuit of the virtual port vPORTb2 unpacks the ME PC frame to extract a fourth encapsulated PC frame, the fourth encapsulated PC frame having a header that includes the identity of the virtual egress device. In addition, the receive queue of the third virtual port vPORTb3 receives the ME video frame, while the frame formatting circuit of the virtual port vPORTb3 unpacks the ME video frame to extract a fourth encapsulated video frame, the fourth encapsulated video frame having a header that includes the identity of the virtual egress device.
デフレーミング回路614は、複数の第4のカプセル化されたフレームを受信し、それらの第4のカプセル化されたフレームから当初のSTB、PC、及びビデオ入力フレームを抽出する。それらの入力フレームは、いくつかのフレームタイプ、たとえば、STB、PC、ビデオを有する。それぞれの入力フレームは、宛先ルータ/スイッチのアイデンティティを含むヘッダを有する。それぞれの受信された第4のカプセル化されたフレームに関して、デフレーミング回路614は、第4のカプセル化されたフレームをアンパックして入力フレームを抽出し、入力フレームのヘッダから宛先ルータ/スイッチのアイデンティティを特定し、入力フレームをローカル物理ポート616へ出力し、ローカル物理ポート616は、宛先ルータ/スイッチへ入力フレームを出力する。
The
図6において示されているように、デフレーミング回路614は、デフレーマ620と、デフレーマ620に結合されている仮想スイッチ622とを含む。動作中に、デフレーマ620は、複数の受信仮想ポートvPORTb1~vPORTbnから第4のカプセル化されたフレームを受信し、第4のカプセル化されたフレームをアンパックして、当初の入力フレーム、たとえば、STBフレーム、PCフレーム、及びビデオフレームを抽出し、そのSTBフレーム、PCフレーム、及びビデオフレームを仮想スイッチ622へ転送する。
As shown in FIG. 6, the
図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, the
仮想スイッチ622は、デフレーマ620の出力を循環して、出力フレームを順次受信してローカル物理ポート616へ転送する。この例においては、仮想スイッチ622は、デフレーマ620からSTBフレームを受信し、宛先ルータ/スイッチのMACアドレスを検知し、STBフレームをローカル物理ポート616へ出力する。同様に、仮想スイッチ622は、デフレーマ620からPCフレームを受信し、宛先ルータ/スイッチのMACアドレスを検知し、PCフレームをローカル物理ポート616へ出力する。加えて、仮想スイッチ622は、デフレーマ620からビデオフレームを受信し、宛先ルータ/スイッチのMACアドレスを検知し、ビデオフレームをローカル物理ポート616へ出力する。そしてローカル物理ポート616は、それらのフレームをローカルルータ/スイッチへ出力する。
The
図6の例は、パラレルツーパラレルデフレーマ620と、それに続くパラレルツーシリアル仮想スイッチ622とを有するデフレーミング回路614を示している。デフレーミング回路614は、代替として、その他の回路構成を用いて実現されることが可能である。たとえば、デフレーミング回路614は、仮想ポートvPORTb1~vPORTbnに結合されているシリアルツーパラレル仮想スイッチと、それに続くシリアルツーシリアルフレーマとを用いて実装されることが可能である。
The example of FIG. 6 shows a
図8は、本発明の代替実施形態による受信回路800の一例を示すブロック図を示している。受信回路800は、受信回路600と同様であり、結果として、両方の回路に共通する構造を示すために同じ参照番号を利用する。
Figure 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とを用いて実装されることが可能である。
8, the
さらなる代替実施形態においては、仮想スイッチ810及びデフレーマ812は、物理的に分離されることが可能であり、それに伴ってデフレーマ812は、ローカルルータ/スイッチへと組み込まれる。
In a further alternative embodiment, the
図9は、本発明による受信回路900の一例を示すブロック図を示している。受信回路900は、受信回路800と同様であり、結果として、回路800及び回路900の両方に共通する構造を示すために同じ参照番号を利用する。図9において示されている例において示されているように、ローカルルータスイッチの代わりに、ローカルデフレーマルータ/スイッチ910が受信回路900において利用されている。
Figure 9 shows a block diagram illustrating an example of a
本発明の利点のうちの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 via several virtual ports, which effectively increases the number of available physical ports.
ここでは、本開示のさまざまな実施形態に対して詳細に言及が行われてきたが、それらの実施形態の例が、添付の図面において示されている。さまざまな実施形態に関連して記述が行われているが、これらのさまざまな実施形態は、本開示を限定することを意図されているものではないということが理解されるであろう。それどころか、本開示は、特許請求の範囲に従って解釈された際に本開示の範囲内に含まれることが可能である代替物、修正物、及び均等物をカバーすることを意図されている。 Reference has been made herein in detail to various embodiments of the present disclosure, examples of which are illustrated in the accompanying drawings. While description has been made with reference to various embodiments, it will be understood that these are not intended to limit the disclosure. On the contrary, the disclosure is intended to cover alternatives, modifications, and equivalents that may be included within the scope of the disclosure when interpreted according to the claims.
さらに、本開示のさまざまな実施形態についての前述の詳細な説明においては、本開示の徹底的な理解を提供するために多くの具体的な詳細が示されている。しかしながら、本開示は、これらの具体的な詳細を伴わずに、又はそれらの均等物を伴って実施されることが可能であるということが当技術分野における普通のスキルを有する者によって認識されるであろう。その他の場合においては、本開示のさまざまな実施形態の態様を不必要にわかりにくくすることのないように、よく知られている方法、手順、コンポーネント、及び回路は、詳細に記述されていない。 Furthermore, in the foregoing detailed description of the various embodiments of the present disclosure, numerous specific details are set forth in order to provide a thorough understanding of the present 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 their equivalents. 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 present disclosure.
本明細書においては、明確さのために、番号付けされたオペレーションどうしのシーケンスとして方法が示されている場合があるが、その番号付けは、必ずしもオペレーションどうしの順序を示しているとは限らないということに留意されたい。オペレーションのうちのいくつかは、スキップされること、並列に実行されること、又はシーケンスの厳密な順序を保持する必要性を伴わずに実行されることが可能であるということを理解されたい。 Note that although methods may be depicted herein as a sequence of numbered operations for clarity, the numbering does not necessarily indicate an order for the operations. It should be understood that some of the operations may be skipped, performed in parallel, or performed without the requirement of maintaining a strict order of 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 shown exaggerated in the depicted figures for clarity of presentation. Similarly, the views in the drawings generally show similar orientations for ease of illustration, although 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 descriptions 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 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 self-consistent sequence of operations or instructions leading to a desired result. These operations employ physical manipulation of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated in a computing system. 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.
しかしながら、これら及び類似の用語のすべては、適切な物理量に関連付けられるものであり、それらの量に適用される便宜上のラベルにすぎないということに留意されたい。特に別段の記載がない限り、以降の論考から明らかなように、本開示の全体を通じて、「生成する」、「特定する」、「割り振る」、「集約する」、「利用する」、「仮想化する」、「処理する」、「アクセスする」、「実行する」、「格納する」等などの用語を利用している論考は、コンピュータシステム、又は類似の電子コンピューティングデバイス若しくはプロセッサのアクション及びプロセスを指すということが理解される。 It should be noted, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to those quantities. Unless otherwise indicated, and as will be apparent from the discussion that follows, throughout this disclosure, discussions using terms such as "generate," "identify," "allocate," "aggregate," "utilize," "virtualize," "process," "access," "execute," "store," and the like, will be understood to refer to the actions and processes of a computer system or similar electronic computing device or processor.
コンピューティングシステム、又は類似の電子コンピューティングデバイス若しくはプロセッサは、コンピュータシステムのメモリ、レジスタ、その他のそのような情報ストレージ、及び/又はその他のコンピュータ可読媒体内の物理的な(電子的な)量として表されているデータを操作して、同様にコンピュータシステムのメモリ、又はレジスタ、又はその他のそのような情報ストレージ、送信、若しくは表示デバイス内の物理的な量として表されるその他のデータへと変換する。 A computing system, or similar electronic computing device or processor, manipulates data represented as physical (electronic) quantities in the computer system's memory, registers, or other such information storage and/or other computer-readable media, converting it into other data that is also represented as physical quantities in the computer system's memory, or registers, or other such information storage, transmission, or display device.
前のセクションにおいては、本出願の実施形態の図面を参照しながら、本出願の実施形態における技術的な解決策が明確に且つ完全に記述されている。本発明の説明及び特許請求の範囲における、並びに上記の図面における「第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. Please note that the terms "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 used to describe a specific sequence or order. It should be understood that these numbers can be interchanged where appropriate, whereby the embodiments of the present invention described herein can be implemented in an order other than that shown or described herein.
この実施形態の方法において記述されている機能は、ソフトウェア機能ユニットの形態で実装されて、独立した製品として販売又は使用される場合には、コンピューティングデバイス可読記憶媒体に格納されることが可能である。そのような理解に基づいて、従来技術に寄与する本出願の実施形態のうちの一部分、又は技術的な解決策の一部分は、本出願のさまざまな実施形態において記述されている方法のステップのうちのすべて又は一部をコンピューティングデバイス(これは、パーソナルコンピュータ、サーバ、モバイルコンピューティングデバイス、又はネットワークデバイスなどであることが可能である)に実行させるための複数の命令を含む、記憶媒体に格納されているソフトウェア製品の形態で具体化されることが可能である。前述の記憶媒体は、USBドライブ、ポータブルハードディスク、読み取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク、光ディスクなどを含み、それらは、プログラムコードを格納することが可能である。 The functions described in the method of this embodiment can be implemented in the form of a software functional unit and stored in a computing device readable storage medium when sold or used as an independent product. Based on such an understanding, a part of the embodiments of the present application that contribute to the prior art, or a part of the technical solution, can be embodied in the form of a software product stored in a storage medium, including a plurality of instructions for causing a computing device (which can be a personal computer, a server, a mobile computing device, a network device, etc.) to execute all or a part of the steps of the methods described in various embodiments of the present application. The aforementioned storage medium includes a USB drive, a portable hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, an optical disk, etc., which can store program code.
本出願の明細書におけるさまざまな実施形態は、進展する様式で記述されており、それぞれの実施形態は、その他の実施形態からの自らの相違に焦点を合わせており、さまざまな実施形態の間における同じ又は同様の部分どうしは、別のケースに参照されることが可能である。記述されている実施形態は、本出願の実施形態のうちのすべてというよりはむしろ、実施形態のうちの一部にすぎない。本発明のスキルから逸脱することなく、本出願の実施形態に基づいて、当技術分野における普通のスキルを有する者によって得られるその他のすべての実施形態は、本出願の範囲内にある。 Various embodiments in the specification of this application are described in a progressive manner, with each embodiment focusing on its differences from other embodiments, and the same or similar parts among the various embodiments can be referred to in different cases. The described embodiments are only some of the embodiments, rather than all of the embodiments of this application. All other embodiments obtained by a person 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.
開示されている実施形態についての上記の説明は、当業者が本出願を作成又は使用することを可能にする。これらの実施形態に対するさまざまな修正は、当業者にとって明らかであり、本明細書において定義されている一般的な原理は、本出願の趣旨又は範囲から逸脱することなく、その他の実施形態において実施されることが可能である。そのため、本出願は、本明細書において示されている実施形態に限定されず、本明細書において開示されている原理及び新規な特徴と整合する最も広い範囲である。
[発明の項目]
[項目1]
複数の入力フレームを受信し、前記複数の入力フレームを調べて、それぞれの入力フレームに関するフレームタイプを特定し、前記フレームタイプに基づいて、それぞれの入力フレームに関連付けられている仮想出口デバイスを特定し、前記複数の入力フレームをカプセル化して、複数の第1のカプセル化されたフレームを形成するためのフレーミング回路であって、それぞれの仮想出口デバイスが、受信仮想ポートを有し、前記複数の第1のカプセル化されたフレームが、複数のヘッダを有し、前記複数のヘッダが、前記複数の入力フレームに関連付けられている複数の仮想出口デバイスを識別する、フレーミング回路と、
前記フレーミング回路に結合されている複数の送信仮想ポートであって、前記複数の第1のカプセル化されたフレームの前記ヘッダにおける前記仮想出口デバイスに基づいて前記複数の第1のカプセル化されたフレームに関する仮想ネットワークにおける複数のネクストホップを特定し、前記複数の第1のカプセル化されたフレームをカプセル化して、複数の第2のカプセル化されたフレームを形成するための複数の送信仮想ポートであり、それぞれの第2のカプセル化されたフレームが、ヘッダを有し、第2のカプセル化されたフレームの前記ヘッダが、第1のカプセル化されたフレームのネクストホップに基づいて前記第2のカプセル化されたフレームのネクストホップを、そして入力フレームの前記関連付けられている仮想出口デバイスの前記受信仮想ポートを識別する、複数の送信仮想ポートと、
前記複数の送信仮想ポートに結合されている送信仮想スイッチであって、前記送信仮想ポートをネットワーク物理ポートに選択的に結合するための送信仮想スイッチと、
を備える仮想ネットワークデバイス。
[項目2]
前記送信仮想スイッチが、前記複数の送信仮想ポートを循環して、それぞれの送信仮想ポートから、固定された繰り返し順序で第2のカプセル化されたフレームを順次転送して、一連の第2のカプセル化されたフレームを出力する、項目1に記載の仮想ネットワークデバイス。
[項目3]
前記送信仮想スイッチが、送信仮想ポートからフル信号を受信し、前記フル信号を出力する前記送信仮想ポートから前記ネットワーク物理ポートへフレームを転送する、項目1に記載の仮想ネットワークデバイス。
[項目4]
前記フレーミング回路が、
前記フレームタイプに基づいて送信仮想ポートへのフレームに関するルートを特定し、前記フレームを前記送信仮想ポートへ向けて出力する仮想スイッチと、
前記仮想スイッチに結合されているフレーマであって、前記入力フレームをカプセル化するためのフレーマと、
を含む、項目1に記載の仮想ネットワークデバイス。
[項目5]
前記フレーマが、プロバイダバックボーンブリッジトラフィックエンジニアリング(PBB-TE)プロトコル及びトランスファーマルチプロトコルリスティングスイッチ(T-MPLS)プロトコルを含むプロトコルのグループからのプロトコルを実行する、項目4に記載の仮想ネットワークデバイス。
[項目6]
前記送信仮想ポートが、共有メモリの第1の部分を含む、項目1に記載の仮想ネットワークデバイス。
[項目7]
複数の第3のカプセル化されたフレームを受信し、前記複数の第3のカプセル化されたフレームを調べて複数のフレーム宛先を特定し、前記複数のフレーム宛先を、格納されている宛先に比較し、前記第3のカプセル化されたフレームを、一致する宛先とともに、一致するカプセル化されたフレームとして転送する受信物理ポートであって、前記複数の第3のカプセル化されたフレーム及び一致するカプセル化されたフレームが、複数のヘッダを有し、前記複数のヘッダが、複数の受信仮想ポート識別子を有する、受信物理ポートと、
前記受信物理ポートに結合されている受信仮想スイッチであって、前記一致するカプセル化されたフレームの前記ヘッダにおける前記受信仮想ポート識別子に基づいて前記一致するカプセル化されたフレームを切り替え可能に渡すための受信仮想スイッチと、
前記受信仮想スイッチに結合されている複数の受信仮想ポートであって、前記切り替え可能に渡された一致するカプセル化されたフレームをアンパックして、複数の一致するカプセル化された前記フレームから複数の第4のカプセル化されたフレームを抽出するための複数の受信仮想ポートであり、それによって、それぞれの受信仮想ポートが、一致するカプセル化されたフレームをアンパックして、第4のカプセル化されたフレームを抽出し、前記受信仮想ポートが、前記共有メモリの第2の部分を含む、複数の受信仮想ポートと、
前記複数の受信仮想ポートに結合されているデフレーミング回路であって、前記複数の第4のカプセル化されたフレームをアンパックして、前記複数の第4のカプセル化されたフレームから複数の出力フレームを抽出するためのデフレーミング回路であり、前記複数の出力フレームが、複数のフレームタイプを有し、それぞれの出力フレームが、宛先ルータ/スイッチを識別するヘッダを有する、デフレーミング回路と、
をさらに備える、項目6に記載の仮想ネットワークデバイス。
[項目8]
前記デフレーミング回路が、デフレーマを含み、前記デフレーマが、前記複数の受信仮想ポートから前記第4のカプセル化されたフレームを受信し、前記第4のカプセル化されたフレームをアンパックして、前記入力フレームを抽出する、項目7に記載の仮想ネットワークデバイス。
[項目9]
前記フレーミング回路が、前記入力フレームをローカルルータ/スイッチへ出力する、項目8に記載の仮想ネットワークデバイス。
[項目10]
仮想ネットワークデバイスの動作方法であって、
複数の入力フレームを受信するステップと、
前記複数の入力フレームを調べて、それぞれの入力フレームに関するフレームタイプを特定するステップと、
前記フレームタイプに基づいて、それぞれの入力フレームに関連付けられている仮想出口デバイスを特定するステップであり、それぞれの仮想出口デバイスが、受信仮想ポートを有する、ステップと、
前記複数の入力フレームをカプセル化して、複数の第1のカプセル化されたフレームを形成するステップであり、前記複数の第1のカプセル化されたフレームが、複数のヘッダを有し、前記複数のヘッダが、前記複数の入力フレームに関連付けられている複数の仮想出口デバイスを識別する、ステップと、
前記複数の第1のカプセル化されたフレームの前記ヘッダにおける前記仮想出口デバイスに基づいて前記複数の第1のカプセル化されたフレームに関する仮想ネットワークにおける複数のネクストホップを特定するステップと、
複数の送信仮想ポートにおいて複数の第1のカプセル化されたフレームをカプセル化して、複数の第2のカプセル化されたフレームを形成するステップであり、それぞれの第2のカプセル化されたフレームが、ヘッダを有し、第2のカプセル化されたフレームの前記ヘッダが、第1のカプセル化されたフレームのネクストホップに基づいて前記第2のカプセル化されたフレームのネクストホップを、そして入力フレームの前記関連付けられている仮想出口デバイスの前記受信仮想ポートを識別する、ステップと、
前記送信仮想ポートをネットワーク物理ポートに選択的に結合するステップと、
を含む方法。
[項目11]
前記複数の送信仮想ポートを循環して、それぞれの送信仮想ポートから、固定された繰り返し順序で第2のカプセル化されたフレームを順次転送して、一連の第2のカプセル化されたフレームを出力するステップをさらに含む、項目10に記載の方法。
[項目12]
送信仮想ポートからフル信号を受信し、前記フル信号を出力する前記送信仮想ポートから前記ネットワーク物理ポートへフレームを転送するステップをさらに含む、項目10に記載の方法。
[項目13]
前記フレームタイプに基づいて送信仮想ポートへのフレームに関するルートを特定し、前記フレームを前記送信仮想ポートへ向けて出力するステップをさらに含む、項目10に記載の方法。
[項目14]
前記複数の入力フレームが、プロバイダバックボーンブリッジトラフィックエンジニアリング(PBB-TE)プロトコル及びトランスファーマルチプロトコルリスティングスイッチ(T-MPLS)プロトコルを含むプロトコルのグループからのプロトコルを用いてカプセル化される、項目10に記載の方法。
[項目15]
前記送信仮想ポートが、共有メモリの第1の部分を含む、項目10に記載の方法。
[項目16]
複数の第3のカプセル化されたフレームを受信するステップと、
前記複数の第3のカプセル化されたフレームを調べて、複数のフレーム宛先を特定するステップと、
前記複数のフレーム宛先を、格納されている宛先に比較するステップと、
前記第3のカプセル化されたフレームを、一致する宛先とともに、一致するカプセル化されたフレームとして転送するステップであって、前記複数の第3のカプセル化されたフレーム及び一致するカプセル化されたフレームが、複数のヘッダを有し、前記複数のヘッダが、複数の受信仮想ポート識別子を有する、ステップと、
前記一致するカプセル化されたフレームの前記ヘッダにおける前記受信仮想ポート識別子に基づいて前記一致するカプセル化されたフレームを切り替え可能に渡すステップと、
複数の受信仮想ポートにおいて前記切り替え可能に渡された一致するカプセル化されたフレームをアンパックして、複数の一致するカプセル化された前記フレームから複数の第4のカプセル化されたフレームを抽出するステップであって、それによって、それぞれの受信仮想ポートが、一致するカプセル化されたフレームをアンパックして、第4のカプセル化されたフレームを抽出し、前記受信仮想ポートが、前記共有メモリの第2の部分を含む、ステップと、
前記複数の第4のカプセル化されたフレームをアンパックして、前記複数の第4のカプセル化されたフレームから複数の出力フレームを抽出するステップであって、前記複数の出力フレームが、複数のフレームタイプを有し、それぞれの出力フレームが、宛先ルータ/スイッチを識別するヘッダを有する、ステップと、
をさらに含む、項目15に記載の方法。
[項目17]
プログラム命令が埋め込まれている非一時的コンピュータ可読記憶媒体であって、前記プログラム命令が、プロセッサによって実行されたときに、仮想ネットワークデバイスの動作方法を前記プロセッサに実行させ、前記動作方法が、
複数の入力フレームを受信するステップと、
前記複数の入力フレームを調べて、それぞれの入力フレームに関するフレームタイプを特定するステップと、
前記フレームタイプに基づいて、それぞれの入力フレームに関連付けられている仮想出口デバイスを特定するステップであり、それぞれの仮想出口デバイスが、受信仮想ポートを有する、ステップと、
前記複数の入力フレームをカプセル化して、複数の第1のカプセル化されたフレームを形成するステップであり、前記複数の第1のカプセル化されたフレームが、複数のヘッダを有し、前記複数のヘッダが、前記複数の入力フレームに関連付けられている複数の仮想出口デバイスを識別する、ステップと、
前記複数の第1のカプセル化されたフレームの前記ヘッダにおける前記仮想出口デバイスに基づいて前記複数の第1のカプセル化されたフレームに関する仮想ネットワークにおける複数のネクストホップを特定するステップと、
複数の送信仮想ポートにおいて複数の第1のカプセル化されたフレームをカプセル化して、複数の第2のカプセル化されたフレームを形成するステップであり、それぞれの第2のカプセル化されたフレームが、ヘッダを有し、第2のカプセル化されたフレームの前記ヘッダが、第1のカプセル化されたフレームのネクストホップに基づいて前記第2のカプセル化されたフレームのネクストホップを、そして入力フレームの前記関連付けられている仮想出口デバイスの前記受信仮想ポートを識別する、ステップと、
前記送信仮想ポートをネットワーク物理ポートに選択的に結合するステップと、
を含む、媒体。
[項目18]
前記動作方法が、前記複数の送信仮想ポートを循環して、それぞれの送信仮想ポートから、固定された繰り返し順序で第2のカプセル化されたフレームを順次転送して、一連の第2のカプセル化されたフレームを出力するステップをさらに含む、項目17に記載の媒体。
[項目19]
前記動作方法が、送信仮想ポートからフル信号を受信し、前記フル信号を出力する前記送信仮想ポートから前記ネットワーク物理ポートへフレームを転送するステップをさらに含む、項目17に記載の媒体。
[項目20]
前記動作方法が、
複数の第3のカプセル化されたフレームを受信するステップと、
前記複数の第3のカプセル化されたフレームを調べて、複数のフレーム宛先を特定するステップと、
前記複数のフレーム宛先を、格納されている宛先に比較するステップと、
それぞれの第3のカプセル化されたフレームを、一致する宛先とともに、一致するカプセル化されたフレームとして転送して、複数の一致するカプセル化されたフレームを転送するステップであって、前記複数の第3のカプセル化されたフレーム及び一致するカプセル化されたフレームが、複数のヘッダを有し、前記複数のヘッダが、複数の受信仮想ポート識別子を有する、ステップと、
前記一致するカプセル化されたフレームの前記ヘッダにおける前記受信仮想ポート識別子に基づいて前記一致するカプセル化されたフレームを切り替え可能に渡すステップと、
複数の受信仮想ポートにおいて前記切り替え可能に渡された一致するカプセル化されたフレームをアンパックして、前記複数の一致するカプセル化されたフレームから複数の第4のカプセル化されたフレームを抽出するステップであって、それによって、それぞれの受信仮想ポートが、一致するカプセル化されたフレームをアンパックして、第4のカプセル化されたフレームを抽出し、前記受信仮想ポートが、前記共有メモリの第2の部分を含む、ステップと、
前記複数の第4のカプセル化されたフレームをアンパックして、前記複数の第4のカプセル化されたフレームから複数の出力フレームを抽出するステップであって、前記複数の出力フレームが、複数のフレームタイプを有し、それぞれの出力フレームが、宛先ルータ/スイッチを識別するヘッダを有する、ステップと、
をさらに含む、項目19に記載の媒体。
The above description of the disclosed embodiments enables 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 can be implemented in other embodiments without departing from the spirit or scope of the present application. Thus, the present application is not limited to the embodiments shown herein, but is accorded the widest scope consistent with the principles and novel features disclosed herein.
[Items of the invention]
[Item 1]
a framing circuit for receiving a plurality of input frames, examining the plurality of input frames to identify a frame type for each input frame, identifying a virtual exit device associated with each input frame based on the frame type, and encapsulating the plurality of input frames to form a plurality of first encapsulated frames, each virtual exit device having a receive virtual port, the plurality of first encapsulated frames having a plurality of headers, the plurality of headers identifying a plurality of virtual exit devices associated with the plurality of input frames;
a plurality of transmit virtual ports coupled to the framing circuit for identifying a plurality of next hops in a virtual network for the plurality of first encapsulated frames based on the virtual exit device in the headers of the plurality of first encapsulated frames and for encapsulating the plurality of first encapsulated frames to form a plurality of second encapsulated frames, each second encapsulated frame having a header, the header of the second encapsulated frame identifying a next hop for the second encapsulated frame based on the next hop of the first encapsulated frame and the receiving virtual port of the associated virtual exit device of an input frame;
an outgoing virtual switch coupled to the plurality of outgoing virtual ports for selectively coupling the outgoing virtual ports to network physical ports;
1. A virtual network device comprising:
[Item 2]
2. The virtual network device of
[Item 3]
2. The virtual network device of
[Item 4]
The framing circuit,
a virtual switch that identifies a route for the frame to a sending virtual port based on the frame type and outputs the frame toward the sending virtual port;
a framer coupled to the virtual switch for encapsulating the input frame;
2. The virtual network device of
[Item 5]
5. The virtual network device of claim 4, wherein the framer implements a protocol from a group of protocols including a Provider Backbone Bridge Traffic Engineering (PBB-TE) protocol and a Transfer Multi-Protocol Listing Switch (T-MPLS) protocol.
[Item 6]
2. The virtual network device of
[Item 7]
a receiving physical port that receives a plurality of third encapsulated frames, examines the plurality of third encapsulated frames to identify a plurality of frame destinations, compares the plurality of frame destinations to stored destinations, and forwards the third encapsulated frames with the matching destinations as matching encapsulated frames, wherein the plurality of third encapsulated frames and the matching encapsulated frames have a plurality of headers, the plurality of headers having a plurality of receiving virtual port identifiers;
a receive virtual switch coupled to the receive physical port for switchably passing the matching encapsulated frame based on the receive virtual port identifier in the header of the matching encapsulated frame;
a plurality of receive virtual ports coupled to the receive virtual switch for unpacking the switchably passed matching encapsulated frames to extract a plurality of fourth encapsulated frames from the plurality of matching encapsulated frames, whereby each receive virtual port unpacks the matching encapsulated frames to extract a fourth encapsulated frame, the receive virtual port including a second portion of the shared memory;
a deframing circuit coupled to the plurality of receiving virtual ports for unpacking the plurality of fourth encapsulated frames to extract a plurality of output frames from the plurality of fourth encapsulated frames, the plurality of output frames having a plurality of frame types, each output frame having a header that identifies a destination router/switch;
7. The virtual network device of claim 6, further comprising:
[Item 8]
8. The virtual network device of claim 7, wherein the deframing circuitry includes a deframer that receives the fourth encapsulated frame from the plurality of receiving virtual ports and unpacks the fourth encapsulated frame to extract the input frame.
[Item 9]
9. The virtual network device of claim 8, wherein the framing circuit outputs the input frame to a local router/switch.
[Item 10]
1. 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 headers identifying a plurality of virtual egress devices associated with the plurality of input frames;
determining 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 having a header, the header of the second encapsulated frame identifying a next hop of the second encapsulated frame based on a next hop of the first encapsulated frame and the receiving virtual port of the associated virtual egress device of an input frame;
selectively binding the transmit virtual port to a network physical port;
The method includes:
[Item 11]
11. The method of claim 10, further comprising the step of cycling through the plurality of transmit virtual ports and sequentially forwarding the second encapsulated frames from each transmit virtual port in a fixed repeating order to output a sequence of second encapsulated frames.
[Item 12]
11. The method of claim 10, further comprising the steps of receiving a full signal from a sending virtual port and forwarding frames from the sending virtual port that outputs the full signal to the network physical port.
[Item 13]
11. The method of claim 10, further comprising identifying a route for the frame to an egress virtual port based on the frame type, and outputting the frame toward the egress virtual port.
[Item 14]
Item 11. The method of item 10, wherein the plurality of input frames are encapsulated using a protocol from a group of protocols including a Provider Backbone Bridge Traffic Engineering (PBB-TE) protocol and a Transfer Multi-Protocol Listing Switch (T-MPLS) protocol.
[Item 15]
11. The method of claim 10, wherein the sending virtual port includes a first portion of a shared memory.
[Item 16]
receiving a plurality of third encapsulated frames;
examining the plurality of third encapsulated frames to identify a plurality of frame destinations;
comparing said plurality of frame destinations to stored destinations;
forwarding the third encapsulated frame as a matching encapsulated frame with a matching destination, the third encapsulated frames and the matching encapsulated frames 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 receiving virtual port identifier in the header of the matching encapsulated frame;
unpacking the switchably passed matching encapsulated frames at a plurality of receiving virtual ports to extract a plurality of fourth encapsulated frames from the plurality of matching encapsulated frames, whereby each receiving virtual port unpacks the matching encapsulated frame to extract a fourth encapsulated frame, the receiving virtual port including a second portion of the shared memory;
unpacking the plurality of fourth encapsulated frames to extract a plurality of output frames from the plurality of fourth encapsulated frames, the plurality of output frames having a plurality of frame types, each output frame having a header identifying a destination router/switch;
16. The method of claim 15, further comprising:
[Item 17]
A non-transitory computer-readable storage medium having program instructions embedded therein, the program instructions, when executed by a processor, causing the processor to perform a method of operating a virtual network device, the method 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 headers identifying a plurality of virtual egress devices associated with the plurality of input frames;
determining 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 having a header, the header of the second encapsulated frame identifying a next hop of the second encapsulated frame based on a next hop of the first encapsulated frame and the receiving virtual port of the associated virtual egress device of an input frame;
selectively binding the transmit virtual port to a network physical port;
Including, media.
[Item 18]
20. The medium of claim 17, wherein the operating method further comprises cycling through the plurality of transmit virtual ports and sequentially forwarding the second encapsulated frames from each transmit virtual port in a fixed repeating order to output a sequence of second encapsulated frames.
[Item 19]
20. The medium of claim 17, wherein the operating method further comprises the steps of receiving a full signal from a transmitting virtual port and forwarding frames from the transmitting virtual port that outputs the full signal to the network physical port.
[Item 20]
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 said 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 plurality of third encapsulated frames and the matching encapsulated frames 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 receiving virtual port identifier in the header of the matching encapsulated frame;
unpacking the switchably passed matching encapsulated frames at a plurality of receiving virtual ports to extract a plurality of fourth encapsulated frames from the plurality of matching encapsulated frames, whereby each receiving virtual port unpacks the matching encapsulated frame to extract a fourth encapsulated frame, the receiving virtual port including a second portion of the shared memory;
unpacking the plurality of fourth encapsulated frames to extract a plurality of output frames from the plurality of fourth encapsulated frames, the plurality of output frames having a plurality of frame types, each output frame having a header identifying a destination router/switch;
20. The medium according to item 19, further comprising:
Claims (21)
前記フレーミング回路に結合されている複数の送信仮想ポートであって、前記複数の第1のカプセル化されたフレームの前記ヘッダにおける前記仮想出口デバイスに基づいて前記複数の第1のカプセル化されたフレームに関する仮想ネットワークにおける複数のネクストホップを特定し、前記複数の第1のカプセル化されたフレームをカプセル化して、複数の第2のカプセル化されたフレームを形成するための複数の送信仮想ポートであり、それぞれの第2のカプセル化されたフレームが、ヘッダを有し、第2のカプセル化されたフレームの前記ヘッダが、第1のカプセル化されたフレームのネクストホップに基づいて前記第2のカプセル化されたフレームのネクストホップを、そして入力フレームの前記関連付けられている仮想出口デバイスの前記受信仮想ポートを識別する、複数の送信仮想ポートと、
前記複数の送信仮想ポートに結合されている送信仮想スイッチであって、前記送信仮想ポートを複数のネットワーク物理ポートのいずれかに選択的に結合するための送信仮想スイッチと、
を備える仮想ネットワークデバイス。 a framing circuit for receiving a plurality of input frames, examining the plurality of input frames to identify a frame type for each input frame, identifying a virtual exit device associated with each input frame based on the frame type, and encapsulating the plurality of input frames to form a plurality of first encapsulated frames, each virtual exit device having a receive virtual port, the plurality of first encapsulated frames having a plurality of headers, the plurality of headers identifying a plurality of virtual exit devices respectively associated with the plurality of input frames;
a plurality of transmit virtual ports coupled to the framing circuit for identifying a plurality of next hops in a virtual network for the plurality of first encapsulated frames based on the virtual exit device in the headers of the plurality of first encapsulated frames and for encapsulating the plurality of first encapsulated frames to form a plurality of second encapsulated frames, each second encapsulated frame having a header, the header of the second encapsulated frame identifying a next hop for the second encapsulated frame based on the next hop of the first encapsulated frame and the receiving virtual port of the associated virtual exit device of an input frame;
an outgoing virtual switch coupled to the plurality of outgoing virtual ports for selectively coupling the outgoing virtual ports to any of a plurality of network physical ports;
1. A virtual network device comprising:
前記フレームタイプに基づいて送信仮想ポートへのフレームに関するルートを特定し、前記フレームを前記送信仮想ポートへ向けて出力する仮想スイッチと、
前記仮想スイッチに結合されているフレーマであって、前記入力フレームをカプセル化するためのフレーマと、
を含む、請求項1に記載の仮想ネットワークデバイス。 The framing circuit,
a virtual switch that identifies a route for the frame to a sending virtual port based on the frame type and outputs the frame toward the sending virtual port;
a framer coupled to the virtual switch for encapsulating the input frame;
The virtual network device of claim 1 .
前記受信物理ポートに結合されている受信仮想スイッチであって、前記一致するカプセル化されたフレームの前記ヘッダにおける前記受信仮想ポート識別子に基づいて前記一致するカプセル化されたフレームを切り替え可能に渡すための受信仮想スイッチと、
前記受信仮想スイッチに結合されている複数の受信仮想ポートであって、前記切り替え可能に渡された一致するカプセル化されたフレームをアンパックして、複数の一致するカプセル化された前記フレームから複数の第4のカプセル化されたフレームを抽出するための複数の受信仮想ポートであり、それによって、それぞれの受信仮想ポートが、一致するカプセル化されたフレームをアンパックして、第4のカプセル化されたフレームを抽出し、前記受信仮想ポートが、前記共有メモリの第2の部分を含む、複数の受信仮想ポートと、
前記複数の受信仮想ポートに結合されているデフレーミング回路であって、前記複数の第4のカプセル化されたフレームをアンパックして、前記複数の第4のカプセル化されたフレームから複数の出力フレームを抽出するためのデフレーミング回路であり、前記複数の出力フレームが、複数のフレームタイプを有し、それぞれの出力フレームが、宛先ルータ/スイッチを識別するヘッダを有する、デフレーミング回路と、
をさらに備える、請求項6に記載の仮想ネットワークデバイス。 a receiving physical port that receives a plurality of third encapsulated frames, examines the plurality of third encapsulated frames to identify a plurality of frame destinations, compares the plurality of frame destinations to stored destinations, and forwards the third encapsulated frames with the matching destinations as matching encapsulated frames, wherein the plurality of third encapsulated frames and the matching encapsulated frames have a plurality of headers, the plurality of headers having a plurality of receiving virtual port identifiers;
a receive virtual switch coupled to the receive physical port for switchably passing the matching encapsulated frame based on the receive virtual port identifier in the header of the matching encapsulated frame;
a plurality of receive virtual ports coupled to the receive virtual switch for unpacking the switchably passed matching encapsulated frames to extract a plurality of fourth encapsulated frames from the plurality of matching encapsulated frames, whereby each receive virtual port unpacks the matching encapsulated frames to extract a fourth encapsulated frame, the receive virtual port including a second portion of the shared memory;
a deframing circuit coupled to the plurality of receiving virtual ports for unpacking the plurality of fourth encapsulated frames to extract a plurality of output frames from the plurality of fourth encapsulated frames, the plurality of output frames having a plurality of frame types, each output frame having a header that identifies a destination router/switch;
The virtual network device of claim 6 , further comprising:
複数の入力フレームを受信するステップと、
前記複数の入力フレームを調べて、それぞれの入力フレームに関するフレームタイプを特定するステップと、
前記フレームタイプに基づいて、それぞれの入力フレームに関連付けられている仮想出口デバイスを特定するステップであり、それぞれの仮想出口デバイスが、受信仮想ポートを有する、ステップと、
前記複数の入力フレームをカプセル化して、複数の第1のカプセル化されたフレームを形成するステップであり、前記複数の第1のカプセル化されたフレームが、複数のヘッダを有し、前記複数のヘッダが、前記複数の入力フレームにそれぞれ関連付けられている複数の仮想出口デバイスを識別する、ステップと、
前記複数の第1のカプセル化されたフレームの前記ヘッダにおける前記仮想出口デバイスに基づいて前記複数の第1のカプセル化されたフレームに関する仮想ネットワークにおける複数のネクストホップを特定するステップと、
複数の送信仮想ポートにおいて複数の第1のカプセル化されたフレームをカプセル化して、複数の第2のカプセル化されたフレームを形成するステップであり、それぞれの第2のカプセル化されたフレームが、ヘッダを有し、第2のカプセル化されたフレームの前記ヘッダが、第1のカプセル化されたフレームのネクストホップに基づいて前記第2のカプセル化されたフレームのネクストホップを、そして入力フレームの前記関連付けられている仮想出口デバイスの前記受信仮想ポートを識別する、ステップと、
前記送信仮想ポートを複数のネットワーク物理ポートのいずれかに選択的に結合するステップと、
を含む方法。 1. 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 headers identifying a plurality of virtual egress devices respectively associated with the plurality of input frames;
determining 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 having a header, the header of the second encapsulated frame identifying a next hop of the second encapsulated frame based on a next hop of the first encapsulated frame and the receiving virtual port of the associated virtual egress device of an input frame;
selectively binding the transmit virtual port to one of a plurality of network physical ports;
The method includes:
前記複数の第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 said plurality of frame destinations to stored destinations;
forwarding the third encapsulated frame as a matching encapsulated frame with a matching destination, the third encapsulated frames and the matching encapsulated frames 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 receiving virtual port identifier in the header of the matching encapsulated frame;
unpacking the switchably passed matching encapsulated frames at a plurality of receiving virtual ports to extract a plurality of fourth encapsulated frames from the plurality of matching encapsulated frames, whereby each receiving virtual port unpacks the matching encapsulated frame to extract a fourth encapsulated frame, the receiving virtual port including a second portion of the shared memory;
unpacking the plurality of fourth encapsulated frames to extract a plurality of output frames from the plurality of fourth encapsulated frames, the plurality of output frames having a plurality of frame types, each output frame having a header identifying a destination router/switch;
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, the program instructions, when executed by a processor, causing the processor to perform a method of operating a virtual network device, the method 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 headers identifying a plurality of virtual egress devices respectively associated with the plurality of input frames;
determining 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 having a header, the header of the second encapsulated frame identifying a next hop of the second encapsulated frame based on a next hop of the first encapsulated frame and the receiving virtual port of the associated virtual egress device of an input frame;
selectively binding the transmit virtual port to one of a plurality of network physical ports;
Including, media.
複数の第3のカプセル化されたフレームを受信するステップと、
前記複数の第3のカプセル化されたフレームを調べて、複数のフレーム宛先を特定するステップと、
前記複数のフレーム宛先を、格納されている宛先に比較するステップと、
それぞれの第3のカプセル化されたフレームを、一致する宛先とともに、一致するカプセル化されたフレームとして転送して、複数の一致するカプセル化されたフレームを転送するステップであって、前記複数の第3のカプセル化されたフレーム及び一致するカプセル化されたフレームが、複数のヘッダを有し、前記複数のヘッダが、複数の受信仮想ポート識別子を有する、ステップと、
前記一致するカプセル化されたフレームの前記ヘッダにおける前記受信仮想ポート識別子に基づいて前記一致するカプセル化されたフレームを切り替え可能に渡すステップと、
複数の受信仮想ポートにおいて前記切り替え可能に渡された一致するカプセル化されたフレームをアンパックして、前記複数の一致するカプセル化されたフレームから複数の第4のカプセル化されたフレームを抽出するステップであって、それによって、それぞれの受信仮想ポートが、一致するカプセル化されたフレームをアンパックして、第4のカプセル化されたフレームを抽出し、前記受信仮想ポートが、前記共有メモリの第2の部分を含む、ステップと、
前記複数の第4のカプセル化されたフレームをアンパックして、前記複数の第4のカプセル化されたフレームから複数の出力フレームを抽出するステップであって、前記複数の出力フレームが、複数のフレームタイプを有し、それぞれの出力フレームが、宛先ルータ/スイッチを識別するヘッダを有する、ステップと、
をさらに含む、請求項20に記載の媒体。 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 said 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 plurality of third encapsulated frames and the matching encapsulated frames 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 receiving virtual port identifier in the header of the matching encapsulated frame;
unpacking the switchably passed matching encapsulated frames at a plurality of receiving virtual ports to extract a plurality of fourth encapsulated frames from the plurality of matching encapsulated frames, whereby each receiving virtual port unpacks the matching encapsulated frame to extract a fourth encapsulated frame, the receiving virtual port including a second portion of the shared memory;
unpacking the plurality of fourth encapsulated frames to extract a plurality of output frames from the plurality of fourth encapsulated frames, the plurality of output frames having a plurality of frame types, each output frame having a header identifying a destination router/switch;
The medium of claim 20 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 (2)
| Publication Number | Publication Date |
|---|---|
| JP2023523915A JP2023523915A (en) | 2023-06-08 |
| JP7565376B2 true JP7565376B2 (en) | 2024-10-10 |
Family
ID=78468629
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2022563954A Active JP7565376B2 (en) | 2020-05-06 | 2021-03-10 | Virtual network device, method of operating a virtual network device and non-transitory computer-readable storage medium |
Country Status (8)
| Country | Link |
|---|---|
| EP (1) | EP4147395A4 (en) |
| JP (1) | JP7565376B2 (en) |
| KR (2) | KR102691825B1 (en) |
| CN (2) | CN118764388A (en) |
| AU (3) | AU2021268768B2 (en) |
| BR (1) | BR112022021767A2 (en) |
| CO (1) | CO2022015545A2 (en) |
| WO (1) | WO2021223510A1 (en) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2000286853A (en) | 1999-03-16 | 2000-10-13 | Nortel Networks Ltd | Method and apparatus for routing packets |
| US20120093034A1 (en) | 2010-10-15 | 2012-04-19 | International Business Machines Corporation | Virtual switching ports on high-bandwidth links |
| JP2015039166A (en) | 2013-07-25 | 2015-02-26 | カビウム・インコーポレーテッド | Network interface card with virtual switch and traffic flow policy enforcement |
| JP2017508395A (en) | 2014-03-12 | 2017-03-23 | オラクル・インターナショナル・コーポレイション | Virtual port mapping for non-blocking operation between physical ports |
Family Cites Families (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5959990A (en) * | 1996-03-12 | 1999-09-28 | Bay Networks, Inc. | VLAN frame format |
| US20080008202A1 (en) * | 2002-10-31 | 2008-01-10 | Terrell William C | Router with routing processors and methods for virtualization |
| 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 |
| CA3081255C (en) | 2009-04-01 | 2023-08-22 | Nicira, Inc. | Method and apparatus for implementing and managing virtual switches |
| CN102238091B (en) * | 2011-07-22 | 2017-03-15 | 中兴通讯股份有限公司 | A kind of file transmitting method and access controller |
| US9590820B1 (en) * | 2011-09-02 | 2017-03-07 | Juniper Networks, Inc. | Methods and apparatus for improving load balancing in overlay networks |
| CN103326940B (en) * | 2012-03-22 | 2017-04-26 | 华为技术有限公司 | Method for forwarding message in network and edge device of operator |
| CN103428061B (en) * | 2012-05-14 | 2016-12-28 | 上海贝尔股份有限公司 | Access chassis node and the method utilizing access chassis node to carry out data forwarding |
| CN104871495B (en) * | 2012-09-26 | 2018-07-13 | 华为技术有限公司 | Virtual superposition gateway for stacking network |
| CN104518935B (en) * | 2013-09-27 | 2018-05-25 | 华为技术有限公司 | Realize the methods, devices and systems of virtual network communication |
| US9432487B2 (en) * | 2014-08-04 | 2016-08-30 | Futurewei Technologies, Inc. | System and method for network protocol offloading in virtual networks |
| 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 |
| US20180213462A1 (en) * | 2015-08-03 | 2018-07-26 | Nec Corporation | Transmission device, transmission control method, and recording medium |
| US10187263B2 (en) * | 2016-11-14 | 2019-01-22 | Futurewei Technologies, Inc. | Integrating physical and virtual network functions in a service-chained network environment |
| US11233778B2 (en) * | 2018-08-15 | 2022-01-25 | Juniper Networks, Inc. | Secure forwarding of tenant workloads in virtual networks |
-
2021
- 2021-03-10 KR KR1020227038575A patent/KR102691825B1/en active Active
- 2021-03-10 WO PCT/CN2021/079987 patent/WO2021223510A1/en not_active Ceased
- 2021-03-10 BR BR112022021767A patent/BR112022021767A2/en unknown
- 2021-03-10 CN CN202410771008.1A patent/CN118764388A/en active Pending
- 2021-03-10 EP EP21799925.9A patent/EP4147395A4/en active Pending
- 2021-03-10 CN CN202180033164.2A patent/CN115552819B/en active Active
- 2021-03-10 JP JP2022563954A patent/JP7565376B2/en active Active
- 2021-03-10 KR KR1020247025875A patent/KR20240121352A/en active Pending
- 2021-03-10 AU AU2021268768A patent/AU2021268768B2/en active Active
-
2022
- 2022-10-29 CO CONC2022/0015545A patent/CO2022015545A2/en unknown
-
2024
- 2024-02-21 AU AU2024201137A patent/AU2024201137B2/en active Active
-
2025
- 2025-05-23 AU AU2025203836A patent/AU2025203836A1/en active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2000286853A (en) | 1999-03-16 | 2000-10-13 | Nortel Networks Ltd | Method and apparatus for routing packets |
| US20120093034A1 (en) | 2010-10-15 | 2012-04-19 | International Business Machines Corporation | Virtual switching ports on high-bandwidth links |
| JP2015039166A (en) | 2013-07-25 | 2015-02-26 | カビウム・インコーポレーテッド | Network interface card with virtual switch and traffic flow policy enforcement |
| JP2017508395A (en) | 2014-03-12 | 2017-03-23 | オラクル・インターナショナル・コーポレイション | Virtual port mapping for non-blocking operation between physical ports |
Also Published As
| Publication number | Publication date |
|---|---|
| AU2024201137B2 (en) | 2025-02-27 |
| AU2021268768A1 (en) | 2022-11-17 |
| BR112022021767A2 (en) | 2022-12-13 |
| KR20230006486A (en) | 2023-01-10 |
| CN115552819B (en) | 2024-07-02 |
| AU2025203836A1 (en) | 2025-06-12 |
| AU2021268768B2 (en) | 2023-11-23 |
| AU2024201137A1 (en) | 2024-03-14 |
| EP4147395A4 (en) | 2024-05-01 |
| JP2023523915A (en) | 2023-06-08 |
| EP4147395A1 (en) | 2023-03-15 |
| KR20240121352A (en) | 2024-08-08 |
| CN118764388A (en) | 2024-10-11 |
| CN115552819A (en) | 2022-12-30 |
| WO2021223510A1 (en) | 2021-11-11 |
| CO2022015545A2 (en) | 2022-11-08 |
| KR102691825B1 (en) | 2024-08-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12452195B2 (en) | Virtual network device | |
| US12323271B2 (en) | Virtual network | |
| JP7565376B2 (en) | Virtual network device, method of operating a virtual network device and non-transitory computer-readable storage medium | |
| JP7734253B2 (en) | Virtual Exit Device, Method of Operating a Virtual Exit Device, and Non-Transitory Computer-Readable Storage Medium | |
| JP7764540B2 (en) | Virtual forwarding device, method of operation thereof and computer-readable storage medium | |
| HK40084444A (en) | Virtual network device | |
| HK40084444B (en) | Virtual network device | |
| HK40085813B (en) | Virtual network | |
| HK40085813A (en) | Virtual network | |
| HK40085481A (en) | Method of forming a virtual network | |
| HK40085481B (en) | Method of forming a virtual network |
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 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240619 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20240903 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240930 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7565376 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |