O software hipervisor usado em soluções de virtualização de ...

Próximas questões
Com base no mesmo assunto
Ano: 2015 Banca: SRH Órgão: UERJ Prova: SRH - 2015 - UERJ - Analista de Sistemas |
Q483300 Sistemas Operacionais
                        Virtual network appliances: Benefits and drawbacks

There's lots of talk about network virtualization benefits, but are virtual network appliances all they're cracked up to be? Only in some scenarios.
Network virtualization benefits can be plentiful, but only in certain scenarios. Learn where virtual network appliances can work -- and where they can't.
If virtualization enables servers to be spun up and down on demand for cost efficiency and agility, wouldn't it make sense to implement virtual network components too? After all, virtual servers need to communicate inbound and outbound and still be firewall-protected and load balanced. That would seem to be best addressed by virtual network appliances that can be spun-up on demand, right? Only in some scenarios.
Many networking vendors have already begun to minimize development cost by using Intel-based platforms and commodity hardware. Examples of this range from the Cisco ASA firewall to F5 load balancers and Vyatta routers. The obvious next step for some of these vendors has been to offer their products in virtual appliance packaging. F5 took a small step forward with the Local Traffic Manager - Virtual Edition (LTM VE), while Vyatta claims to offer a full range of virtual appliance solutions. VMware was somewhat late to the game, but it also offers virtualized firewalls (vShield Zones and vShield App) and routers/load balancers (vShield Edge).


                        Virtual network appliances: What's the catch?

The problem is that unlike servers, networking appliances commonly perform I/O-intensive tasks, moving large amounts of data between network interfaces with minimal additional processing, relying heavily on dedicated hardware. All high-speed routing and packet forwarding, as well as encryption (both IPsec and SSL) and load balancing, rely on dedicated silicon. When a networking appliance is repackaged into a virtual machine format, the dedicated hardware is gone, and all these tasks must now be performed by the general- purpose CPU, sometimes resulting in extreme reduction in performance.

Implementing routers, switches or firewalls in a virtual appliance would just burn the CPU cycles that could be better used elsewhere -- unless, of course, you’ve over-provisioned your servers and have plenty of idle CPU cycles, in which case something has gone seriously wrong with your planning.

To make matters worse, the hypervisor software used in server virtualization solutions also virtualizes the network interfaces. That means that every I/O access path to virtualized hardware from the networking appliance results in a context switch to higher privilege software (the hypervisor), which uses numerous CPU cycles to decode what needs to be done and emulate the desired action. Also, data passed between virtual machines must be copied between their address spaces, adding further latency to the process.

There is some help in that the VMware hypervisor has the DVFilter API, which allows a loadable kernel module to inspect and modify network traffic either within the hypervisor (vNetwork Data Path Agent) or in combination with a virtual machine (vNetwork Control Path Agent). The loadable kernel module significantly reduces the VM context switching overhead.


                        Where virtual network appliances can work?

There are some use cases in which virtual network appliances make perfect sense. For instance, you could virtualize an appliance that performs lots of CPU-intensive processing with no reliance on dedicated hardware. Web application firewalls (WAFs) and complex load balancers are perfect examples (no wonder they’re commonly implemented as loadable modules in Apache Web servers or as Squid reverse proxy servers).
Also, if you’re planning to roll out multi-tenant cloud, the flexibility gained by treating networking appliances as click-to-deploy Lego bricks might more than justify the subpar performance. This is especially so if you charge your users by their actual VM/CPU usage, in which case you don’t really care how much CPU they’re using.
Virtualized networking also makes sense when firewall and routing functions are implemented as part of the virtual switch in each hypervisor. This could result in optimal traffic flow between virtual machines (regardless of whether they belong to the same IP subnet or not) and solve the problem of traffic trombones. Unfortunately, it seems that Cisco is still the only vendor that extends the VMware hypervisor switch using the Virtual Ethernet Module (VEM) functionality. While numerous security solutions already deploy the VMsafe APIs, the networking appliances I’ve seen so far (including the vShield Edge from VMware) rely on virtual machines to forward traffic between virtual (or physical) LANs.
Obviously the networking vendors have a very long way to go before reaching the true potential of virtualized networking.

                          Disponível em: http://searchnetworking.techtarget.com/tip/Virtual-network-appliances-Benefits-and- drawbacks
                                                                              Search Networking - Tech Target - Texto de Ivan Pepelnjak (Março de 2011)


O software hipervisor usado em soluções de virtualização de servidores também virtualiza as interfaces de rede. Uma consequência que isso tem para o appliance de rede virtual é:
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Vamos discutir a alternativa correta da questão e esclarecer os conceitos envolvidos para garantir uma compreensão completa.

A alternativa correta é a D

**Alternativa D: "operações de entrada e saída feitas pelos appliances de rede virtuais resultam em ciclos extras de CPU associados às trocas de contexto"**

**Justificativa:**

Quando discutimos virtualização de rede, estamos falando sobre a implementação de funções de rede, como roteadores, firewalls e balanceadores de carga, em um ambiente virtual. Essa abordagem permite flexibilidade e pode reduzir custos, mas também vem com desafios específicos.

**Pontos Relevantes:**

  • **Virtualização das Interfaces de Rede**: O hipervisor é responsável por virtualizar as interfaces de rede das máquinas virtuais (VMs). Isso significa que cada operação de entrada e saída (I/O) realizada pelo appliance de rede virtual requer uma troca de contexto para um software de privilégio mais alto (o hipervisor).
  • **Troca de Contexto**: Esse processo de troca de contexto consome muitos ciclos de CPU, já que o hipervisor deve decodificar a operação e emular a ação desejada.
  • **Impacto no Desempenho**: Como resultado, as operações de I/O se tornam mais lentas e ineficientes, e o uso de CPU aumenta significativamente, o que pode degradar o desempenho geral do sistema.

Vamos analisar as outras alternativas para entender por que elas estão incorretas:

Alternativa A: "futuramente, a latência de processamento das operações de rede podem ser diminuídas"
**Comentário:** Embora futuras inovações possam eventualmente reduzir a latência, o texto não aborda essa perspectiva. Ele se concentra nos desafios atuais da virtualização de redes, especialmente sobre como a virtualização de interfaces de rede pelo hipervisor aumenta a latência de processamento.

Alternativa B: "a troca de dados entre máquinas virtuais é facilitada pelo acesso direto aos seus espaços de endereçamento"
**Comentário:** Esta declaração está incorreta porque o texto explica que a troca de dados entre VMs requer cópias entre seus espaços de endereçamento, o que adiciona latência extra. Portanto, não há "acesso direto" facilitado.

Alternativa C: "softwares importantes, como os de decodificação e análise de contexto, que usam muitos ciclos de CPU serão beneficiados"
**Comentário:** Na verdade, o texto destaca que a decodificação e análise de contexto pelo hipervisor consomem muitos ciclos de CPU, resultando em uma redução de performance, não em um benefício.

**Conclusão:**

A alternativa D é a correta porque descreve com precisão o impacto da virtualização de interfaces de rede. Cada operação de I/O feita pelo appliance de rede virtual resulta em ciclos extras de CPU devido às trocas de contexto necessárias pelo hipervisor, levando a uma sobrecarga de processamento.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Gabarito D

Em sistemas operacionais, uma troca de contexto (também conhecido como chaveamento ou mudança de contexto) é o processo computacional de armazenar e restaurar o estado (contexto) de uma CPU de forma que múltiplos processos possam compartilhar uma única instância de CPU. É garantido que quando o contexto anterior armazenado seja restaurado, o ponto de execução volte ao mesmo estado que foi deixado durante o armazenamento.

Termo referente a sistemas operacionais, encontrado também sobre a designação troca de contexto ou mudança de contexto, que se refere à saída de uma tarefa do processamento para que outra assuma, podendo a primeira não ter sido concluída. O chaveamento garante que quando a primeira novamente voltar a ser processada todo o seu contexto de software volte ao ponto de onde ela permitiu a entrada de outro processo.

 

"Retroceder Nunca Render-se Jamais !"
Força e Fé !
Fortuna Audaces Sequitur !

A resposta está, em inglês, no texto da questão. É mais uma questão de interpretação de texto e língua inglesa do que de Virtualização.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo