Протокол SMB (Message Blocks Protocol) використовується в Windows-системах за замовчуванням для загального доступу до папок і файлів. SMB 1.0 був розроблений для найперших мережевих операційних систем Windows, таких як Microsoft LAN Manager і Windows for Workgroups, однак і в сучасних ОС Windows Server 2008, Windows 7 він продовжує використовуватися в тій чи іншій мірі в своєму первісному форматі.
SMB 2.0 вперше став використовуватися в ОС Windows Vista і Windows Server 2008. Його призначення - застосування в сфері мережних файлових серверів нового покоління. З метою забезпечення сумісності Windows Server 2008 і Windows Vista підтримують як SMB 1.0 так і SMB 2.0 ...
У SMB 2.0 з'явилися такі зміни:
- Можливість відправки кількох команд SMB в одному пакеті, що знижує кількість пакетів, переданих між клієнтом і сервером
- Збільшено розміри буфера
- Підвищена масштабованість, в тому числі за рахунок збільшення числа одночасно відкритих дескрипторів файлів на сервері і кількості загальних ресурсів, які сервер може надавати.
- Підтримка символічних посилань
Тестування, яке полягає в копіюванні великих файлів даних між Windows Vista і Windows Server 2008, а потім між Vista і Windows 2003, показало, що при використанні протоколу SMB 2.0 копіювання файлів виконується майже в 2 рази швидше, ніж в старих операційних системах на SMB 1.0.
За ідеєю, використання протоколу SMB 2.0 одночасно на клієнті і на сервері дає нам суттєве збільшення швидкості передачі файлів по мережі, однак цього можна досягти не у всіх випадках. Причина в тому, що версія SMB, яка буде використовуватися для загального доступу до файлів, визначається в ході ініціації сесії SMB. Якщо і клієнт і сервер підтримують SMB 2.0, тоді ця версія і буде обрана під час первісного переговора. Якщо вони обоє не підтримують його, в цьому випадку з цілям забезпечення сумісності буде використовуватися протокол SMB 1.0.
При використанні термінів «клієнт» і «сервер», в разі загального доступу файлів і принтерів, ми розуміємо, що слово клієнт не обов'язково для користувача ОС (Vista, 7), а слово сервер не обов'язково серверна ОС (Windows Server 2008). У деяких випадках ОС з Vista буде може підключатися до ПК з Windows 7, який в даному випадку буде виступати в якості сервера.
Що слід запам'ятати: якщо обмін відбувається між новими операційними системами Microsoft (Windows 7, Vista, 2008,2008 R2), тоді за замовчуванням буде використовуватися протокол SMB 2.0. Якщо в якості клієнта або сервера буде використовуватися ОС минулого покоління (Windows XP, 2003,2000), тоді завжди буде задіяний SMB 1.0В деяких випадках для усунення неполадок в мережах або діагностики, може виникнути необхідність відключити SMB 2.0. Отже, щоб відключити підтримку SMB 2.0 на клієнтської ОС, ви можете скористатися наступними командами:
sc config lanmanworkstation depend = bowser / mrxsmb10 / nsi
sc config mrxsmb20 start = disabled
Зверніть увагу на додатковий пробіл після знака «=».
Щоб включити SMB 2.0 на клієнтської ОС Windows 7, Vista, Windows Server 2008, виконайте такі команди:
sc config lanmanworkstation depend = bowser / mrxsmb10 / mrxsmb20 / nsi
sc config mrxsmb20 start = auto
Знову зверніть увагу на додатковий пробіл після знака «=».
Для того щоб відключити SMB 2.0 на стороні сервера, виконайте наступні дії:
- Запустіть редактор реєстру «regedit» на Windows Server 2008 / R2.
- Перейдіть до наступного розділу реєстру.
HKLM \ System \ CurrentControlSet \ Services \ LanmanServer \ Parameters
- Створіть новий параметр типу REG_DWORD з ім'ям »Smb2" (без лапок)
Value name: Smb2
Value type: REG_DWORD
0 = відключено
1 = включено
- Щоб відключити SMB 2.0, зробіть цей параметр рівним 0, щоб активувати SMB 2.0 використовуйте значення 1.
- Після чого сервер потрібно перезавантажити.