Síťové protokoly (XVI. část), Protokol SMB

Napsal O webu (») 16. 2. 2008 v kategorii PC sítě, přečteno: 2345×

Protokol SMB

Protokol SMB (Server Message Block) je protokol s velko tradicí, původně vyvinut firmou IBM ve spolupráci s Microsoftem. Dnes je díky téměř monopolnímu postavení firmy Microsoft na trhu nejpoužívanějším protokolem pro peer-2-peer komunikaci souborových serverů a klientů LAN. Protokol SMB využívají tiskové a souborové servery síťových serverů založených na operačních systémech Lan Server, OS/2 fy IBM a samozřejmě servery Microsoft. Microsoft se dále snaží prosadit tento protokol jako náhradu za protokol ftp a http.


Protokol pracuje na bázi modelu Klient-Server. Server poskytuje klientům sdílené prostředky, což mohou být pevné disky, adresáře, tiskové fonty a pojmenované kanály. Tyto sdílené prostředky jsou jednoznačně identifikované díky univerzální síťové adrese UNC. Klient se stará o formulaci požadavku na tyto prostředky. Server pak zanalyzuje požadavky, zkontroluje přístupová práva klienta a na jejich základě (ne)provede požadovanou operaci a odešle odpověď. Pro zprávu přístupů ke sdíleným prostředkům jsou využívány obvykle dva přístupy:


1. Řízení přístupu na úrovni sdíleného prostředku. Přístup je umožněn všem uzlům sítě po zadání správného hesla přiřazeného prostředku na straně serveru. (=každý sdílený prostředek má své vlastní heslo, může být i více hesel pro jeden prostředek s různými úrovní práv). Po zadání hesla je klientu přidělen identifikátor NID (Network ID), pod kterým k prostředku přistupuje.


2. Řízení přístupu na uživatelské úrovni. Při připojení klientu k serveru je požadováno uživatelské jméno a heslo. Je-li korektní, je uživateli přiřazen uživatelský identifikátor UID (User ID), z něhož server odvozuje přístupová práva ke sdíleným prostředkům v síti. Může nastat také situace, kdy se serverem komunikuje najednou více procesů od stejného uživatele. Pak k jejich rozlišení slouží dvojice identifikátorů PID (Process ID) a MID (Multiple ID).

Formát paketu (bloku) SMB

SMB blok s požadavkem klienta a odpovědí serveru je téměř shodný, liší se akorát v datové části a délce vyrovnávací paměti.

SIDSCRCAHRCRSNIDPID UIDMIDPrCPrCdBLB
1B3B1B1B1B2B15B2B2B2B2B 1B2B2B1B


Význam jednotlivých polí SMB paketu


OznačeníVýznam
SID (SMB Identification)Identifikace protokolu SMB
S (Server)Identifikace dialektu serveru SMB
C (Command)Funkční kód volané služby SMB
R (Return class)Třída návratového kódu SMB
AH (Ahregister procesoru)Výsledek v registru AH procesoru
RC (Return Code)Návratový kód operace
RS (Reserve)Rezerva do budoucna
NID (Net path ID)Identifikátor sdíleného prostředku
PID (Process ID)Identifikátor procesu klienta
UID (User ID)Identifikátor uživatele
MID (Multiplex ID)Multiplexní ID klienta
PrC (Parametr Count)Počet volitelných parametrů volané funkce
PrCd (Parametr Code)Kód parametru volané funkce
BL (Buffer Lenght)Délka datové části SMB bloku
B (Buffer)První slabika datové části bloku SMB

Autor: Robert Habrman
Facebook Twitter Topčlánky.cz Linkuj.cz

Komentáře

Zobrazit: standardní | od aktivních | poslední příspěvky | všechno
Článek ještě nebyl okomentován.


Nový komentář

Téma:
Jméno:
Notif. e-mail *:
Komentář:
  [b] [obr]
Odpovězte prosím číslicemi: Součet čísel čtyři a dvanáct