Rozdział 02.pdf

(1019 KB) Pobierz
12272086 UNPDF
Rozdział 2
Infrastruktura protokołów TCP/IP
w sieciach Windows
Sieci Microsoft Windows oferują szeroki wybór protokołów sieciowych:
TCP/IP, SPX/IPX, NBF oraz AppleTalk. Standardowe usługi Windows
korzystają z interfejsu NetBIOS i protokołu SMB – jest to niezależne od
używanego protokołu sieciowego. Standardowe aplikacje iusługi
internetowe - takie jak FTP, Telnet, DNS, SNMP, HTTP itd. - nie używają
NetBIOS ani SMB, lecz pracują bezpośrednio z protokołem TCP/IP.
W sieci Windows opartej na TCP/IP podstawowymi protokołami są:
TCP/IP w warstwie transportu i sieci modelu OSI, NetBIOS w warstwie
sesji i SMB w warstwie aplikacji. Niniejszy rozdział szczegółowo omawia
podstawowe protokoły w sieci Windows.
Protokoły Windows
Interfejs NetBIOS może funkcjonować ponad różnymi protokołami, jak
np. IPX, NBF iTCP/IP. Kiedy NetBIOS pracuje ponad TCP/IP,
nazywany jest NetBT lub NBT. Mechanizm pracy NetBIOS ponad
TCP/IP jest opisany w dokumentach RFC 1001 i RFC 1002. Protokół SMB,
jak stwierdzono w rozdziale 1 "Architektura TCP/IP w Windows", służy
do dzielenia zasobów w sieci. Używa on interfejsu NetBIOS, który może
pracować ponad TCP/IP. Hierarchię protokołów wsieci Windows
opartej na TCP/IP przedstawia rysunek 2.1. Przy usuwaniu usterek
w takich sieciach znajomość TCP/IP umożliwia znalezienie błędów tylko
w warstwie transportu. Aby znaleźć błędy w warstwach sesji i aplikacji,
trzeba rozumieć działanie NetBIOS i SMB.
 
28
Rozdział 2
Rysunek 2.1
Protokoły TCP/IP
w Windows
Kolejne podrozdziały omawiają szczegóły SMB, NetBIOS i TCP/IP,
poczynając od najwyższych warstw, a kończąc na najniższych.
Protokół SMB
SMB ( Server Message Block ) jest protokołem dzielenia zasobów, który po-
wstał dzięki wysiłkom firm Xerox, 3Com oraz (od niedawna) Microsoft.
Dzielenie zasobów przy użyciu SMB obejmuje dzielenie plików, druka-
rek, portów szeregowych oraz abstrakcje komunikacyjne, takie jak na-
zwane potoki i szczeliny pocztowe ( mail slots ) pomiędzy komputerami.
Protokół SMB jest protokołem warstwy aplikacji związanym z takimi
produktami jak LAN Manager i Microsoft Networking. Część specyfikacji
udostępniono publicznie w dokumencie X/Open. Pomiędzy latami 1992
i 1996 nie ukazała się żadna specyfikacja SMB; w tym czasie Microsoft
stał się implementatorem SMB o największym udziale w rynku. Wraz
z ukazaniem się Windows NT Microsoft rozwinął specyfikację SMB
o kolejne możliwości.
Z powodu siły rynkowej SMB z pewnymi modyfikacjami został przed-
stawiony jako propozycja internetowego standardu CIFS ( Common
Internet Filesystem ). CIFS nie został jeszcze uznany za internetowy stan-
dard, ale z powodu tej inicjatywy specyfikacja SMB stała się własnością
publiczną, a prowadzone na jej temat dyskusje odbywają się zgodnie
z zasadami Internet Engineering Task Force. W rozwijaniu protokołu
CIFS biorą udział Microsoft, Digital Equipment Corporation (obecnie
część firmy Compaq), Data General, SCO, Network Alliance Corp oraz
inne firmy. Przypuszczalnie CIFS będzie bardzo podobny do protokołu
nazywanego NT LM (LAN Manager) 0.12, z kilkoma modyfikacjami uła-
twiającymi używanie go w Internecie.
12272086.014.png
Infrastruktura protokołów TCP/IP w sieciach Windows
29
Według firmy Microsoft, CIFS definiuje standardowy protokół dostępu
do zdalnego systemu plików i przeznaczony jest do użycia w Internecie.
Pozwala on grupom użytkowników wspólnie pracować idzielić
dokumenty, zarówno w Internecie, jak w firmowych intranetach. CIFS
jest oparty na standardowych protokołach wbudowanych w Windows
i inne popularne systemy operacyjne dla komputerów osobistych, łącznie
z UNIX (program SAMBA). Użytkownicy CIFS mogą otwierać i dzielić
zdalne pliki na serwerach CIFS i SMB w Internecie bez potrzeby instalacji
nowego oprogramowania lub zmiany sposobu pracy.
Natura SMB
SMB jest protokołem typu klient/serwer (patrz rysunek 2.2). Serwery
udostępniają klientom w sieci systemy plików oraz inne zasoby, takie jak
drukarki, szczeliny pocztowe, nazwane potoki czy interfejsy programowe
aplikacji (API). Klienci zazwyczaj posiadają własne systemy składowania
danych, jak np. twarde dyski, mogą jednakże potrzebować również do-
stępu do dzielonych systemów plików oraz drukarek na serwerze.
Typowe działanie SMB polega na tym, że klient wysyła żądania, a serwer
na nie odpowiada. Rysunek 2.2 ilustruje ten sposób pracy. Jedynym
wyjątkiem od zasady żądanie-odpowiedź jest sytuacja, w której klient
poprosił o okazyjną blokadę pliku, a serwer musi następnie przerwać
przyznaną już blokadę, ponieważ inny klient zażądał otwarcia pliku
w niekompatybilnym z nią trybie. W takim przypadku serwer
samodzielnie wysyła do klienta komunikat o przerwaniu blokady.
Klienci SMB łączą się z serwerami przy użyciu TCP/IP, NetBEUI lub
IPX/SPX (patrz rysunek 2.3). Jeśli używany jest TCP/IP, w rzeczywi-
stości jest to NetBIOS ponad TCP/IP, jak to opisują dokumenty RFC 1001
i RFC 1002. NetBIOS ponad TCP/IP, jak wspomniano wcześniej, czasem
nazywany jest NBT, a czasem NetBT; bywa też nazywany RFCNB (ze
względu na definiujący go dokument RFC).
W przypadku wykorzystywania SMB z TCP/IP lub NetBEUI konieczne
jest używanie nazw NetBIOS jako nazw komputerów. Nazwy NetBIOS
mogą mieć długość do 15 znaków. Microsoft iniektórzy inni
implementatorzy SMB wymagają, żeby nazwy składały się wyłącznie
z dużych liter.
Po uzyskaniu połączenia klient może przesyłać do serwera polecenia
umożliwiające mu dostęp do dzielonych zasobów, otwieranie plików,
czytanie i zapisywanie plików itd. Większość klientów SMB została
opracowana przez Microsoft. Wchodzą one wskład Windows for
Workgroups 3.x, Windows 9x i Windows NT.
30
Rozdział 2
Klienci SMB wkraczają do działania, kiedy użytkownik posługuje się
Menedżerem plików albo Eksploratorem zWindows 95 wcelu
połączenia się z serwerami sieciowymi. Klienci SMB pracują również
podczas otwierania plików przy użyciu konwencji UNC. Klienci SMB dla
systemu UNIX to SMBclient, SMBfs dla Linux oraz biblioteka klienta
SMBlib. Istnieje wiele implementacji serwera SMB - poniżej wymieniono
niektóre z nich:
Rysunek 2.2
Klienci i serwery SMB
Rysunek 2.3
Protokoły transportowe SMB
Samba
Microsoft Windows for Workgroups 3.x
Microsoft Windows 95
Microsoft Windows NT
Rodzina serwerów PATHWORKS firmy Digital
LAN Manager for OS/2, SCO itd.
VisionFS firmy SCO
TotalNET Advanced Server firmy Syntax
Advanced Server for UNIX firmy AT&T
LAN Server for OS/2 firmy IBM
12272086.015.png 12272086.016.png 12272086.001.png 12272086.002.png 12272086.003.png 12272086.004.png
 
12272086.005.png 12272086.006.png 12272086.007.png 12272086.008.png 12272086.009.png 12272086.010.png 12272086.011.png
Infrastruktura protokołów TCP/IP w sieciach Windows
31
Wersje protokołu SMB
Protokół SMB zmieniał się, aby sprostać rosnącej złożoności środowisk,
w których był stosowany. Z tego powodu klient i serwer negocjują wersję
protokołu przy pomocy polecenia negprot, które musi być pierwszym
poleceniem SMB przesłanym przez połączenie.
Pierwszy wariant protokołu nazywany jest protokołem Core . Znany jest
również jako PC NETWORK PROGRAM 1.0. Protokół Core SMB wyko-
nuje dość ograniczony zbiór operacji, między innymi:
Łączenie się i odłączanie od udostępnionych plików i drukarek.
Otwieranie i zamykanie plików
Otwieranie i zamykanie plików wydruku
Czytanie i zapisywanie plików
Tworzenie i usuwanie plików i katalogów
Przeszukiwanie katalogów
Sprawdzanie i ustawianie atrybutów plików
Blokowanie i odblokowywanie zakresu bajtów w plikach.
Kiedy producenci oprogramowania dostrzegli potrzebę zwiększenia
funkcjonalności protokołu, rozszerzyli jego możliwości. Lista wariantów
protokołu, oparta na wykazie skompilowanym przez Richarda Sharpe,
przedstawiona jest w tabeli 2.1. Niektóre warianty wprowadziły nowe
polecenia SMB, inne zmieniły format istniejących poleceń lub
odpowiedzi, jeszcze inne wprowadziły zarówno nowe polecenia, jak
i formaty.
Tabela 2.1 Wersje SMB
Wersja protokołu SMB
Nazwa protokołu
Uwagi
PC Network Program 1.0
Core
Niektóre wersje były nazywane
PCLAN1.0
Microsoft Networks 1.03
CorePlus
Posiadał polecenia Blokuj
i Czytaj oraz Zapisz i Odblokuj
oraz inne wersje poleceń
surowego zapisu i odczytu
Microsoft Networks 3.0
DOS LAN Manager
1.0
Taki sam jak LANMAN 1.0, ale
błędy OS/2 muszą być
tłumaczone na błędy DOS.
LANMAN1.0
LAN Manager 1.0
Kompletny protokół LANMAN
1.0
DOS LM1.2X002
LAN Manager 2.0
Taki sam jak LM1.2X002, ale
błędy muszą być tłumaczone na
błędy DOS.
12272086.012.png 12272086.013.png
Zgłoś jeśli naruszono regulamin