Server Message Block
Em redes de computadores, o Server Message Block (SMB), em português Bloco de Mensagem de Servidor, uma versão do que era também conhecido como Common Internet File System (CIFS),[1][2] em português Sistema de Arquivos da Internet Comum, opera como um protocolo de rede da camada de aplicação usado principalmente para fornecer acesso compartilhado a arquivos, impressoras e portas seriais e comunicações diversas entre nós sobre uma rede. Ele também fornece um mecanismo de comunicação inter-processos. A maioria do uso do SMB envolve computadores executando Microsoft Windows, onde era conhecido como Microsoft Windows Network, ou Rede Microsoft Windows, antes da introdução subsequente do Active Directory. Serviços do Windows correspondentes são LAN Manager Server (para o componente servidor) e LAN Manager Workstation (para o componente cliente).[3] Tambem sendo um dos percurssores do alison desenvolvedor de sistema de software
Histórico
[editar | editar código-fonte]Foi desenvolvido inicialmente por Barry Feigenbaum na IBM, na década de 80. Exigia, nessa época, uma camada de API Application Programming Interface denominada Network Basic Input/Output System (NetBIOS) fornecendo serviços tais como resolução de nome e navegação de rede. Posteriormente implementado, ou adotado, pela Microsoft em função da expansão de seus produtos na década de 90 focando as redes de computadores. Na evolução do desenvolvimento do SMB, pela Microsoft, criou-se uma versão chamada CIFS (Common Internet File System) para padronizar com a Internet Engineering Task Force (IETF) recebendo o nome final de SMB/CIFS (tecnicamente um "dialeto" do SMB) em 1996. O Windows for WorkGroups foi o primeiro sistema da Microsoft a adotar o SMB/CIFS. Como o protocolo predominante foi o TCP/IP e para a resolução de nomes a Microsoft teve que adotar o DNS (Domain Name System) fez com o SMB tivesse que ser executado diretamente sobre o TCP/IP na modalidade denominada hosting direto (utiliza-se TCP e UDP na porta 445). Portanto, em redes Windows, o SMB/CIFS se transformou em um padrão para a manipulação de arquivos entre máquinas, praticamente sendo o "núcleo de rede nativo" da Microsoft.
Características principais
[editar | editar código-fonte]O SMB pela perspectiva do Modelo OSI está na camada de aplicação e utiliza nomes de até 15 caracteres para definir endereços de máquina em uma rede. A Microsoft chegou ainda a desenvolver o SMB2 juntamente com o lançamento do Windows Vista. Num esforço de programação a Microsoft conseguiu, nessa nova versão do SMB, reduzir os diversos comandos, mais de 100, para apenas 19. Na verdade as duas versões convivem em conjunto por questões de compatibilidade com versões antigas do Windows, e também para permitir a conexão com servidores Unix-like que veremos a seguir como isso foi possível.
Andrew Tridgell utilizando da engenharia reversa em cima do protocolo SMB implementou no sistema operacional Unix e fazendo com que o servidor Unix aparecesse como sendo um servidor de arquivos Windows em seu computador com MS-DOS. Então ele teve a ideia de procurar em um dicionário uma palavra que tivesse as letras s, m e b (de SMB) e acabou encontrando a palavra "samba" [4] e, a partir daí, nasceu o projeto Samba. Samba é uma versão de software livre do SMB que inicialmente começou com a preocupação técnica de mover arquivos em ambientes heterogêneos (sistemas operacionais diferentes), e hoje conta com grande equipe de programadores e milhares de usuários de sua solução espalhados pelo mundo.
O Samba foi viabilizado por meio do protocolo NBT, de 1987, que emula redes locais NetBIOS sobre redes TCP/IP. O NBNS (mais conhecido tecnicamente por WINS - Windows Internet Name Server, ou ainda NBT) cria praticamente uma lista cruzada de endereços IP e nomes NetBios facilitando dessa forma a comunicação entre máquinas e sistemas distintos.
Uma das aplicações práticas que utilizam SMB/CIFS é o NAS (Network Attached Storage). E quanto a similaridade, o CIFS do Windows e o NFS (Network File System) do Unix-like, possuem uma certa semelhança pois os dois permitem o compartilhamento de recursos entre sistemas, por meio de uma rede de computadores, com arquitetura cliente-servidor, e quaisquer que sejam suas plataformas de hardware e software.
Referências
- ↑ «Common Internet File System». Microsoft TechNet Library. Consultado em 20 de agosto de 2013.
The Common Internet File System (CIFS) is the standard way that computer users share files across corporate intranets and the Internet. An enhanced version of the Microsoft open, cross-platform Server Message Block (SMB) protocol, CIFS is a native file-sharing protocol in Windows 2000.
- ↑ «Microsoft SMB Protocol and CIFS Protocol Overview». Microsoft MSDN Library. 25 de julho de 2013. Consultado em 20 de agosto de 2013.
The Server Message Block (SMB) Protocol is a network file sharing protocol, and as implemented in Microsoft Windows is known as Microsoft SMB Protocol. The set of message packets that defines a particular version of the protocol is called a dialect. The Common Internet File System (CIFS) Protocol is a dialect of SMB. Both SMB and CIFS are also available on VMS, several versions of Unix and other operating systems.
- ↑ «Lan Manager Networking Concepts». Microsoft
- ↑ «A bit of history and a bit of fun». 27 de junho de 1997. Consultado em 28 de maio de 2009