Virtlab:Komponenty/Tunelovací server

Z VirtlabWiki

< Virtlab:Komponenty(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
Verze z 13:11, 24. 8. 2007
Kuc274 (Diskuse | příspěvky)

← Předchozí porovnání
Aktuální verze
Kuc274 (Diskuse | příspěvky)

Řádka 1: Řádka 1:
 +Při návrhu distribuované varianty virtuální síťové laboratoře se ukázala potřeba propojovat dvě i více vzdálených zařízení do jednoho virtuálního ethernetového segmentu a to dynamicky, podle potřeby uživatele. Navíc bylo potřeba počítat s tím, že v každé lokalitě může být zařízení, které má být do virtuálního ethernetového segmentu, připojeno do jiné VLAN. Při zkoumání možných řešení nebyl nalezen žádný vhodný existující software pro tunelování VLAN, a proto bylo přistoupeno k implementaci vlastního řešení.
 +
 +
 +Tunelovací server je jeden ze šesti serverů distribuovaného virtlabu. Jelikož se předpokládá jeho velké vytížení a hlavně potřeba vysoké rychlosti, je vhodné, aby běžel na vlastním fyzickém stroji. Pro svou činnost vyžaduje (minimálně) dvě síťová rozhraní. Jedním rozhraním je připojen k virtuálnímu spojovacímu poli a druhým do Internetu.
 +
 +Od spojovacího pole přebírá všechny rámce směřující k prvku v jiné lokalitě. Úkolem je "zamaskovat" skutečnost, že prvek fyzicky není ve stejném ethernetovém segmentu, ale třeba na druhém konci světa.
 +
 +'''Příklad:'''
 + | |
 + PC 1 -- Switch A -- | Internet | -- Switch B -- PC 2
 + | |
 +
 +Uživatel Virtlabu chce spojit Switch A a Switch B fyzickou linkou. Tyto switche se však mohou nacházet v různých lokalitách Distribuovaného Virtlabu. Tunelovací server tedy převezme všechny rámce směřující od Switche A do Switche B a zabalí je do UDP datagramu. Ten je poslán do lokality, kde se Switch B nachází. Tam jej opět převezme místní Tunelovací server a postará se o vybalení z UDP a odeslání směrem ke Switchi B.
 +
 +'''Uživateli Virtlabu je však celá tato procedura skryta a vše se mu jeví, jako by switche byly opravdu přímo fyzicky spojeny.'''
 +
 +----
 +== Shrnutí ==
 +'''Tunelovací server'''
 +
* má síťová rozhraní k lokálnímu segmentu virtuálního spojovacího pole (trunk do spojovacích prvků C3550) a do Internetu * má síťová rozhraní k lokálnímu segmentu virtuálního spojovacího pole (trunk do spojovacích prvků C3550) a do Internetu
* podle své konfigurace tuneluje rámce vybraných VLAN přicházející z lokálního segmentu virtuálního spojovacího pole k příslušným tunelovacím serverům jiných lokalit a opačně * podle své konfigurace tuneluje rámce vybraných VLAN přicházející z lokálního segmentu virtuálního spojovacího pole k příslušným tunelovacím serverům jiných lokalit a opačně
Řádka 6: Řádka 26:
Později předpoklad doplnění návaznosti na enkapsulační server synchronních rozhraní Později předpoklad doplnění návaznosti na enkapsulační server synchronních rozhraní
-==Zprovoznění USB-Ethernet převodníku==+== Detailní informace pro vývojáře ==
-Rackovatelný server Abacus má dvě síťové karty, které však používají hardwarovou akceleraci a tím znemožňují přístup k číslu VLAN. Tohle číslo je ale pro tunelovací server nezbytné, proto s těmito kartami nedokáže pracovat.+* [[Virtlab:Tunelovací server]]
- +
-Náhradní možnost je použít USB-Ethernet převodník (testováno s Edimax EU-4202). Ten se dá v linuxu (Debian s jádrem 2.6.8 a upgradovaný ze Sarge na Etch) velice jednoduše zprovoznit. Stačí příkaz '''modprobe usbnet'''. Karta se sice ze začátku "schovává" - tzn. ve vypisu ifconfig nebyla k nalezení, ale okamžiťe po připojení UTP kabelem do sítě se zobrazila jako eth2 a byla schopna práce.+
- +
-Pro automatické zavádění modulu po startu systému je nutné ještě dopsat do souboru '''/etc/modules''' řádek '''usbnet'''. ''(Zatim neni).''+
- +
-== Pozor na Spanning-tree ==+
-Tunelovací server nedokáže pracovat, pokud "hlavním" switchi (tzn. switch, který je k tun-serveru přímo připojen) není vypnut protokol spanning-tree. Vzorová konfigurace tohoto switche je ulozena v SVN v souboru ''DISTR/src/spojovac/C3550-permanent.cfg''.+
-[[Kategorie:Tomáš Hrabálek]]+[[Kategorie:Komponenty virtlabu]]
 +[[Kategorie:Server]]
 +[[Kategorie:Tunelovací server]]

Aktuální verze

Při návrhu distribuované varianty virtuální síťové laboratoře se ukázala potřeba propojovat dvě i více vzdálených zařízení do jednoho virtuálního ethernetového segmentu a to dynamicky, podle potřeby uživatele. Navíc bylo potřeba počítat s tím, že v každé lokalitě může být zařízení, které má být do virtuálního ethernetového segmentu, připojeno do jiné VLAN. Při zkoumání možných řešení nebyl nalezen žádný vhodný existující software pro tunelování VLAN, a proto bylo přistoupeno k implementaci vlastního řešení.


Tunelovací server je jeden ze šesti serverů distribuovaného virtlabu. Jelikož se předpokládá jeho velké vytížení a hlavně potřeba vysoké rychlosti, je vhodné, aby běžel na vlastním fyzickém stroji. Pro svou činnost vyžaduje (minimálně) dvě síťová rozhraní. Jedním rozhraním je připojen k virtuálnímu spojovacímu poli a druhým do Internetu.

Od spojovacího pole přebírá všechny rámce směřující k prvku v jiné lokalitě. Úkolem je "zamaskovat" skutečnost, že prvek fyzicky není ve stejném ethernetovém segmentu, ale třeba na druhém konci světa.

Příklad:

                      |              |
PC 1 -- Switch A  --  |   Internet   |  --  Switch B -- PC 2
                      |              | 

Uživatel Virtlabu chce spojit Switch A a Switch B fyzickou linkou. Tyto switche se však mohou nacházet v různých lokalitách Distribuovaného Virtlabu. Tunelovací server tedy převezme všechny rámce směřující od Switche A do Switche B a zabalí je do UDP datagramu. Ten je poslán do lokality, kde se Switch B nachází. Tam jej opět převezme místní Tunelovací server a postará se o vybalení z UDP a odeslání směrem ke Switchi B.

Uživateli Virtlabu je však celá tato procedura skryta a vše se mu jeví, jako by switche byly opravdu přímo fyzicky spojeny.


Shrnutí

Tunelovací server

  • má síťová rozhraní k lokálnímu segmentu virtuálního spojovacího pole (trunk do spojovacích prvků C3550) a do Internetu
  • podle své konfigurace tuneluje rámce vybraných VLAN přicházející z lokálního segmentu virtuálního spojovacího pole k příslušným tunelovacím serverům jiných lokalit a opačně
    • umí i kopírovat rámce do více VLAN
  • umožňuje přemosťovat mezi lokálními VLAN (kvůli propojování simulovaných laboratorních prvků připojených ke konstantě přiřazeným VLAN)

Později předpoklad doplnění návaznosti na enkapsulační server synchronních rozhraní

Detailní informace pro vývojáře