SMB 3.0 - Blok komunikatów serwera, czyli protokół SMB (Server Message Block)  Udostępnij na: Facebook

Autor: Dawid Dudek

Opublikowano: 2012-12-19

Blok komunikatów serwera (Server Massage Block, SMB), znany również jako CIFS (Common Internet File System), to protokół sieciowy wykorzystujący model komunikacji klient-serwer – klient składa żądanie, serwer odpowiada. Jest on odpowiedzialny głównie za udostępnianie plików w sieci i umożliwienie dostępu do usług w sieci. Tak naprawdę SMB umożliwia aplikacjom oraz użytkownikom dostęp do plików i innych zasobów zdalnych. Pozwala to na przeprowadzenie podstawowych operacji, jak: praca z plikami, czytanie, pisanie lub dostęp.

Krótka historia

Protokół SMB w wersji 1.0 przedstawiono w systemach Windows w celu obsługi bardzo wczesnych sieciowych systemów operacyjnych. Do czasu wprowadzenia Windows Vista i Windows Server 2008, protokół ten jedynie nieznacznie zmienił swoje zastosowanie –  wtedy zaprezentowano wersje 2.0 tego protokołu. Zawierał on kilka nowych funkcji, między innymi zwiększenie rozmiaru buforów czy zwiększenie skalowalności (większą ilość sesji przypadającą na serwer). Wraz z premierą Windows 7 i Windows Server 2008 R2 pojawiła się wersja 2.1, która objęła niewielką liczbę udoskonaleń oraz nową funkcję blokowania oportunistycznych plików. W momencie premiery pierwszej wersji Windows Server 8 używano protokołu SMB w wersji 2.2, jednakże wraz z premierą Windows Server 2012 przyjęto ten protokół w wersji 3.0. Numerację zwiększono ze względu na dużą ilość zmian, które zostały uwzględnione w tym protokole.

Zmiany, zmiany, zmiany…  SMB 3.0

Windows Server 2012 udostępnia duży zbiór nowych funkcji protokołu SMB, które znacznie zwiększają jego niezawodność, dostępność, łatwość zarządzania oraz wydajność serwera plików. Serwer plików Windows był od początku wykorzystywany głównie do przechowywania danych użytkowników końcowych. Nowe SMB oferuje szereg usprawnień w zakresie wydajności oraz poprawy dostępności. Poniżej, przedstawiono pokrótce niektóre funkcje nowego protokołu:

  • SMB dla serwera aplikacji - udostępnianie udziałów jest teraz najlepszym nisko kosztowym wyborem dla obciążeń serwera, jakimi jest Hyper-V czy SQL Server. Można na nich przechowywać dane zmienne w czasie. Przykładowo można przechowywać w tych udziałach pliki konfiguracyjne maszyn wirtualnych, ich dyski czy migawki.

Wykorzystanie dysku wirtualne z udziału sieciowego

Rys. 1. Wykorzystanie dysku wirtualne z udziału sieciowego.

* *

Dla wielu przedsiębiorstw takie rozwiązanie jest słuszną alternatywą dla infrastruktury SAN, ponieważ mogą one wykorzystywać istniejąca infrastrukturę Ethernet i używać standardowych serwerów. Również, w momencie tworzenia udostępnionych udziałów, użytkownicy mogą łatwiej nimi zarządzać. Nie potrzeba ustanawiać LUN czy konfigurować stref. Należy podkreślić, że to rozwiązanie jest nie tylko prostsze, ale przede wszystkim tańsze. Ponadto umożliwia większą elastyczność podczas przenoszenia obciążeń w obrębie centrum danych bez konieczności rekonfiguracji magazynu. Jeśli dane są przechowywane na ścieżkach UNC, można do nich uzyskać dostęp z dowolnego miejsca w centrum danych, posiadając oczywiście odpowiednie poświadczenia do udziału. Dzięki wsparciu tej funkcji w SMB 3.0 pojawia się dodatkowa opcja dla przechowywania danych, którą można wybrać między Fiber Channel, iSCSI SAN czy tablicami SAS, w zależności od preferencji, budżetu lub wymaganych funkcjonalności,

  • aktywne udostępnianie udziałów (SMB Scale OUT) – umożliwia klientom skalowanie pasma, dodając węzły klastra. W celu uzyskania jak największej przepustowości pasma łączona jest przepustowość wszystkich węzłów serwera. Nie ogranicza to przepustowości do jednego węzła klastra, jak to było w poprzednich wersjach,
  • skalowalność, szybkość i skuteczność dostępu z SMB Direct – SMB Direct (dostęp dzięki zdalnemu, bezpośredniemu dostępowi do pamięci – Remote Direct Memory Access (RDMA)) to nowy protokół transportowy dla SMB w Windows Server 2012. Umożliwia bezpośredni transfer danych z pamięci do pamięci, z minimalnym użyciem procesora i małym opóźnieniem, za pomocą kart sieciowych, obsługujących RDMA,
  • szybki transfer danych oraz odporność na uszkodzenia sieci dzięki SMB Multichannel – korzysta ona z możliwości wielu interfejsów sieciowych, aby zapewnić wysoką wydajność poprzez agregacje przepustowości oraz odporności na awarie sieci,
  • przezroczysta odporność na awarie oraz tolerancja błędu węzła klastra SMB Transparent Fileover – umożliwia administratorom przeprowadzanie konserwacji sprzętu lub oprogramowania węzłów w klastrowym serwerze plików bez przerywania działania aplikacji serwerowych. Ponadto, jeśli wyłączony zostanie węzeł klastra, klient SMB przełączy, w sposób przezroczysty, na inny węzeł bez przerwania działania aplikacji,

Uruchomienie kontynuacji dostępności

Rys. 2. Uruchomienie kontynuacji dostępności.

  • bezpieczna transmisja danych z SMB Encryption – chroni ona dane „w locie” przed podsłuchem i atakami sabotażu. Uruchomienie polega na zaznaczeniu pola wyboru, bez dodatkowych instalacji,

Uruchomienie SMB encryption

Rys. 3. Uruchomienie SMB encryption.

  • szybki dostęp do dokumentów w sieci dzięki SMB Directory Leasing, o wysokich opóźnieniach – redukuje ono opóźnienia zauważane przez użytkowników korzystających ze zdalnych udziałów sieciowych, udostępnianych przez niewydajne sieci WAN.

Podsumowanie

Tak wiele nowych funkcji oferuje składowanie wysokiej wydajności, w porównaniu do tradycyjnych i znanych już rozwiązań. Przechowywanie jest teraz bardziej przystępne, biorąc pod uwagę zarówno koszty wdrożenia technologii, jak i perspektywy zarządzania w środowisku produkcyjnym.