From 3866e35dc86d700c19001c46e56081ce6ae6c4cc Mon Sep 17 00:00:00 2001 From: Yaroslav Brustinov Date: Sun, 6 Mar 2016 11:15:28 +0200 Subject: [PATCH] add virtual NICs and passthrough in ESXi config info --- images/passthrough_adding.png | Bin 0 -> 3678 bytes images/passthrough_marking.png | Bin 0 -> 21375 bytes images/vSwitch_loopback.png | Bin 0 -> 3578 bytes images/vSwitch_main.png | Bin 0 -> 4880 bytes images/vSwitch_networks.png | Bin 0 -> 2400 bytes trex_book.asciidoc | 24 +++++++++++++++++++++++- 6 files changed, 23 insertions(+), 1 deletion(-) create mode 100755 images/passthrough_adding.png create mode 100755 images/passthrough_marking.png create mode 100755 images/vSwitch_loopback.png create mode 100755 images/vSwitch_main.png create mode 100755 images/vSwitch_networks.png diff --git a/images/passthrough_adding.png b/images/passthrough_adding.png new file mode 100755 index 0000000000000000000000000000000000000000..4b2c316789cf3a669b8ebe77b51727e513d2e0bf GIT binary patch literal 3678 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 literal 0 HcmV?d00001 diff --git a/images/vSwitch_main.png b/images/vSwitch_main.png new file mode 100755 index 0000000000000000000000000000000000000000..37e0b08ebc2b71a54759586ca6cba37e9e8a0333 GIT binary patch literal 4880 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 EZ?rP3`v3p{ literal 0 HcmV?d00001 diff --git a/trex_book.asciidoc b/trex_book.asciidoc index f0ef132b..3c7b30fd 100755 --- a/trex_book.asciidoc +++ b/trex_book.asciidoc @@ -441,7 +441,21 @@ zmq publisher at: tcp://*:4500 WARNING: If you don't see rx packets, revisit your MAC address configuration. -==== Running TRex for the first time with virtual NICs + vSwitch +==== Running TRex for the first time with ESXi: + +* Virtual NICs can be used to bridge between TRex and non-supported NICs or get some basic impression/testing. Bandwidth is limited by vSwitch, has ipv6 issues. + +1. Click on the host machine, enter Configuration -> Networking. + +a. One of the NICs should be connected to the main vSwitch network to get "outside" connection, for the TRex client and ssh: + +image:images/vSwitch_main.png[title="vSwitch_main"] + +b. Other NICs that are used for TRex traffic should be in distinguish vSwitch: + +image:images/vSwitch_loopback.png[title="vSwitch_loopback"] + +2. Right click on guest machine -> Edit settings -> Ensure the NICs are set to their networks: + +image:images/vSwitch_networks.png[title="vSwitch_networks"] + [NOTE] ===================================================================== @@ -452,6 +466,14 @@ sudo ./t-rex-64 -f cap2/dns.yaml --lm 1 --lo -l 1000 -d 100 vSwitch can't know where to "route" the packet, it supposed to be fixed once TRex supports ARP ===================================================================== +* Pass-through is the way to use directly the NICs from host machine inside the VM. Has no limitations except the NIC/hardware itself. The only difference via bare-metal OS is seldom spikes of latency (~10ms). Passthrough settings can't be saved to OVA. + +1. Click on the host machine, enter Configuration -> Advanced settings -> Edit. Mark the wanted NICs. Reboot the ESXi to apply. + +image:images/passthrough_marking.png[title="passthrough_marking"] + +2. Right click on guest machine -> Edit settings -> Add -> *PCI device* -> Choose the NICs one by one. + +image:images/passthrough_adding.png[title="passthrough_adding"] + ==== Running TRex for the first time with router You can follow this presentation link:trex_config_guide.html[first time TRex configuration] -- 2.16.6