. Introducao
Este documento representa meus estudos acerca do livro Redes de Computadores e a Internet - uma abordagem top down
Conceitos Fundamentais
A internet representa uma rede de computadores (ou outros dispositivos) interconectados atraves de diversas formas e tecnicas distintas e com protocolos definidos. De maneira geral (alem das camadas, que veremos com mais detalhes em sequencia), a internet pode ser dividida em dispositivos (os quais acessam esta conexao - computadores, algumas geladeiras, ou seja, que utiliza-se dos protocolos de rede e suas aplicacoes) e componentes (que a garantem - links, routers e etc). Esta definicao eh simplista, evidentemente, mas agrupa logicamente o que compoe a internet.
Da mesma forma, temos outra possivel divisao, a de estrutura:
- Borda da rede (edge): as aplicacoes e dispositivos hosts (servidores ou clientes).
- Nucleo da rede (core): Roteadores, links, rede de redes..
Percebemos, desta maneira, que a maior parte da internet esta localizada, efetivamente, em suas extremidades.
No geral, a internet eh construida por alguns grupos de components:
- hosts
- packet switches: roteadores, switches -> passam os pacotes adiante
- links: enlace, responsavel por efetivamente passar os dados, seja por satelite, cabos e afins.
- a taxa de transmissao = banda-larga
- networks(redes): as redes sao uma colecao de dispositivos, sejam hosts, roteadores ou qualquer outro, ligados por protocolos. Pode ter qualquer tamanho. Formando a internet, que eh uma rede de diversas redes conectadas.
Internet Standards
Existem, portanto, padroes para estar na internet.
- RFCS (requests for comments) -> documentos que padronizam os protocolos, sao os registros tecnicos acerca de cada protocolo. Qualquer um pode submeter um, estando em conjunto com a IETF. Estao salvas aqui.
Protocolos
Representam a maneira como os computadores podem se conectar ou, enfim, enviar dados de maneira conjunta. Isso significa que o cliente precisa saber como o servidor trata a transmissao de dados, ou seja, precisam usar o mesmo protocolo.
Servicos com e sem conexao
Servico orientado a conexao
objetivo: transferir dados entre sistemas. Este metodo utiliza-se do handshaking, uma maneira de criar um estado de conexao entre os dispositivos envolvidos. Um device envia uma mensagem de conexao e o outro aprova ou nao, criando um status de conexao.
precisa de um fluxo orientado e confiavel* de bytes
- realiza confirmacoes de entrega de pacotes e emite codigos de erro.
controle de fluxo:
- Não permite um transmissor rápido “afogar” um receptor mais lento.
controle de congestionamento
- o transmissor reduz a taxa de envio de pacotes quando a rede se congestiona.
ex: TCP (Transmission Control Protocol)
*confiabilidade: Tem a garantia/validacao de que um pacote que sai de um dispositivo chegara no outro, sem perca de informacoes.
Servico orientado a nao conexao
- objetivo: transferir dados entre sistemas.
- fluxo de dados nao confiavel
- Sem controle de fluxo
- Sem controle de congestionamento
ex: UDP (User Datagram Protocol)

