A pilha de protocolos básicos da Internet. Pilha (comutadores de rede)

Pilhas de protocolo

Uma pilha de protocolos é um conjunto organizado hierarquicamente de protocolos de rede de vários níveis suficientes para organizar e garantir a interação dos nós em uma rede. Atualmente, as redes usam um grande número de pilhas de protocolos de comunicação. As pilhas mais populares são: TCP/IP, IPX/SPX, NetBIOS/SMB, Novell NetWare, DECnet, XNS, SNA e OSI. Todas essas pilhas, exceto SNA, nos níveis inferiores - físico e canal - utilizam os mesmos protocolos bem padronizados Ethemet, Token Ring, FDDI e alguns outros, que permitem utilizar o mesmo equipamento em todas as redes. Mas nos níveis superiores, todas as pilhas funcionam de acordo com seus próprios protocolos. Esses protocolos geralmente não estão em conformidade com as camadas recomendadas pelo modelo OSI. Em particular, as funções da camada de sessão e apresentação geralmente são combinadas com a camada de aplicação. Essa discrepância se deve ao fato de que o modelo OSI surgiu como resultado de uma generalização de pilhas já existentes e efetivamente utilizadas, e não vice-versa.

Todos os protocolos incluídos na pilha são desenvolvidos por um fabricante, ou seja, são capazes de funcionar da forma mais rápida e eficiente possível.

Um ponto importante no funcionamento do equipamento de rede, em particular um adaptador de rede, é a vinculação de protocolo. Ele permite que você use diferentes pilhas de protocolo ao servir um adaptador de rede. Por exemplo, você pode usar as pilhas TCP/IP e IPX/SPX ao mesmo tempo. Se de repente ocorrer um erro ao tentar estabelecer uma conexão com o destinatário usando a primeira pilha, ele alternará automaticamente para usar o protocolo da próxima pilha. Um ponto importante neste caso é a ordem de vinculação, pois afeta claramente o uso de um ou outro protocolo de diferentes pilhas.

Independentemente de quantos adaptadores de rede estão instalados no computador, a vinculação pode ser realizada tanto “um-para-muitos” quanto “vários-para-um”, ou seja, uma pilha de protocolos pode ser vinculada a vários adaptadores de uma só vez ou várias pilhas para um adaptador.

NetWare é um sistema operacional de rede e um conjunto de protocolos de rede que são usados ​​neste sistema para interagir com computadores clientes conectados a uma rede. Os protocolos de rede do sistema são baseados na pilha de protocolos XNS. Atualmente, o NetWare suporta os protocolos TCP/IP e IPX/SPX. O Novell NetWare foi popular nos anos 80 e 90 devido ao seu desempenho superior em relação aos sistemas operacionais de uso geral. Isso agora é uma tecnologia ultrapassada.

A pilha de protocolos XNS (Internet Transport Protocol) dos Serviços de Rede Xerox foi desenvolvida pela Xerox para transmissão de dados em redes Ethernet. Contém 5 níveis.

A camada 1 - meio de transmissão - implementa as funções das camadas física e de enlace no modelo OSI:

* gerencia a troca de dados entre o dispositivo e a rede;

* roteia dados entre dispositivos na mesma rede.

A camada 2 - internetwork - corresponde à camada de rede no modelo OSI:

* gerencia a troca de dados entre dispositivos localizados em redes diferentes (fornece um serviço de datagrama em termos do modelo IEEE);

* descreve a forma como os dados passam pela rede.

A camada 3 - transporte - corresponde à camada de transporte no modelo OSI:

* Fornece comunicação de ponta a ponta entre a fonte de dados e o destino.

Nível 4 - controle - corresponde ao nível de sessão e apresentação no modelo OSI:

* gerencia a apresentação de dados;

* gerencia o controle sobre os recursos do dispositivo.

A camada 5 - aplicada - corresponde aos níveis mais altos do modelo OSI:

* fornece funções de processamento de dados para tarefas aplicadas.

A pilha de protocolos TCP / IP (Transmission Control Protocol / Internet Protocol) é de longe a mais comum e funcional. Funciona em redes locais de qualquer escala. Esta pilha é a pilha principal na Internet global. O suporte de pilha foi implementado em computadores com o sistema operacional UNIX. Como resultado, a popularidade do protocolo TCP/IP aumentou. A pilha de protocolos TCP / IP inclui muitos protocolos operando em vários níveis, mas recebeu esse nome graças a dois protocolos - TCP e IP.

TCP (Transmission Control Protocol) é um protocolo de transporte projetado para controlar a transmissão de dados em redes usando a pilha de protocolos TCP/IP. IP (Internet Protocol) é um protocolo de camada de rede projetado para entregar dados em uma rede composta usando um dos protocolos de transporte, como TCP ou UDP.

A camada inferior da pilha TCP/IP usa protocolos de transferência de dados padrão, o que possibilita seu uso em redes com qualquer tecnologia de rede e em computadores com qualquer sistema operacional.

Inicialmente, o protocolo TCP/IP foi desenvolvido para uso em redes globais, por isso é o mais flexível possível. Em particular, devido à capacidade de fragmentação de pacotes, os dados, apesar da qualidade do canal de comunicação, em qualquer caso, chegam ao destino. Além disso, devido à presença do protocolo IP, torna-se possível transferir dados entre segmentos de rede heterogêneos.

A desvantagem do protocolo TCP/IP é a complexidade da administração da rede. Assim, para o funcionamento normal da rede, são necessários servidores adicionais, como DNS, DHCP, etc., manutenção que ocupa a maior parte do tempo do administrador do sistema. Limoncelli T., Hogan K., Cheylap S. - Administração de sistemas e redes. 2ª edição. ano 2009. 944s

A pilha de protocolos IPX/SPX (Internetwork Packet Exchange/Sequenced Packet Exchange) é desenvolvida e proprietária da Novell. Ele foi desenvolvido para as necessidades do sistema operacional Novell NetWare, que até recentemente ocupava uma das posições de liderança entre os sistemas operacionais de servidores.

Os protocolos IPX e SPX funcionam nas camadas de rede e transporte do modelo ISO/OSI, respectivamente, de modo que se complementam perfeitamente.

O protocolo IPX pode transmitir dados usando datagramas usando informações de roteamento de rede para fazer isso. No entanto, para transferir dados ao longo da rota encontrada, você deve primeiro estabelecer uma conexão entre o remetente e o destinatário. Isso é o que faz o protocolo SPX ou qualquer outro protocolo de transporte que funcione em conjunto com o IPX.

Infelizmente, a pilha de protocolos IPX/SPX foi originalmente orientada para atender pequenas redes, portanto seu uso em grandes redes é ineficiente: o uso excessivo de transmissão em linhas de comunicação de baixa velocidade é inaceitável.

Nas camadas física e de enlace, a pilha OSI suporta os protocolos Ethernet, Token Ring, FDDI, bem como os protocolos LLC, X.25 e ISDN, ou seja, usa todos os protocolos populares de nível inferior desenvolvidos fora da pilha, como a maioria das outras pilhas. A camada de rede inclui o protocolo de rede orientado a conexão (CONP) e o protocolo de rede sem conexão (CLNP). Os protocolos de roteamento da pilha OSI são ES-IS (Sistema Final -- Sistema Intermediário) entre sistemas finais e intermediários e IS-IS (Sistema Intermediário -- Sistema Intermediário) entre sistemas intermediários. A camada de transporte da pilha OSI oculta a distinção entre serviços de rede sem conexão e sem conexão para que os usuários recebam a qualidade de serviço necessária, independentemente da camada de rede subjacente. Para garantir isso, a camada de transporte exige que o usuário especifique a qualidade de serviço desejada. Os serviços da camada de aplicativo fornecem transferência de arquivos, emulação de terminal, serviços de diretório e correio. Destes, os mais populares são Directory Service (padrão X.500), E-mail (X.400), Virtual Terminal Protocol (VTP), File Transfer, Access and Control Protocol (FTAM), Transfer and Job Control Protocol (JTM) ).

Uma pilha de protocolos bastante popular desenvolvida pela IBM e pela Microsoft, respectivamente, focada no uso nos produtos dessas empresas. Assim como o TCP/IP, protocolos padrão como Ethernet, Token Ring e outros trabalham nas camadas físicas e de enlace de dados da pilha NetBIOS/SMB, o que possibilita seu uso em conjunto com qualquer equipamento de rede ativo. Nos níveis superiores, funcionam os protocolos NetBIOS (Network Basic Input / Output System) e SMB (Server Message Block).

O protocolo NetBIOS foi desenvolvido em meados dos anos 80 do século passado, mas logo foi substituído pelo protocolo NetBEUI (NetBIOS Extended User Interface) mais funcional, que permite organizar uma troca de informações muito eficiente em redes compostas por não mais de 200 computadores .

A comunicação entre computadores usa nomes lógicos que são atribuídos dinamicamente aos computadores quando eles se conectam à rede. Nesse caso, a tabela de nomes é distribuída para cada computador da rede. O trabalho com nomes de grupos também é suportado, o que permite transferir dados para vários destinatários de uma só vez.

As principais vantagens do protocolo NetBEUI são a velocidade e os requisitos de recursos muito baixos. Se você deseja organizar a troca rápida de dados em uma pequena rede composta por um único segmento, não há protocolo melhor para isso. Além disso, uma conexão estabelecida não é um requisito para a entrega de mensagens: na ausência de conexão, o protocolo utiliza o método datagrama, quando a mensagem é fornecida com o endereço do destinatário e do remetente e "decola", passando de um computador para outro.

No entanto, o NetBEUI também tem uma desvantagem significativa: é completamente desprovido do conceito de roteamento de pacotes, portanto, seu uso em redes compostas complexas não faz sentido. Pyatibratov A.P., Gudyno L.P., Kirichenko A.A. Máquinas de computação, redes e sistemas de telecomunicações Moscou 2009. 292s

Quanto ao protocolo SMB (Server Message Block), ele organiza a operação da rede nos três níveis mais altos - níveis de sessão, apresentação e aplicação. É ao utilizá-lo que se torna possível acessar arquivos, impressoras e outros recursos da rede. Este protocolo foi melhorado várias vezes (foram lançadas três versões), o que tornou possível usá-lo mesmo em sistemas operacionais modernos como Microsoft Vista e Windows 7. O protocolo SMB é universal e pode ser emparelhado com quase qualquer protocolo de transporte, como TCP/IP e SPX.

A pilha de protocolos DECnet (Digital Equipment Corporation net) contém 7 camadas. Apesar da diferença de terminologia, as camadas DECnet são muito semelhantes às camadas do modelo OSI. A DECnet implementa o conceito de arquitetura de rede DNA (Digital Network Architecture) desenvolvida pela DEC, segundo a qual sistemas de computação heterogêneos (computadores de diferentes classes) operando sob vários sistemas operacionais podem ser combinados em redes de informação e computação geograficamente distribuídas.

O protocolo SNA (System Network Architecture) da IBM é projetado para comunicação remota com grandes computadores e contém 7 camadas. O SNA é baseado no conceito de uma máquina host e fornece acesso de terminal remoto a mainframes IBM. A principal característica distintiva do SNA é a capacidade de cada terminal de acessar qualquer programa aplicativo do computador principal. A arquitetura de rede do sistema é implementada com base em um método de acesso de telecomunicações virtual (Virtual Telecommunication Access Method - VTAM) no computador principal. O VTAM gerencia todos os links e terminais, sendo que cada terminal tem acesso a todas as aplicações.

A pilha de protocolos, ou na linguagem comum TCP/IP, é a arquitetura de rede de dispositivos modernos projetados para usar a rede. Pilha é uma parede na qual cada tijolo constituinte fica em cima do outro, depende dele. Chamar a pilha de protocolos de "pilha TCP/IP" é devido aos dois principais protocolos que foram implementados - o próprio IP e o TCP baseado nele. No entanto, eles são apenas os principais e mais comuns. Se não centenas, dezenas de outros são usados ​​​​até hoje para vários propósitos.

A web a que estamos acostumados (world wide web) é baseada no HTTP (hyper-text transfer protocol), que por sua vez funciona com base no TCP. Este é um exemplo clássico de uso da pilha de protocolos. Existem também protocolos de e-mail IMAP/POP e SMTP, protocolos de shell remoto SSH, protocolos de desktop remoto RDP, bancos de dados MySQL, SSL/TLS e milhares de outros aplicativos com seus próprios protocolos (..)

Qual é a diferença entre todos esses protocolos? Tudo é bem simples. Além dos vários objetivos definidos durante o desenvolvimento (por exemplo, velocidade, segurança, estabilidade e outros critérios), são criados protocolos com o objetivo de diferenciação. Por exemplo, existem protocolos de camada de aplicação que são diferentes para diferentes aplicações: IRC, Skype, ICQ, Telegram e Jabber são incompatíveis entre si. Eles são projetados para executar uma tarefa específica e, nesse caso, a capacidade de chamar o WhatsApp no ​​ICQ simplesmente não é definida tecnicamente, pois os aplicativos usam um protocolo diferente. Mas seus protocolos são baseados no mesmo protocolo IP.

Um protocolo pode ser chamado de uma sequência planejada e regular de ações em um processo no qual existem vários atores; na rede, eles são chamados de pares (parceiros), com menos frequência - um cliente e um servidor, enfatizando os recursos de um determinado protocolo. O exemplo mais simples de protocolo para quem ainda não entendeu é um aperto de mão em uma reunião. Ambos sabem como e quando, mas a questão do porquê já é uma questão de desenvolvedores, não de usuários do protocolo. By the way, há um handshake em quase todos os protocolos, por exemplo, para garantir a diferenciação do protocolo e proteção contra "voar no avião errado".

Aqui está o que é TCP/IP, usando os protocolos mais populares como exemplo. A hierarquia de dependências é mostrada aqui. Devo dizer que os aplicativos usam apenas os protocolos especificados, que podem ou não ser implementados no sistema operacional.

Em termos muito, muito simples, este é o serviço postal.

Cada membro de uma rede compatível com IP tem seu próprio endereço, que se parece com isso: 162.123.058.209. No total, existem 4,22 bilhões desses endereços para o protocolo IPv4.

Suponha que um computador queira se comunicar com outro e enviar-lhe um pacote - um "pacote". Ele se dirigirá ao "serviço postal" TCP/IP e entregará a ela seu pacote, indicando o endereço para o qual deve ser entregue. Ao contrário dos endereços no mundo real, os mesmos endereços IP são frequentemente atribuídos a computadores diferentes, o que significa que o "carteiro" não sabe onde o computador necessário está localizado fisicamente, então ele envia o pacote para o "correio" mais próximo - para a placa do computador de rede. Talvez haja informações sobre onde o computador desejado está localizado ou talvez essas informações não estejam lá. Se não estiver lá, um pedido de endereço é enviado para todas as "estações de correio" (quadros de distribuição) mais próximas. Esta etapa é repetida por todos os "correios" até encontrarem o endereço desejado, enquanto eles lembram por quantos "correios" esse pedido passou antes deles e se passar por um certo número (grande o suficiente) deles, então será ser devolvido marcado como "endereço não encontrado". O primeiro "correio" receberá em breve um monte de respostas de outros "escritórios" com opções de caminhos para o destinatário. Se nenhum caminho suficientemente curto for encontrado (geralmente 64 transferências, mas não mais de 255), o pacote será devolvido ao remetente. Se um ou mais caminhos forem encontrados, o pacote será enviado pelo mais curto deles, enquanto os "correios" lembrarão desse caminho por um tempo, permitindo que você transfira rapidamente os pacotes subsequentes sem pedir um endereço a ninguém. Após a entrega, o "carteiro" fará com que o destinatário assine um "recibo" informando que recebeu o pacote e entregará este "recibo" ao remetente como prova de que o pacote foi entregue intacto - é necessário verificar a entrega em TCP. Se o remetente não receber tal recibo após um determinado período de tempo, ou o recibo indicar que o pacote foi danificado ou perdido durante o envio, ele tentará enviar o pacote novamente.

TCP/IP é um conjunto de protocolos.

O protocolo é a regra. Por exemplo, quando você é cumprimentado - você cumprimenta em resposta (e não diz adeus ou não quer felicidade). Os programadores dirão que usamos o protocolo hello, por exemplo.

Que tipo de TCP/IP (agora será bem simples, não bombardeie seus colegas):

As informações para o seu computador vão por fio (rádio ou qualquer outra coisa - não importa). Se uma corrente passou pelos fios, isso significa 1. Desligado, significa 0. Acontece 10101010110000 e assim por diante. 8 zeros e uns (bits) é um byte. Por exemplo 00001111. Isso pode ser representado como um número em formato binário. Na forma decimal, um byte é um número entre 0 e 255. Esses números são mapeados para letras. Por exemplo, 0 é A, 1 é B. (Isso é chamado de codificação).

Então. Para que dois computadores transmitam efetivamente informações por fios, eles devem fornecer corrente de acordo com algumas regras - protocolos. Por exemplo, eles devem concordar com a frequência com que a corrente pode ser alterada para que um 0 possa ser distinguido de um segundo 0.

Este é o primeiro protocolo.

Os computadores de alguma forma entendem que um deles parou de dar informações (como "eu disse tudo"). Para fazer isso, no início da sequência de dados 010100101 os computadores podem enviar alguns bits, o comprimento da mensagem que desejam enviar. Por exemplo, os primeiros 8 bits podem indicar o comprimento da mensagem. Ou seja, primeiro, nos primeiros 8 bits, o número codificado 100 é transmitido e depois 100 bytes. O computador receptor aguardará os próximos 8 bits e a próxima mensagem.

Aqui temos outro protocolo, com sua ajuda você pode enviar mensagens (computador).

Existem muitos computadores para que eles possam entender quem precisa enviar uma mensagem usando endereços de computador exclusivos e um protocolo que permite entender a quem essa mensagem é endereçada. Por exemplo, os primeiros 8 bits indicarão o endereço do destinatário, os próximos 8 - o comprimento da mensagem. E então uma mensagem. Acabamos de colocar um protocolo em outro. O protocolo IP é responsável pelo endereçamento.

A comunicação nem sempre é confiável. Para entrega confiável de mensagens (computador) use TCP. Ao executar o protocolo TCP, os computadores perguntarão novamente se receberam a mensagem correta. Há também UDP - é quando os computadores não perguntam novamente se o receberam. Por que é necessário? Aqui você está ouvindo rádio na internet. Se alguns bytes chegarem com erros, você ouvirá, por exemplo, "psh" e depois música novamente. Não é fatal e não é particularmente importante - o UDP é usado para isso. Mas se alguns bytes forem corrompidos ao carregar o site, você ficará com uma porcaria no monitor e não entenderá nada. O site usa TCP.

TCP/IP (UDP/IP) são protocolos aninhados que executam a Internet. No final, esses protocolos possibilitam a transmissão de uma mensagem de computador de uma só vez e exatamente no endereço.

Há também o protocolo http. A primeira linha é o endereço do site, as próximas linhas são o texto que você envia para o site. Todas as linhas http são texto. Que é empurrado para TCP uma mensagem que é endereçada usando IP, e assim por diante.

Responder

A Internet é um sistema global de computadores interligados, redes locais e outras que interagem entre si através da pilha de protocolos TCP/IP (Fig. 1.).

Figura 1 - Diagrama generalizado da Internet

A Internet permite a troca de informações entre todos os computadores conectados a ela. O tipo de computador e o sistema operacional que ele usa não importa.

As principais células da Internet são as redes locais (LAN - Local Area network). Se alguma rede local estiver conectada diretamente à Internet, todas as estações de trabalho dessa rede também poderão se conectar a ela. Existem também computadores que estão conectados de forma independente à Internet. Eles são chamados computadores host(hospedeiro - anfitrião).

Cada computador conectado à rede possui um endereço próprio, onde pode ser encontrado por um assinante de qualquer lugar do mundo.

Uma característica importante da Internet é que, ao combinar redes diferentes, ela não cria nenhuma hierarquia - todos os computadores conectados à rede são iguais.

Outra característica distintiva da Internet é sua alta confiabilidade. Se alguns dos computadores e linhas de comunicação falharem, a rede continuará funcionando. Essa confiabilidade é garantida pelo fato de não haver um centro de controle único na Internet. Se algumas linhas de comunicação ou computadores falharem, as mensagens podem ser transmitidas por outras linhas de comunicação, pois sempre há várias maneiras de transferir informações.

A Internet não é uma organização comercial e não pertence a ninguém. Existem usuários de Internet em quase todos os países do mundo.

Os usuários se conectam à rede por meio de computadores de organizações especiais chamadas Provedores de Serviços de Internet. A conexão com a Internet pode ser permanente ou temporária. Os ISPs têm muitas linhas para conectar usuários e linhas de alta velocidade para se conectar ao resto da Internet. Muitas vezes, os provedores menores estão conectados aos maiores, que por sua vez estão conectados a outros provedores.

Organizações conectadas entre si pelas linhas de comunicação mais rápidas formam a parte básica da rede, ou backbone do Internet Backbon [Bekbon]. Se o fornecedor estiver conectado diretamente ao cume, a taxa de transferência de informações será máxima.

Na realidade, a diferença entre usuários e provedores de serviços de Internet é bastante arbitrária. Qualquer pessoa que tenha conectado seu computador ou sua rede local à Internet e instalado os programas necessários pode fornecer serviços de conexão de rede a outros usuários. Um único usuário pode, em princípio, ser conectado por uma linha de alta velocidade diretamente ao backbone da Internet.

Em geral, a Internet troca informações entre quaisquer dois computadores conectados à rede. Os computadores conectados à Internet são frequentemente chamados de hosts da Internet ou sites da Internet. , da palavra inglesa site, que se traduz como um lugar, local. Sites instalados em ISPs fornecem aos usuários acesso à Internet. Existem também nós especializados em fornecer informações. Por exemplo, muitas empresas criam sites na Internet por meio dos quais distribuem informações sobre seus produtos e serviços.

Como as informações são transmitidas? Existem dois conceitos principais usados ​​na Internet: endereço e protocolo. Cada computador conectado à Internet tem seu próprio endereço exclusivo. Assim como um endereço de correspondência identifica exclusivamente a localização de uma pessoa, um endereço da Internet identifica exclusivamente a localização de um computador em uma rede. Os endereços da Internet são a parte mais importante e serão discutidos em detalhes abaixo.

Os dados enviados de um computador para outro usando a Internet são divididos em pacotes. Eles se movem entre computadores que compõem nós de rede. Pacotes da mesma mensagem podem passar por diferentes rotas. Cada embalagem possui uma marcação própria, o que garante a correta montagem do documento no computador ao qual a mensagem é endereçada.

O que é um protocolo? Como dito anteriormente, um protocolo são as regras de interação. Por exemplo, o protocolo diplomático prescreve o que fazer ao encontrar convidados estrangeiros ou ao realizar uma recepção. Além disso, o protocolo de rede prescreve as regras para a operação dos computadores conectados à rede. Os protocolos padrão forçam computadores diferentes a "falarem a mesma língua". Assim, é possível conectar à Internet diversos tipos de computadores que executam diferentes sistemas operacionais.

Os protocolos subjacentes da Internet são a pilha de protocolos TCP/IP. Antes de mais nada, é necessário esclarecer que, no entendimento técnico do TCP/IP - este não é um protocolo de rede, mas dois protocolos em diferentes níveis do modelo de rede (este é o chamado pilha de protocolos). protocolo TCP - protocolo nível de transporte. Ele controla isso como os dados são transferidos. protocolo IP - Morada. Ele pertence camada de rede e determina onde ocorre a transmissão.

Protocolo TCP. De acordo com o protocolo TCP , os dados enviados são "cortados" em pequenos pacotes, após o que cada pacote é marcado para que contenha os dados necessários para a montagem correta do documento no computador do destinatário.

Para entender a essência do protocolo TCP, você pode imaginar um jogo de xadrez por correspondência, quando dois participantes jogam dez partidas ao mesmo tempo. Cada movimento é registrado em um cartão postal separado, indicando o número do jogo e o número do movimento. Neste caso, entre dois parceiros através do mesmo canal de correio, existem, por assim dizer, uma dúzia de ligações (uma por lote). Dois computadores ligados entre si por uma única conexão física podem facilmente suportar várias conexões TCP ao mesmo tempo. Assim, por exemplo, dois servidores de rede intermediários podem transmitir simultaneamente um ao outro em ambas as direções muitos pacotes TCP de vários clientes em uma linha de comunicação.

Quando trabalhamos na Internet, podemos receber simultaneamente documentos da América, Austrália e Europa em uma única linha telefônica. Os pacotes de cada um dos documentos chegam separadamente, com separação no tempo, e à medida que chegam, são reunidos em diferentes documentos.

Protocolo IP . Agora considere o protocolo de endereço - IP (Internet Protocol). Sua essência é que cada membro da World Wide Web deve ter seu próprio endereço exclusivo (endereço IP). Sem isso, é impossível falar sobre a entrega exata de pacotes TCP no local de trabalho certo. Este endereço é expresso de forma muito simples - quatro números, por exemplo: 195.38.46.11. Veremos a estrutura do endereço IP com mais detalhes posteriormente. Ele é organizado de tal forma que cada computador pelo qual qualquer pacote TCP passa possa determinar por esses quatro números qual dos “vizinhos” mais próximos precisa encaminhar o pacote para que ele fique “mais próximo” do destinatário. Como resultado de um número finito de saltos, o pacote TCP chega ao seu destino.

A palavra "mais perto" não está entre aspas por acaso. Neste caso, não é a “proximidade” geográfica que está sendo avaliada. As condições de comunicação e a capacidade da linha são levadas em consideração. Dois computadores localizados em continentes diferentes, mas conectados por uma linha de comunicação espacial de alto desempenho, são considerados mais próximos um do outro do que dois computadores de aldeias vizinhas conectados por um simples fio telefônico. Resolver as questões do que considerar "mais próximo" e o que é "mais longe" são tratados por meios especiais - roteadores. O papel dos roteadores na rede geralmente é executado por computadores especializados, mas também podem ser programas especiais executados nos servidores do nó da rede.

Pilha de protocolos TCP/IP

Pilha de protocolos TCP/IP- um conjunto de protocolos de transferência de dados de rede usados ​​em redes, incluindo a Internet. O nome TCP/IP vem dos dois protocolos mais importantes da família, o Transmission Control Protocol (TCP) e o Internet Protocol (IP), que foram desenvolvidos e descritos primeiro neste padrão.

Os protocolos trabalham uns com os outros em uma pilha. pilha, pilha) - isso significa que o protocolo localizado no nível superior funciona "sobre" o inferior, usando mecanismos de encapsulamento. Por exemplo, o protocolo TCP é executado em cima do protocolo IP.

A pilha de protocolos TCP/IP inclui quatro camadas:

  • camada de aplicação (camada de aplicação),
  • camada de transporte (camada de transporte),
  • camada de rede (camada de internet),
  • camada de enlace.

Os protocolos dessas camadas implementam totalmente a funcionalidade do modelo OSI (Tabela 1). Toda a interação do usuário em redes IP é construída na pilha de protocolos TCP/IP. A pilha é independente do meio de transmissão físico.

tabela 1– Comparação da pilha de protocolos TCP/IP e o modelo de referência OSI

Camada de aplicação

A camada de aplicativo é onde a maioria dos aplicativos de rede são executados.

Esses programas têm seus próprios protocolos de comunicação, como HTTP para WWW, FTP (transferência de arquivos), SMTP (e-mail), SSH (conexão segura a uma máquina remota), DNS (tradução de caracteres para endereços IP) e muitos outros outros.

Na maioria das vezes, esses protocolos funcionam em cima de TCP ou UDP e estão vinculados a uma porta específica, por exemplo:

  • HTTP na porta TCP 80 ou 8080,
  • FTP para porta TCP 20 (para transferência de dados) e 21 (para comandos de controle),
  • Solicitações de DNS para a porta UDP (menos comumente TCP) 53,

camada de transporte

Os protocolos da camada de transporte podem resolver o problema de entrega de mensagens não garantida (“a mensagem chegou ao destino?”) E também garantir a sequência correta de chegada dos dados. Na pilha TCP/IP, os protocolos de transporte determinam a qual aplicação os dados se destinam.

Os protocolos de roteamento automático que estão logicamente presentes nessa camada (porque são executados em cima do IP) são, na verdade, parte dos protocolos da camada de rede; por exemplo OSPF (IP ID 89).

TCP (IP Identifier 6) é um mecanismo de transporte pré-estabelecido de conexão "garantida" que fornece a um aplicativo um fluxo de dados confiável, garante que os dados recebidos estejam livres de erros, solicita novamente os dados em caso de perda e elimina a duplicação de dados. O TCP permite regular a carga na rede, além de reduzir o tempo de espera dos dados quando transmitidos em longas distâncias. Além disso, o TCP garante que os dados recebidos foram enviados exatamente na mesma sequência. Esta é a sua principal diferença do UDP.

UDP (IP ID 17) é um protocolo de datagrama sem conexão. Também é chamado de protocolo de transferência "não confiável", no sentido da incapacidade de verificar a entrega de uma mensagem ao destinatário, bem como a possível mistura de pacotes. Os aplicativos que exigem transmissão de dados garantida usam o protocolo TCP.

O UDP é comumente usado em aplicativos como streaming de vídeo e jogos, onde a perda de pacotes é tolerada e a repetição é difícil ou não justificada, ou em aplicativos de desafio-resposta (como consultas DNS) em que o estabelecimento de uma conexão exige mais recursos do que o reenvio.

Tanto o TCP quanto o UDP usam um número chamado porta para definir o protocolo da camada superior.

camada de rede

A camada Internet foi originalmente projetada para transferir dados de uma (sub)rede para outra. Com o desenvolvimento do conceito de rede global, recursos adicionais foram introduzidos na camada para transferência de qualquer rede para qualquer rede, independentemente dos protocolos da camada inferior, bem como a capacidade de solicitar dados de um lado remoto, por exemplo, no protocolo ICMP (usado para transferir informações de diagnóstico de uma conexão IP) e IGMP (usado para controlar fluxos multicast).

ICMP e IGMP estão localizados acima do IP e devem ir para a próxima camada - transporte -, mas funcionalmente são protocolos da camada de rede e, portanto, não podem ser inseridos no modelo OSI.

Os pacotes de protocolo de rede IP podem conter um código que especifica qual protocolo de próxima camada usar para extrair os dados do pacote. Este número é único número IP do protocolo. ICMP e IGMP são numerados 1 e 2, respectivamente.

Camada de link

A camada de enlace descreve como os pacotes de dados são transmitidos pela camada física, incluindo codificação(ou seja, sequências especiais de bits que determinam o início e o fim de um pacote de dados). Ethernet, por exemplo, nos campos do cabeçalho do pacote contém uma indicação de qual máquina ou máquinas na rede este pacote é destinado.

Exemplos de protocolos da camada de enlace são Ethernet, Wi-Fi, Frame Relay, Token Ring, ATM, etc.

A camada de link às vezes é dividida em 2 subcamadas - LLC e MAC.

Além disso, a camada de enlace descreve o meio de transmissão de dados (seja cabo coaxial, par trançado, fibra óptica ou canal de rádio), as características físicas de tal meio e o princípio de transmissão de dados (separação de canais, modulação, amplitude do sinal, frequência, método de sincronização de transmissão, resposta de latência e distância máxima).

Encapsulamento

Encapsulamento é o empacotamento, ou aninhamento, de pacotes de alto nível (possivelmente de um protocolo diferente) em pacotes do mesmo protocolo (nível inferior), incluindo o endereço.

Por exemplo, quando um aplicativo precisa enviar uma mensagem usando TCP, a seguinte sequência de ações é executada (Fig. 2):

Figura 2 - Processo de encapsulamento

  • antes de tudo, o aplicativo preenche uma estrutura de dados especial, na qual indica informações sobre o destinatário (protocolo de rede, endereço IP, porta TCP);
  • transfere a mensagem, seu comprimento e estrutura com informações sobre o destinatário para o manipulador do protocolo TCP (camada de transporte);
  • o manipulador TCP forma um segmento no qual a mensagem são os dados e a porta TCP do destinatário (assim como outros dados) está nos cabeçalhos;
  • o manipulador TCP passa o segmento gerado para o manipulador IP (camada de rede);
  • o manipulador de IP considera o segmento TCP transmitido como dado e o prefixa com seu cabeçalho (que, em particular, contém o endereço IP do destinatário, obtido da mesma estrutura de dados do aplicativo, e o número de protocolo superior;
  • o manipulador de IP passa o pacote recebido para a camada de enlace, que novamente considera esse pacote como dados "brutos";
  • o manipulador da camada de enlace, semelhante aos manipuladores anteriores, adiciona seu próprio cabeçalho ao início (que também indica o número do protocolo de nível superior, no nosso caso é 0x0800 (IP)) e, na maioria dos casos, adiciona a soma de verificação final, formando assim uma moldura;
  • em seguida, o quadro recebido é transmitido para a camada física, que converte os bits em sinais elétricos ou ópticos e os envia para o meio de transmissão.

Do lado do destinatário, para descompactar os dados e fornecê-los ao aplicativo, é realizado o processo inverso (bottom-up), chamado de decapsulação.

Informação relacionada:



2015-2020 lektsii.org -

Camada de Transporte (TL) define as regras para o transporte de pacotes pela rede. A camada de transporte supervisiona a entrega ponta a ponta de pacotes individuais; não leva em consideração nenhuma dependência entre esses pacotes (mesmo que pertençam à mesma mensagem). Ele trata cada pacote como se cada parte pertencesse a uma mensagem separada, independentemente de pertencer ou não. Os protocolos da camada de transporte garantem que todas as mensagens cheguem intactas ao seu destino e que os pacotes estejam em sua ordem original. No nível de transporte, são realizados o controle de violação de informações e de erros, bem como o controle de fluxo ao longo de todo o caminho de origem-destino.

A camada de transporte executa as seguintes tarefas:

  • Endereçamento do Ponto de Serviço. Os computadores geralmente executam vários programas ao mesmo tempo. Por esse motivo, a entrega da origem ao destino significa a entrega não apenas de um computador para o outro, mas também de um determinado processo (programa em execução) em um computador para um determinado processo (programa em execução) em outro. Portanto, o cabeçalho da camada de transporte deve incluir um tipo de endereço chamado endereço de ponto de serviço (ou endereço de porta). A camada de rede entrega cada pacote ao endereço correto do computador; a camada de transporte entrega a mensagem completa ao processo correto naquele computador.
  • Segmentação e remontagem. A mensagem é dividida em segmentos transportáveis, cada segmento contém um número de sequência. Esses números permitem que a camada de transporte remonte adequadamente a mensagem depois de chegar ao destino e substitua os pacotes que foram perdidos em trânsito.
  • Gerenciamento de conexão. A camada de transporte pode ser orientada a conexão (transferência sem conexão) ou orientada a conexão (transferência orientada a conexão) - modo datagrama. A camada de transporte sem conexão (por meio de uma conexão virtual pré-estabelecida) processa cada segmento como um pacote independente e o entrega à camada de transporte na máquina de destino. A camada de transporte orientada a conexão primeiro estabelece uma conexão com a camada de transporte no computador de destino antes de entregar os pacotes. Após a transferência de todos os dados, a conexão termina.

    No modo sem conexão, a camada de transporte é usada para transmitir datagramas únicos sem garantir sua entrega confiável. O modo orientado a conexão é usado para entrega de dados confiável.

  • controle de fluxo. Assim como a camada de enlace de dados, a camada de transporte é responsável pelo controle de fluxo. No entanto, o controle de fluxo nesse nível é de ponta a ponta.
  • Controle de erros. Assim como a camada de enlace de dados, a camada de transporte é responsável pelo controle de erros. A camada de transporte de transmissão verifica se a mensagem completa chegou à camada de transporte de recebimento sem erros (corrupção, perda ou duplicação). A correção de erros geralmente é feita por retransmissão.

Camada de Sessão (SL)- diálogo do controlador de rede. Ele estabelece, mantém e sincroniza a comunicação entre os sistemas de comunicação.

Com a ajuda da camada de sessão ( Session Layer ) é organizado um diálogo entre as partes, é fixado qual das partes é o iniciador, qual das partes está ativa e como o diálogo termina.

As tarefas da camada de sessão são:

  • Gerenciamento de diálogo. camada de sessão permite que os dois sistemas entrem em diálogo. Permite a troca de mensagens entre dois processos. Nesse caso, os modos são possíveis: half-duplex (um caminho ao mesmo tempo) ou full-duplex (dois caminhos ao mesmo tempo). Por exemplo, a conversação entre o terminal e o mainframe pode ser half duplex.
  • Sincronização. camada de sessão permite que um processo adicione pontos de verificação (pontos de sincronização) ao fluxo de dados. Por exemplo, se o sistema estiver enviando um arquivo de 2.000 páginas, é desejável inserir pontos de verificação a cada 100 páginas para garantir que cada módulo de 100 páginas seja recebido e reconhecido de forma independente. Nesse caso, se ocorrer uma violação durante a transmissão da página 523, a única página que é necessária e será enviada novamente após a restauração do sistema é a página 501 (a primeira página da quinta centena)

Camada de apresentação trata da forma de fornecer informações para níveis inferiores, por exemplo, recodificação ou criptografia de informações.

As tarefas da camada de apresentação são:

  • Recodificação de informações. Processos (programas em execução) em dois sistemas normalmente alteram as informações na forma de cadeias de caracteres, números e assim por diante. As informações devem ser alteradas para fluxos de bits antes de serem transmitidas. Como computadores diferentes usam sistemas de codificação diferentes, camada de apresentaçãoé responsável pela interoperabilidade entre esses diferentes métodos de codificação. Camada de apresentação no transmissor altera as informações de um formato específico do transmissor para um formato genérico. Camada de apresentação no computador receptor substitui o formato comum pelo formato do seu receptor.
  • Criptografia. Para entregar informações confidenciais, o sistema deve fornecer sigilo. Criptografia significa que o transmissor converte a informação original em outra forma e envia a mensagem resultante pela rede. A descriptografia deve ser exatamente o oposto do processo original para converter a mensagem de volta ao seu formato original.
  • Compressão. A compactação de dados reduz o número de bits contidos nas informações. A compressão de dados torna-se especialmente importante na transmissão de multimídia, como texto, áudio e vídeo.

Camada de Aplicação (AL)é um conjunto de protocolos trocados entre nós remotos que implementam a mesma tarefa (programa). Camada de aplicação permite que um usuário (humano ou software) acesse a rede. Ele fornece interfaces de usuário e suporte de serviço para e-mail, acesso remoto e transferência de fundos, gerenciamento de banco de dados público e outros tipos de serviços de informações distribuídas.

Exemplos de serviços fornecidos pela camada de aplicação:

  • Terminal virtual de rede. Um terminal virtual de rede é uma versão de software de um terminal físico que permite ao usuário efetuar login em um host remoto. Para fazer isso, o aplicativo cria uma simulação de software de um terminal no host remoto. O computador do usuário se comunica com o terminal de software, que por sua vez se comunica com o host e vice-versa. O host remoto define este link como um link para um de seus próprios terminais e permite a entrada.
  • Transferência, acesso e controle de arquivos. Esse aplicativo permite que o usuário acesse arquivos em um host remoto para modificar ou ler dados, recuperar arquivos de um computador remoto para uso em um computador local e administrar ou gerenciar arquivos em um computador remoto.
  • Serviços postais. Este aplicativo fornece uma estrutura para enviar e armazenar e-mail.
  • Serviços de diretório. Este aplicativo fornece fontes de banco de dados distribuídas e acesso a informações globais sobre vários objetos e serviços.

pilha de protocolos da Internet

A pilha de protocolos Internet2 foi desenvolvida antes do modelo OSI. Portanto, as camadas na pilha de protocolos da Internet não correspondem às do modelo OSI. A pilha de protocolos da Internet consiste em cinco camadas: física, enlace de dados, rede, transporte e aplicação. As primeiras quatro camadas fornecem os padrões físicos, interface de rede, interconexão de redes e funções de transporte que correspondem às quatro primeiras camadas do modelo OSI. As três camadas superiores do modelo OSI são representadas na pilha de protocolos da Internet por uma única camada, chamada de camada de aplicação na Fig. 1.3.


Arroz. 1.3.

ARP Protocolo de Resolução de Endereço Protocolo de descoberta de endereço
Caixa eletrônico Modo Assíncrono de transferência Modo Assíncrono de transferência
BGP Protocolo de Gateway de Fronteira Protocolo de roteamento de fronteira
DNS Sistema de nomes de domínio Sistema de nomes de domínio
ethernet rede ethernet rede Ethernet
FDDI Interface de dados distribuídos por fibra Interface de dados distribuídos de fibra óptica
HTTP Protocolo de Transferência de Hipertexto Protocolo de Transferência de Hipertexto
FTP Protocolo de transferência de arquivos Protocolo de transferência de arquivos
ICMP Protocolo de mensagens de controle da Internet Protocolo de mensagem de controle
IGMP Protocolo de Gerenciamento de Grupos da Internet Protocolo de controle de grupo da Internet (usuário)
IP protocolo de internet Protocolo de internet
NFS Sistema de arquivos de rede Protocolo de acesso ao sistema de arquivos de rede
OSPF abrir o caminho mais curto primeiro Abra o protocolo de preferência de canal mais curto
PDH Hierarquia Digital Plesiócrona Hierarquia digital plesiócrona
PPP Protocolo ponto a ponto Protocolo de comunicação ponto a ponto

pilha de protocolosé um conjunto de protocolos de rede organizados hierarquicamente, suficientes para organizar a interação dos nós na rede. Os protocolos funcionam simultaneamente na rede, o que significa que o trabalho dos protocolos deve ser organizado de forma que não haja conflitos ou operações incompletas. Portanto, a pilha de protocolos é dividida em níveis construídos hierarquicamente, cada um dos quais desempenha uma tarefa específica - preparar, receber, transmitir dados e ações subsequentes com eles.

O número de camadas em uma pilha varia de acordo com a pilha de protocolo específica. Os protocolos da camada inferior geralmente são implementados em uma combinação de software e hardware, enquanto os protocolos da camada superior geralmente são implementados em software.

Há um número suficiente de pilhas de protocolo que são amplamente utilizadas em redes. As pilhas de protocolos mais populares são: OSI da International Organization for Standardization, TCP/IP, usado na Internet e em muitas redes baseadas no sistema operacional UNIX, IPX/SPX da Novell, NetBIOS/SMB, desenvolvido pela Microsoft e IBM, DECnet da Digital Equipment Corporation, SNA da IBM e alguns outros.

YouTube enciclopédico

    1 / 3

    Fundamentos de redes de dados. Modelo OSI e pilha de protocolos TCP IP. Noções básicas de Ethernet.

    pilha de protocolos

    Informática. Tecnologias de rede: pilha de protocolos OSI. Centro de Aprendizagem Online Foxford

    Legendas

Pilhas de protocolo de comunicação padrão

OSI

É importante distinguir Modelo OSI e Pilha de protocolos OSI. Enquanto o modelo OSI é um diagrama conceitual de como os sistemas abertos interagem, a pilha OSI é um conjunto de especificações de protocolo específicas.

Ao contrário de outras pilhas de protocolo, a pilha OSI é totalmente compatível com o modelo OSI, incluindo especificações de protocolo para todas as sete camadas de comunicação definidas neste modelo:

  • No fisica e camadas de link A pilha OSI suporta os protocolos Ethernet, Token ring, FDDI, bem como os protocolos LLC, X.25 e ISDN, ou seja, usa todos os protocolos populares de camada inferior desenvolvidos fora da pilha, como a maioria das outras pilhas.
  • camada de rede inclui o protocolo de rede orientado a conexão (CONP) e o protocolo de rede sem conexão (CLNP) relativamente raramente usados. Como os nomes sugerem, o primeiro é orientado à conexão, o segundo não (sem conexão). Mais populares são os protocolos de roteamento de pilha OSI: ES-IS (Sistema Final - Sistema Intermediário) entre os sistemas final e intermediário e IS-IS (Sistema Intermediário - Sistema Intermediário) entre sistemas intermediários.
  • camada de transporte A pilha OSI, de acordo com as funções definidas para ela no modelo OSI, oculta as diferenças entre serviços de rede orientados a conexão e sem conexão, para que os usuários recebam a qualidade de serviço necessária, independentemente da camada de rede subjacente. Para garantir isso, a camada de transporte exige que o usuário especifique a quantidade desejada de manutenção.
  • Serviços camada de aplicação fornecem transferência de arquivos, emulação de terminal, serviços de diretório e correio. Destes, os mais populares são Directory Service (padrão X.500), E-mail (padrão X.400), Virtual Terminal Protocol (VTP), File Transfer, Access and Control Protocol (FTAM), Job Transfer and Management Protocol ( JTM).

TCP/IP

A pilha de protocolos TCP/IP é o conjunto de protocolos de rede nos quais a Internet se baseia. Normalmente, na pilha TCP/IP, as 3 camadas superiores (aplicativo, apresentação e sessão) do modelo OSI são combinadas em um - aplicativo. Como essa pilha não fornece um protocolo de transferência de dados unificado, as funções para determinar o tipo de dados são transferidas para o aplicativo.

Níveis de pilha TCP/IP:

  1. Camada de link descreve como os pacotes de dados são transmitidos através da camada física, incluindo a codificação (ou seja, sequências de bits especiais que determinam o início e o fim de um pacote de dados).
  2. camada de rede originalmente projetado para transferir dados de uma (sub)rede para outra. Exemplos de tal protocolo são X.25 e IPC na ARPANET. Com o desenvolvimento do conceito de rede global, recursos adicionais foram introduzidos no nível para transferência de qualquer rede para qualquer rede, independentemente dos protocolos de nível inferior, bem como a capacidade de solicitar dados de um lado remoto.
  3. Protocolos camada de transporte pode resolver o problema de entrega de mensagens não garantida (“a mensagem chegou ao destinatário?”), E também garantir a sequência correta de chegada de dados.
  4. No camada de aplicação a maioria dos aplicativos de rede funciona. Esses programas possuem seus próprios protocolos de comunicação, como HTTP para WWW, FTP (transferência de arquivos), SMTP (e-mail), SSH (conexão segura a uma máquina remota), DNS (tradução de caracteres para endereços IP) e muitos outros .

Há discordância sobre como ajustar o modelo TCP/IP ao modelo OSI, porque as camadas nos modelos não são as mesmas. Uma interpretação simplificada da pilha TCP/IP pode ser representada da seguinte forma:

OSI TCP/IP
7. Aplicado HTTP, FTP, Telnet, SMTP, DNS (RIP sobre UDP e BGP sobre TCP fazem parte da camada de rede), LDAP Aplicado
6. Envios
5. Sessão
4. Transporte TCP, UDP, RTP, NCP) e o Service Advertising Protocol (SAP).

NetBIOS/SMB

Nos níveis físico e de enlace de dados dessa pilha, protocolos já difundidos, como Ethernet, Token Ring, FDDI, também estão envolvidos e, nos níveis superiores, protocolos específicos NetBEUI (NetBEUI Extended User Interface Protocol) e SMB. O NetBEUI foi projetado como um protocolo eficiente e de poucos recursos para redes com até 200 estações de trabalho. Esse protocolo contém muitos recursos de rede úteis que podem ser atribuídos às camadas de transporte e sessão do modelo OSI, mas não pode ser usado para rotear pacotes. Isso limita o uso do protocolo NetBEUI a redes locais que não são divididas em sub-redes e impossibilita seu uso em redes compostas.

O protocolo Server Message Block (SMB) suporta as funções de camada de sessão, camada de apresentação e camada de aplicação. Com base no SMB, o serviço de arquivo é implementado. bem como serviços de impressão e mensagens entre aplicativos.