W życiu każdego inżyniera przychodzi taki moment, kiedy musi zaprojektować sieć. I nie ma tu znaczenia czy ma to być duże DC, średniej wielkości kampus czy mikro sieć w małej firmie. Ważne jest, aby odpowiednio się do tego zadania przygotować. Bez dobrego planu jesteś skazany na porażkę, dlatego mam dla Ciebie listę najważniejszych rzeczy, o których musisz pamiętać.
W dalszej części wpisy znajdziesz wskazówki, z których możesz skorzystać podczas projektowanie sieci komputerowej.
Zbieranie wymagań
To jeden z najczęściej bagatelizowanych punktów podczas pracy z sieciami komputerowymi. Sam popełniałem ten błąd. Dobrze, precyzyjnie ustalone wymagania techniczne to… nawet nie połowa sukcesu!
Równie ważna jest wiedza, dlaczego klient chce modernizować sieć. Jakie problemy chce rozwiązać? Jakie ma plany co do dalszego rozwoju?
Takie szersze spojrzenie na dany projekt, pozwoli Ci lepiej zrozumieć swoje zadanie, uniknąć nieporozumień oraz zaoszczędzi mnóstwo czasu, który i tak będziesz musiał poświęcić na rozmowach z klientem. Dodatkowo osoba, która zleci Ci projekt, będzie miała poczucie, że dbasz o jej potrzeby oraz sprawisz wrażenie profesjonalisty, a z takimi ludźmi biznes lubi pracować.
Odpowiedni dobór sprzętu
Każdy z nas chciałbym pracować z najnowszymi dostępnymi na rynku technologiami. Jednak projektując sieci komputerowe, musisz odłożyć na bok swoje ego i skupić się na dostarczeniu jak najlepszego rozwiązania. Dobierając sprzęt, musimy pamiętać o tym, że klient ma określony budżet. Prawdopodobnie ma również zespół, który jest odpowiedzialny za utrzymanie.
Jeśli większość sieci klienta zbudowana w oparciu o rozwiązania Cisco, to nie ma większego sensu wpychać konkurencyjnego Junipera. Tak samo, do małego biura, nie wstawia się switchy typu Nexus czy QFX.
Hierarchiczny model sieci
Projektując naszą przyszłą sieć, warto mieć w głowie świadomość, że może ona się z czasem rozrastać. Warto więc już od początku myśleć o jak największej możliwości skalowalności. Z pomocą przyjdzie nam hierarchiczny model sieci oraz modułowa konstrukcja warstw, o której przeczytasz w kolejnym podpunkcie.
Hierarchiczny model sieci, to taki, w którym poszczególne urządzenia są grupowane w warstwy w zależności od swojego przeznaczenia. W najpopularniejszym obecnie modelu 3-tier wyszczególniamy, jak się pewnie domyślasz 3 warstwy różniące się przeznaczeniem. Jeśli nie masz potrzeby rozdzielać sieci na tyle poziomów, lub masz po prostu mniej sprzętu w danej lokacji, mówimy wtedy o modelu collapsed-core.


Warstwa Rdzenia:
Zapewnia usługi routingu jednakowo w części LAN, jak i na styku LAN-u i WAN-u. Ponieważ jej znaczenie jest krytyczne dla działania sieci, należy zapewnić wysoką odporność na awarię w sieci. Wysoce zalecane jest stosowanie wszelkich dostępnych metod redundancji na tym poziomie, zarówno tych fizycznych jak zapasowe źródła zasilania, łącza WAN czy same redundantne do siebie urządzenia.
Warstwa dystrybucyjna:
W języku polskim nazwa warstwa agregacji zdecydowanie lepiej oddaje przeznaczenie tego segmentu niż nazwa dystrybucyjna. W tej warstwie powinniśmy agregować wszystkie urządzenia pracujące w warstwie dostępowej. Ponieważ urządzenia dystrybucyjne powinny posiadać bezpośrednie połączenie z każdym innym urządzeniem w sieci, stanowią idealne miejsce na ustanowienie root bridge’a dla STP. Dodatkowo zapewniamy granicę pomiędzy poszczególnymi warstwami, tak aby tylko niezbędny ruch przechodził do części core naszej sieci.
Warstwa Dostępowa:
Jak sama nazwa wskazuje, zapewnia dostęp dla użytkowników oraz serwerów w sieci. To tutaj implementujemy zabezpieczenia sieci przed nieuprawnionym fizycznym dostępem jak uwierzytelnianie dot1X czy port security.
Design modułowy
Projektowanie modułowe jest ściśle związane z omawianym wcześniej podziałem sieci na wyspecjalizowane warstwy. Oznacza to, że konfigurując wszystkie urządzenia w danej warstwie, wykorzystamy bardzo zbliżoną konfigurację. Przykładowo gdy spojrzymy na switche w warstwie dostępowej, posiadają one taką samą funkcję, umożliwiają dostęp do sieci. Idąc w górę naszej sieci, urządzenia dystrybucyjne nie posiadają portów dostępowych, skupiając się wyłącznie na przesyłaniu danych pomiędzy użytkownikami w ramach sieci LAN lub przesyłaniu ich do warstwy core.
Takie podejścia sprawia, że nasz projekt jest łatwoskalowalny, prosty w zarządzaniu oraz ułatwia późniejszy troubleshooting.
Segmentacja sieci – VLANY i subnetting
Podstawowym elementem każdej sieci LAN są vlany. Stworzenie jednolitej struktury vlanów oraz ich przypisania do fizycznych interfejsów znacząco ułatwia późniejsze zarządzanie siecią. Tak przygotowana struktura powinna zostać zastosowana w całej sieci. Jednak nie zawsze możemy sobie pozwolić na pozostawienie nieużywanych portów, w takim wypadku warto przyjąć schemat kolejności przypisywania portów do vlanów. Na przykład pierwsze porty będą portami dla użytkowników lokalnych, następnie będziemy podłączać porty dla access pointów, drukarek itd.
Mając już stworzoną docelową strukturę podziału naszej sieci na poszczególne vlany, możemy przystąpić do przypisania odpowiednich pul adresów. W przypadku typowej sieci LAN, w warstwie trzeciej dostaniemy jedną pulę adresową na przykład 10.0.0.0/16, którą następnie należy podzielić na mniejsze podsieci zgodnie z wymogami.
Dobierając wielkość poszczególnych podsieci, pamiętaj o obecnie obowiązujących trendach, jak również o tych nadchodzących. Obecnie obserwujemy znaczący wzrost ilości urządzeń podłączanych bezprzewodowo. Każdy współczesny laptop posiada możliwość podpięcia się do sieci WiFi, ale nie możemy również zapominać, że wszyscy korzystamy również z komórek, tabletów itd.
Przyjmuje się jako dobrą praktykę:
- Stosowanie jednego Acess-point’a na dziesięciu, piętnastu użytkowników.
- Bezprzewodowe Access-pointy powinny być podłączone poprzez linki 1Gbps i zasilane z POE.
Trendy w rozwoju sieci
Sieci komputerowe są jednym z najrzadziej modernizowanych elementów środowiska IT, tak więc projektując, musisz mieć na uwadze, nie tylko obecne wymagania, ale również przyszłe oczekiwania wobec infrastruktury. Oprócz rosnących wymagań co do dostępnej przepustowości musisz być świadomy zmieniających się trendów w samym sposobie dostępu do sieci.
Liczba podłączeń sieci LAN w sposób przewodowy spada, nie oznacza to jednak, że liczba użytkowników oraz urządzeń spada. Tendencja jest wprost przeciwna. W ostatnich latach obserwujemy gwałtowny wzrost liczby urządzeń korzystających z sieci. Zmieniło się jedynie medium z przewodowego na bezprzewodowe.
Kolejnym ważnym trendem jest BYOD z ang. Bring Your Own Device. Użytkownicy są coraz bardziej świadomi swoich potrzeb oraz mają własne preferencje co do środowiska, w którym pracują. Ważnym jest, więc, aby zapewnić odpowiednie polityki dostępu do sieci wewnętrznych, które jasno wskazują, do jakich zasób może uzyskać dostęp pracownik korzystający z własnego sprzętu.
Konwencja nazewnictwa
Jeśli sieć, którą projektujemy, będzie stanowić element większej infrastruktury, nie powinniśmy tworzyć własnej konwencji nazewnictwa. W takim wypadku lepiej przyjąć obecnie istniejącą. Jeśli jednak będziesz miał okazję stworzyć własną konwencję, pamiętaj, aby była jak najbardziej funkcjonalna.
Idealna konwencja nazewnictwa to taka, która pozwala, tylko patrząc na nazwę urządzenia określić:
- Rodzaj urządzenia (Router, Switch, Access-Point, Firewall itp.)
- Fizyczną lokalizację
- Funkcję lub przeznaczenie
Nadsubskrypcja
Tworząc swój design, musisz pamiętać, że jest to prawdziwa sztuka kompromisów. Każdy z nas chciałby mieć super szybkie łącze, powiedzmy 1 Gbps, ale zapewnienie takiej przepustowości przez cały czas jest bardzo drogie. I o ile zarezerwowanie takiego pasma dla serwerów ma sens, o tyle dla użytkownika końcowego już nie koniecznie.
Co zrobić, aby zapewnić dobry transfer, jednocześnie nie generując dodatkowych kosztów? W tym miejscu wchodzi zjawisko zwane nadsubskrypcją, które polega na udostępnieniu określonej przepustowości wielu użytkownikom, którzy są następnie agregowani do znacznie mniejszej prędkości w górę naszej sieci. Dzięki temu każdy użytkownik jest w stanie wykorzystać 100% swojej przepustowości -oczywiście nie wszyscy naraz – bez konieczności utrzymywania dedykowanej ścieżki, która większość czasu byłaby nieużywana.
Typowe konfiguracje sieci komputerowych
W tym akapicie omówimy sobie najczęściej występujące rodzaje konfiguracji. Omówimy sobie możliwe scenariusze połączenie warstwy dostępowej z dystrybucyjną za pomocą L2 oraz L3 z modelu ISO/OSI. Pamiętaj, projektowanie sieci komputerowych to sztuka kompromisów. Nie ma jednego, idealnego designu, każdy posiada zalety oraz wady, które musisz wziąć pod uwagę podczas projektowania.
Topologia L2 z wykorzystaniem spanning-tree
Najprostsza możliwa do realizacji topologia. Wymaga minimalnej konfiguracji, dzięki czemu jest szybka we wdrożeniu. Niestety wykorzystanie domyślnej konfiguracji spanning-tree sprawia, że część interfejsów przechodzi w stan blokowania, przez co tracimy dostępną przepustowość.

Plusy:
- Topologia łatwa do skonfigurowania
- Prosta konfiguracja
Minusy:
- Spanning-tree blokuje część interfejsów
- Wolna konwergencja sieci
- Ukryta złożoność STP
Topologia L2 z wykorzystaniem PVST lub FHRP
W celu wyeliminowania problemu pętli warstwy 2 podczas projektowania sieci komputerowych mamy dwa rozwiązania. Możemy ręcznie rozłożyć vlany na poszczególne interfejsy uplinkowe lub skorzystać z protokołów redundancji bramy domyślnej.

Plusy:
- Wszystkie interfejsy aktywne
- Szybka konwergencja
Minusy:
- Większa złożoność konfiguracji
- Brak jednolitej konfiguracji
Topologia L3
Topologia z wykorzystaniem mechanizmów warstwy trzeciej zapewnia automatyczne równoważenie ruchu, szybką konwergencję oraz jest odporna na powstawanie pętli. Niestety w zamian wymaga największego nakładu przy konfiguracji oraz jest najdroższa pod względem cen sprzętu. Również, o czym wielu architektów zapomina, stawia największe wyzwania przed osobami, które później muszą utrzymywać sieć.

Plusy:
- Wszystkie interfejsy aktywne
- Szybka konwergencja
- Aktywne równoważenie ruchu
Minusy:
- Największa złożoność konfiguracji
- Brak jednolitej konfiguracji
- Wyższa cena zakupu sprzętu L3
Usprawnienia topologii
Każda z wcześniej przedstawionych topologii ma swoje wady i zalety, jednak każda z nich może zostać ulepszona. Jedną z najprostszych takich metod jest stosowanie agregacji interfejsów. Technologia ta nazywa się LAG link aggregation lub w przypadku Cisco Port-channel. Polega to na logicznym połączeniu kilku fizycznych interfejsów w jeden. Dzięki temu unikamy pętli L2, posiadamy ujednoliconą konfigurację na kilku interfejsach oraz oferujemy wyższą za agregowaną przepustowość.
Pamiętaj, jednak, że dostępna prędkość dla pojedynczego połączenia jest równa prędkości jednego fizycznego interfejsu, jest to ograniczenie wynikające z działania warstwy 2.
Kolejną metodą na ulepszenie naszej topologii jest stosowanie mechanizmu stackowania urządzeń. Jest to mechanizm polegający na połączeniu kilku fizycznych urządzeń w jedno logiczne. Dzięki temu eliminujemy możliwość powstania pętli oraz zmniejszamy liczbę urządzeń do zarządzania.
Ostatnią metodą, którą możesz zastosować, aby Twoja sieć była lepsza to redundancja. I tutaj masz naprawdę szerokie pole do popisu, ponieważ może stosować nadmiarowe interfejsy np. w LAG-u, dodatkowe urządzenia zarządzane samodzielnie lub w stacku. Warto również rozważyć stosowanie zapasowych łączy WAN oraz zapasowych źródeł zasilania.

To wszystko?
Oczywiście, że nie. Poruszyliśmy jedynie najważniejsze zagadnienia, które są uniwersalne dla każdego projektu sieci komputerowej, niezależnie od tego, z jakim vendorem będziesz pracował.
Co dla Ciebie jest najważniejsze podczas projektowania? Z jakim sprzętem najchętniej pracujesz?
Świetny artykuł dla przypomnienia jak i utrwalenia wiedzy. Niestety nie zawsze ma się możliwość na zaprojektowanie tak dużej sieci. Przeważnie wystarczy router i switch.
Dzięki! Czasem nawet ten router nie jest potrzebny, a wystarczy odpowiednio wydajny switch L3. Choć tu tak naprawdę wszystko zależy od skali, w jakiej działamy. Typowo nie projektuje się od razu wielkiej sieci, a jedynie poszczególne jej segmenty, dzięki czemu z małych bloków możemy stworzyć coś wielkiego 🙂
Dosc klasyczne podejscie, ktore popularyzowane bylo przez lata. Proponuje powiew swiezoscji i kilka dodatkowych funkcjonalnosci, dodajacych troche ingeligencji do skostnialego systemu: SDN, automation, orchestration , programmable backbone
Cześć Przemek, dzięki za komentarz. Materiał zawiera informacje o zasadach projektowania, które możesz zastosować w dowolnej sieci, z którą się spotkasz. SDN oraz reszta rzeczy, o których mówisz, nie zawsze jest optymalnym rozwiązaniem, czasem jest to wyciąganiem armaty na muchę, ale z pewnością w sieciach skali średniej i większej jest coraz mocniej popularne.
Na temat SD-WAN, SD-Access na pewno pojawią się osobne wpisy, stay tuned 🙂