Capítulo 5 e Capítulo 6 de Rede de Computadores

1. Camada de transporte

Definição: fornecer serviços de comunicação para a camada de aplicação e usar os serviços da camada de rede

Funções da camada de transporte:

  1. A camada de transporte fornece comunicação lógica entre processos e processos

  1. multiplexação e demultiplexação

  1. A camada de transporte realiza a detecção de erros nos pacotes recebidos

  1. Dois protocolos na camada de transporte

Dois protocolos da camada de transporte:

1. Protocolo de controle de transmissão orientado a conexão TCP: uma conexão deve ser estabelecida antes da transmissão de dados e a conexão deve ser liberada após a transmissão de dados. Nenhum serviço de broadcast ou multicast é fornecido. Como o TCP precisa fornecer serviços confiáveis ​​de transmissão orientados à conexão, inevitavelmente aumenta muito a sobrecarga: confirmação, controle de fluxo, cronômetro e gerenciamento de conexão.    Confiável, orientado a conexão, alta latência, adequado para arquivos grandes

2. Protocolo de datagrama de usuário sem conexão UDP: Não há necessidade de estabelecer uma conexão antes de transmitir os dados, e não há necessidade de dar nenhuma confirmação depois de receber uma mensagem UDP.     Não confiável, sem conexão, baixa latência, adequado para arquivos pequenos

Multiplexação : Todos os processos de aplicação na camada de aplicação podem ser transmitidos para a camada de rede através da camada de transporte

Descentralização : a camada de transporte entrega o processo de aplicação especificado após receber dados da camada de rede

Na rede, a combinação de soquete do remetente e do destinatário é usada para identificar o terminal.O soquete identifica exclusivamente um host na rede e um processo nele.

1. Protocolo UDP

O UDP adiciona apenas algumas funções ao serviço de datagrama IP, ou seja, funções de multiplexação, demultiplexação e detecção de erros

As principais características do UDP:

1. O UDP é sem conexão , reduzindo a sobrecarga e o atraso antes de enviar dados

2. UDP usa entrega de melhor esforço, o que não garante entrega

3. O UDP é orientado a mensagens, adequado para aplicativos de rede que transmitem uma pequena quantidade de dados de uma só vez

4. UDP não tem controle de congestionamento, adequado para muitas aplicações em tempo real

5. A sobrecarga do cabeçalho UDP é pequena, 8B, TCP 20B

2. Protocolo TCP

Características TCP:

  1. TCP é um protocolo da camada de transporte orientado à conexão (conexão virtual)

  1. Cada conexão TCP pode ter apenas dois terminais e cada conexão TCP pode ser apenas ponto a ponto .

  1. O TCP fornece serviços de entrega confiáveis, sem erro, sem perda, sem repetição e chegada em ordem

  1. TCP fornece comunicação full-duplex

Análise de campo TCP:

Número de seqüência : Cada byte no fluxo de bytes transmitido em uma conexão TCP é numerado em seqüência, este campo indica o número de seqüência do primeiro byte dos dados enviados neste segmento .

Número de confirmação : O número de série do primeiro byte de dados do próximo segmento que se espera receber pela outra parte. Se o número de confirmação for N, isso prova que todos os dados até o número de sequência N-1 foram recebidos corretamente

Deslocamento de dados (comprimento do cabeçalho) : a que distância está o início dos dados do segmento de mensagem TP desde o início do segmento de mensagem TCP em unidades de 4B bits, ou seja, um valor é 4B

Os seis controles são:

Bit urgente URG: Quando URG=1 , indica que há dados urgentes neste segmento de mensagem, que são dados de alta prioridade, e devem ser transmitidos o mais rápido possível sem enfileirar no cache. É usado em conjunto com o bit urgente campo de ponteiro

Bit de confirmação ACK : Quando ACK=1, o número de confirmação é válido e todos os segmentos transmitidos devem definir ACK como 1 após a conexão ser estabelecida

Push bit PSH : Quando PSH = 1, o receptor entrega o processo de aplicação de recebimento o mais rápido possível e não espera mais até que o cache esteja cheio antes de entregar para cima

Reset RST : Quando RST=1, indica que há um erro grave na conexão TCP, a conexão deve ser liberada, e então o link de transmissão deve ser restabelecido

Bit de sincronização SYN : Quando SYN=1, indica que é uma mensagem de solicitação de conexão/aceitação de conexão

Bit de terminação FIN : Quando FIN=1, indica que os dados do remetente deste segmento de mensagem foram enviados, sendo necessário liberar a conexão

Janela : refere-se à janela de recebimento da parte que está enviando este segmento, ou seja, a quantidade de dados que a outra parte agora pode enviar

Soma de verificação : verifique cabeçalho + dados, adicione 12B pseudo cabeçalho ao verificar e o quarto campo é 6

Ponteiro urgente : só tem significado quando URG=1, indicando o número de bytes de dados urgentes neste segmento

Opções : Comprimento Máximo do Segmento MSS, Expansão da Janela, Carimbo de Data e Hora, Confirmação de Seleção

3. Estabelecimento e liberação da conexão TCP

Estabelecimento de conexão TCP: handshake de três vias

RODADA 1:

O cliente envia um segmento de solicitação de conexão sem dados da camada de aplicação, SYN=1, seg=x (aleatório)

2 ª RODADA:

O servidor aloca buffers e variáveis ​​para a conexão TCP, e retorna um segmento de mensagem de confirmação para o cliente , permitindo a conexão sem dados da camada de aplicação.

SYN=1, ACK=1, seg=y(aleatório), ack=x+1

CARREIRA 3:

O cliente aloca buffers e variáveis ​​para a conexão TCP e retorna uma confirmação ao servidor , que pode transportar dados

SYN=0,ACK=1,seq=x+1,ack=y+1

Liberação da conexão TCP: handshake de quatro vias

RODADA 1:

O cliente envia um segmento de liberação de conexão , interrompe o envio de dados e fecha ativamente a conexão TCP.         

FIN=1,seq=u

2 ª RODADA:

O servidor envia de volta um segmento de mensagem de confirmação e a conexão do cliente para o servidor nessa direção é liberada - estado meio fechado

ACK=1,seq=v,ack=u+1

CARREIRA 3:

Depois que o servidor envia os dados, ele envia um segmento de mensagem de liberação de conexão e fecha ativamente a conexão TCP.

FIN=1,ACK=1,seg=w,ack=u+1

RODADA 4:

O cliente envia de volta um segmento de mensagem de confirmação e, em seguida, espera até o 2MSL (vida útil do segmento de mensagem mais longo) definido pelo cronômetro, a conexão é completamente fechada

ACK=1,seq=u+1,ack=w+1

4. Controle de fluxo TCP

在通信过程中,接收方根据自己接收缓存的大小,动态地调整发送方的发送窗口大小,即接收窗口rwnd (接收方设置确认报文段的窗口字段来将rwnd通知给发送方),发送方的发送窗口取接收窗口rwnd和拥塞窗口cwnd的最小值。

5.TCP拥塞控制

拥塞控制的四种算法:

1.慢开始     2.拥塞避免

3.快重传     4.快恢复

发送窗口=Min(接收窗口rwnd,拥塞窗口cwnd}

接收窗口接收方根据接受缓存设置的值,并告知给发送方,反映接收方容量

拥塞窗口发送方根据自己估算的网络拥塞程度而设置的窗口值,反映网络当前容量

1.慢开始和拥塞避免

2.快开始和快恢复

2.应用层

两个网络应用模型:客户/服务器(c/s) 模型P2P模型

1.客户/服务器(c/s) 模型

服务器:提供计算服务的设备。

  1. 永久提供服务

  1. 永久性访问地址/域名

客户机请求计算服务的主机

  1. 与服务器通信,使用服务器提供的服务

  1. 间歇性接入网络

  1. 可能使用动态IP地址

  1. 不与其他客户机直接通信

2.P2P模型

特点:

不存在永远在线的服务器

每个主机既可以提供服务,也可以请求服务

任意端系统/节点之间可以直接通讯

节点间歇性接入网络

节点可能改变IP地址

可扩展性好

网络健壮性强

3.DNS系统

域名的分类:

分类

二次分类

例子

顶级域名

国家顶级域名

cn,us,uk

通用顶级域名

com,net,org,gov,int,aero,museum,travel

基础结构域名/反向域名

arpa

二级域名

类别域名

ac,com,edu,gov,mil,net,org

行政区域名

用于我国各省、自治区、直辖市 bj,js

三级域名

四级域名

域名服务器:

  1. 根域名服务器

  1. 顶级域名服务器:管理该顶级域名服务器注册的所有二级域名

  1. 权限域名服务器:负责一个区的域名服务器

  1. 本地域名服务器:当一个主机发出DNS查询请求时,这个查询请求报文就发给本地域名服务器

查询解析域名的两种方法:

1递归查询

2.迭代查询

4.文件传输协议FTP

定义:提供不同种类主机系统(硬、软件体系等都可以不同)之间的文件传输能力

FTP是基于客户/服务器(c/S)的协议

FTP工作原理:

控制连接始终保持

数据连接保持一会

是否使用TCP20端口建立数据连接传输模式有关

主动方式使用TCP20端口

被动方式由服务器和客户端自行协商决定(端口1024)

5.电子邮件系统

1.简单邮件传送协议SMTP

SMTP规定了在两个相互通信的SMTP进程之间应如何交换信息

负责发送邮件的SMTP进程就是SMTP客户,负责接收邮件的进程就是SMTP服务器,使用的端口号是25

SMTP的缺点:

  1. SMTP不能传送可执行文件或者其他二进制对象

  1. SMTP仅限于传送7位ASCII码,不能传送其他非英语国家的文字

  1. SMTP服务器会拒绝超过一定长度的邮件

解决:通用因特网邮件扩充MIME

2.网际报文存取协议IMAP

定义:IMAP协议比POP协议复杂。当用户Pc上的IMAP客户程序打开IMAP服务器的邮箱时,用户可以看到邮箱的首部,若用户需要打开某个邮件,该邮件才上传到用户的计算机上

3.基于万维网的电子邮件

6.万维网

万维网www(World Wide web)是一个大规模的、联机式的信息储藏所/资料空间,是无数个网络站点和网页的集合

URL:统一资源定位符

HTTP:超文本传输协议

万维网使用超文本标记语言HTML,使得万维网页面设计者可以很方便地从一个界面的链接转到另一个界面,并能够在自己的屏幕上显示出来

1.超文本传输协议HTTP

HTTP协议定义了浏览器(万维网客户进程)怎样向万维网服务器请求万维网文档,以及服务器怎样把文档传送给浏览器

HTTP的连接方式:

1.持久连接

  1. 非流水线连接

  1. 流水线连接

2.非持久连接

HTTP的报文结构:

1.请求报文

2.响应报文

HTTP报文是面向文本的,因此在报文中的每一个字段都是一些ASCII码串

Acho que você gosta

Origin blog.csdn.net/weixin_62859191/article/details/128700369
Recomendado
Clasificación