Entrevista importante pontos de conhecimento da rede de computadores

Entrevista importante pontos de conhecimento da rede de computadores


Suplemento: os números de porta comumente usados ​​compreendem:

(1) http 80 https 443 ftp 21 telnet 23 tomcat 8080 mysql 3306
(2) Diferença básica entre http get / post:

Insira a descrição da imagem aqui

(1)
Características UDP da camada de transporte :
1. Baseado no protocolo IP: multiplexação e demultiplexação. A verificação de erros simples pode ser alcançada.
2. Faça o seu melhor para entregar: ele pode ser perdido e não ser alcançado quando solicitado.
3. Sem conexão: O emissor e o receptor não precisam apertar as mãos e o processamento de cada segmento UDP é independente de outros segmentos.

Por que o UDP existe (o que significa):
1. Não há necessidade de se conectar, reduza o atraso.
2. Implementação simples, sem necessidade de manter o status da conexão.
3. O overhead do cabeçalho é pequeno, apenas 8 bytes.
4. Sem controle de congestionamento: O aplicativo pode controlar melhor o tempo e a taxa de envio, mas se o TCP estiver congestionado, ele ajustará automaticamente a velocidade, portanto, não é fácil de controlar. Portanto, para aplicativos que precisam controlar a taxa de envio, é melhor usar UDP.

Aplicativos: DNS, SNMP, aplicativos de mídia de streaming
(ainda disponíveis)

Campo de cabeçalho:
1. Porta de origem: 2 bytes
2. Porta de destino (porta de destino): 2 bytes
3. Comprimento: o comprimento total do segmento UDP, incluindo o cabeçalho, ocupando 2 bytes
4. Campo de soma de verificação: 2 bytes

UDP checksum: função do campo de checksum:
(1) remetente: trata o conteúdo do segmento como um certificado de 16 bits, executa o cálculo de checksum, reverte o bit a bit e coloca-o no campo de checksum.
(2) Receptor: Calcule o checksum recebido e compare-o com o campo checksum. Se não esperar, prova que está errado. Se forem iguais, nenhum erro é detectado, mas ainda pode haver erros. Por exemplo, se dois bits forem invertidos ao mesmo tempo, não será detectado.

O TCP principal de toda a rede:
1. Recursos
Insira a descrição da imagem aqui2. Cada campo do cabeçalho
Insira a descrição da imagem aqui
Número de sequência: refere-se ao número do primeiro byte do segmento, não ao número do segmento. Ao estabelecer um link TCP, ambas as partes selecionam aleatoriamente um número de sequência.

ACKs:
O número de sequência do próximo byte que você deseja receber.
Confirmação acumulativa: (semelhante ao GBN) 3.
Insira a descrição da imagem aquiInsira a descrição da imagem aquiTransmissão confiável de dados TCP
Insira a descrição da imagem aquiDeve-se notar aqui que a configuração do tempo limite é obtida por métodos estatísticos.
Insira a descrição da imagem aqui
Acima à esquerda: Se o ACK não for recebido dentro do tempo limite, ele será retransmitido.
À direita da figura acima: a configuração de tempo limite é curta e é retransmitida antes de receber o ACK. Nesse momento, após a retransmissão, os ACKs atrasados ​​originais são recebidos sucessivamente e o valor do ACK retornado após a retransmissão é finalmente recebido, pois é mecanismo de reconhecimento acumulado, logo o valor ACK é o valor máximo recebido neste momento, que é 120.
Insira a descrição da imagem aqui
No entanto, a situação acima causará problemas devido ao mecanismo de acumulação.

Handshake de três vias de controle de conexão TCP, quatro mãos acenadas, abertura simultânea, fechamento simultâneo e fechamento pela metade

Link de referência: https://blog.csdn.net/smileiam/article/details/78226816 (três handshake, quatro ondas)
①Três handshake: https://mp.weixin.qq.com/s/mhIaC-Eyk5XCPH_rfrE- wg
Insira a descrição da imagem aqui
Ondas quatro vezes:
Insira a descrição da imagem aqui
③Conexão de meia-abertura: depois que as duas partes estão conectadas, uma delas repentinamente perde energia sem enviar FIN para o outro lado, então o outro lado é conectado sozinho.Esta situação é chamada de conexão semiaberta.
④ Abrir ao mesmo tempo: (torna-se um handshake de quatro vias) É
simplesmente entendido que A envia um pacote SYN para B para solicitar o estabelecimento de uma conexão, mas antes que o pacote de A alcance B, B envia um pacote SYN para A para solicitação para estabelecer uma conexão. Em seguida, ambas as partes retornarão um pacote ACK para a outra parte. Nesse momento, um handshake de quatro vias é executado (raramente é o caso).
Insira a descrição da imagem aqui
⑤ Fechamento simultâneo: O
princípio do fechamento simultâneo é semelhante ao da abertura simultânea e ambas as partes solicitam o fechamento simultaneamente.
Insira a descrição da imagem aqui
⑥Half fechado:
Simplesmente entenda que A envia uma solicitação final FIN para B, e B concorda e retorna ACK. Mas B não enviou FIN para A, porque B ainda pode enviar uma mensagem, ou A ainda deseja receber uma mensagem de B. O estado neste momento está meio fechado.
Insira a descrição da imagem aqui
A diferença entre meio aberto e meio fechado: meio aberto significa que depois que as duas partes estabelecem uma conexão, uma falha de energia anormal ocorre em uma seção, e a outra extremidade não sabe disso, e está meio aberta estado neste momento. Para um semifechamento, uma extremidade envia uma solicitação para dizer ao outro segmento para fechar, e a outra extremidade não envia uma solicitação de fin para fechar, neste momento é chamado de meio fechamento.

O TCP garante uma transmissão confiável Resumo
1. Os dados do aplicativo são divididos em blocos de dados que o TCP considera os mais adequados para o envio.
2. O TCP numera cada pacote enviado e o receptor classifica os pacotes de dados e os transmite para a camada de aplicativo 3.
3. Checksum: o TCP manterá o checksum de seu cabeçalho e dados. Esta é uma soma de verificação de ponta a ponta, cujo objetivo é detectar quaisquer alterações nos dados durante a transmissão. Se houver um erro na soma de verificação do segmento recebido, o TCP descartará o segmento e não acusará o recebimento deste segmento.
4. A extremidade receptora do TCP descarta os dados duplicados.
5. Controle de fluxo: Cada parte da conexão TCP tem um espaço de buffer de tamanho fixo, e a extremidade de recebimento do TCP só permite que a extremidade de envio envie os dados que o buffer de extremidade de recebimento pode aceitar. Quando o receptor chega tarde demais para processar os dados do remetente, ele pode solicitar que ele reduza a taxa de envio para evitar a perda de pacotes. O protocolo de controle de fluxo usado pelo TCP é um protocolo de janela deslizante de tamanho variável. (O TCP usa uma janela deslizante para obter o controle de fluxo, e o controle de fluxo é direcionado aos computadores dos dois terminais)
6. Controle de congestionamento: Quando a rede está congestionada, reduz a quantidade de dados enviados. (O controle de congestionamento é para a rede)
7. O protocolo de parada de espera também visa obter uma transmissão confiável. Seu princípio básico é interromper o envio sempre que um pacote é enviado e aguardar a confirmação da outra parte. Após receber a confirmação, envie o próximo pacote. Retransmissão de tempo limite: quando o TCP envia um segmento, ele inicia um cronômetro e espera que o destino confirme o recebimento desse segmento. Se uma confirmação não puder ser recebida a tempo, o segmento será reenviado.

Pare de esperar pelo protocolo
①Protocolo ARQ contínuo (envie vários consecutivamente, e então o receptor retorna o último pacote recebido em sucessão)
② Protocolo ARQ de solicitação de retransmissão automática (envie uma confirmação e uma)

Controle de fluxo
① O TCP usa uma janela deslizante para obter o controle de fluxo.
②O controle de fluxo serve para controlar a taxa de envio do remetente e garantir que o destinatário tenha tempo para receber.
③O campo da janela na mensagem de confirmação enviada pelo destinatário pode ser usado para controlar o tamanho da janela do remetente, afetando assim a taxa de envio do remetente. Se o campo da janela for definido como 0, o remetente não poderá enviar dados.

Controle de congestionamento
① Para controlar o congestionamento, o emissor TCP deve manter uma variável de estado da janela de congestionamento (cwnd). O tamanho da janela de controle de congestionamento depende do grau de congestionamento da rede e muda dinamicamente. O remetente torna sua janela de envio o menor entre a janela de congestionamento e a janela de aceitação do receptor.
②Início lento (apenas o valor inicial é 1 e o crescimento posterior é relativamente rápido): Como a velocidade de envio é muito lenta, o estágio de crescimento exponencial é usado no estágio inicial.
③ Prevenção de congestionamento: Quando o crescimento exponencial atinge um limite de início lento (ssthresh), quando esse limite é atingido, o início lento é encerrado, a prevenção de congestionamento é inserida e o crescimento linear é iniciado.
Mesmo se a prevenção de congestionamento for usada, o MAX será sempre atingido. Quando o máximo for atingido, o limite é reduzido pela metade e a janela de congestionamento N = 1 é definida e, em seguida, o início lento e a prevenção de congestionamento são iniciados.

Vamos primeiro ver como o TCP determina que a rede entrou em um estado congestionado.O TCP acredita que a principal base para o congestionamento da rede é que ele retransmite um segmento de mensagem. Conforme mencionado acima, o TCP tem um temporizador para cada segmento, chamado de temporizador de retransmissão (RTO). Quando o RTO expira e os dados ainda não foram confirmados, o TCP irá retransmitir o segmento. Quando ocorrer um tempo limite, haverá a possibilidade de congestionamento é muito alto. Um determinado segmento pode ser perdido em algum lugar da rede e não há mensagem no segmento subsequente. Nesse caso, a resposta do TCP é relativamente "forte":
1. Reduza ssthresh para metade do valor de cwnd
2. Redefina cwnd para 1
3. Entre novamente no processo de início lento.

④Retransmissão rápida: Quando o receptor não recebe um pacote (ou recebe pacotes fora de sequência, significa que um determinado pacote foi perdido), o receptor usa o mecanismo de retransmissão rápida para enviar três pacotes ACK consecutivos (espera-se que receba o último número de sequência do pacote), informe ao remetente que o pacote ainda não foi recebido.
Mecanismo de retransmissão rápida: 1, 2, 3 são enviados, mas o ACK recebido todas as vezes é exibido como 1. Se o ACK repetido atingir 3 vezes, então 1 é retransmitido, indicando que 1 não foi recebido.
(1) Ao enviar: usando pipeline para enviar, vários pacotes podem ser enviados continuamente.
(2) Ao receber: O mecanismo de recebimento cumulativo é adotado, que é mais parecido com o mecanismo GBN.

A retransmissão rápida é para o receptor. Depois que a retransmissão rápida é acionada, a recuperação rápida é acionada imediatamente, e a recuperação rápida é para o remetente.

⑤Recuperação rápida: neste momento, o limite será definido para metade de MAX, mas neste momento (congestionamento) não está definido para 1, tornando ssthresh igual a metade de cwnd e, em seguida, tornando cwnd igual a ssthresh, de modo que o início ponto já é muito alto, e então Use crescimento linear.
Insira a descrição da imagem aquiMecanismo de retransmissão de tempo limite de TCP: quatro temporizadores
(1) Temporizador de retransmissão: (entendido simplesmente como, no temporizador, se você não retornar ACK, então vou retransmitir, o tempo de retransmissão é 2RTT)
Temporizador de retransmissão: para Controle do segmento perdido ou segmento descartado, ou seja, o tempo de espera pela confirmação do segmento. Quando o TCP envia um segmento de mensagem, ele cria um temporizador de retransmissão para este segmento de mensagem específico. Duas situações podem ocorrer: se a confirmação do segmento de mensagem for recebida antes que o temporizador expire, o temporizador é cancelado; se estiver recebendo Quando o temporizador expira antes da confirmação do segmento específico da mensagem, a mensagem é retransmitida e o cronômetro é zerado;
(2) Cronômetro persistente: cronômetro persistente (especialmente configurado para lidar com notificações de janela zero, ou seja, quando o receptor está Quando a janela é 0 , então enviarei a você um relatório de teste todas as vezes para ver se você tem espaço. O cronômetro dobra a cada vez e, quando chega a 60 segundos, não aumenta novamente.) 0
Quando o remetente recebe uma janela zero Quando o cronômetro de persistência é confirmado, o temporizador de persistência é iniciado. Quando o temporizador de persistência expira, o TCP remetente envia um segmento especial denominado segmento de sondagem. Este segmento tem apenas um byte de dados. O segmento da sonda possui um número de série, mas o número de série nunca precisa ser confirmado, e mesmo o número de série é ignorado no cálculo da confirmação de outras partes dos dados. O segmento de mensagem de teste lembra ao TCP final de recebimento que a confirmação foi perdida e deve ser retransmitida.
O prazo final do temporizador de persistência é definido com o valor do tempo de retransmissão, mas se nenhuma resposta do receptor for recebida, outro segmento de sondagem é enviado e o valor do temporizador de persistência é dobrado e redefinido, e o remetente continua Enviar o teste o segmento de mensagem, duplique e redefina o valor do temporizador de persistência até que o valor aumente para o limite (geralmente 60 segundos). Depois disso, o remetente enviará um segmento a cada 60s até que a janela seja reaberta;
(3) Timer Keep-Alive: Timer Keepplive (o receptor envia relatórios de detecção ao remetente um após o outro dentro de 2 horas para ver se o remetente tem dados para transmitir. Se as informações do remetente não forem recebidas após 2 horas, então pegue o iniciativa Desconectar.)
Sempre que o servidor recebe informações do cliente, ele zera o cronômetro Keeplive. O tempo limite é geralmente definido para 2 horas. Se o servidor não receber as informações do cliente por mais de 2 horas, ele enviará uma investigação segmento. Se 10 segmentos de sondagem (um enviado a cada 75 segundos) não receberam uma resposta, a conexão é encerrada.
(4) Temporizador de tempo de espera: Time_Wait Timer (ou seja, após a parte fechar a conexão, haverá um tempo de transição, durante o tempo de transição, se o segmento FIN for recebido novamente, pode ser descartado diretamente). É usado
durante o período de término da conexão, quando o TCP é fechado Ao conectar, não é considerado que a conexão está realmente fechada Durante o período de espera, a conexão ainda está em um estado intermediário. Desta forma, o segmento de barbatana repetido é descartado quando chega ao fim.O valor deste temporizador é geralmente definido como duas vezes a vida útil esperada de um segmento de segmento.

Terceiro, a camada de rede
1. Domine o formato do cabeçalho IP: como identificação de fragmentação de 16 bits, identificação de não fragmentação de DF, MF mais identificação de fragmentação, deslocamento de fragmento de 13 bits, TTL de vida útil de 8 bits, 16- bit header checksum, etc.
(1) identificação de fragmento de 16 bits: o software IP mantém um contador na memória, e cada vez que um datagrama é gerado, o contador é incrementado em 1, e este valor é atribuído ao campo de identificação. Mas essa "identificação" não é um número sequencial, pois o IP é um serviço sem conexão, e não há problema de recepção sequencial de datagramas. Quando um datagrama deve ser fragmentado porque seu comprimento excede o MTU da rede, o valor deste campo de identificação é copiado para o campo de identificação de todos os datagramas. O valor do mesmo campo de identificação permite que cada datagrama após a fragmentação seja finalmente remontado no datagrama original corretamente.
(2) O sinalizador ocupa 3 bits, mas atualmente apenas 2 bits são significativos.
● O bit mais baixo no campo do sinalizador é marcado como MF (More Fragment). MF = 1 significa que existem datagramas "fragmentados" por trás. MF = 0 significa que este é o último de vários fragmentos de datagrama.
● O bit no meio do campo do sinalizador é marcado como DF (Don't Fragment), que significa "não pode ser fragmentado". A fragmentação é permitida apenas quando DF = 0, então DF = 1 que não pode ser fragmentado.
(3) O deslocamento do chip ocupa 13 bits. O deslocamento da fatia indica a posição relativa de uma fatia no grupo original depois que o grupo mais longo é fatiado. Ou seja, em relação ao início do campo de dados do usuário, onde começa a fatia. O deslocamento do chip usa 8 bytes como unidade de deslocamento. Isso significa que o comprimento de cada fragmento deve ser um múltiplo inteiro de 8 bytes (64 bits).
(4) O tempo de sobrevivência ocupa 8 bits. A abreviação comumente usada para o campo do tempo de sobrevivência é TTL (Time To Live), que indica o tempo de vida do datagrama na rede. Este campo é definido pela fonte do datagrama. Seu objetivo é evitar que datagramas não entregues circulem pela Internet indefinidamente, consumindo recursos da rede em vão. O design original usa segundos como unidade de TTL. Cada vez que passa por um roteador, o TTL é subtraído do período de tempo em que o datagrama é consumido pelo roteador. Se o tempo consumido pelo datagrama no roteador for menor que 1 segundo, o valor TTL será reduzido em 1. Quando o valor TTL é 0, o datagrama é descartado.
(5) O protocolo ocupa 8 bits, e o campo do protocolo indica qual protocolo é usado para os dados transportados neste datagrama, de forma que a camada IP do host de destino saiba qual procedimento de processamento deve ser entregue sobre a parte dos dados.
(6) A primeira soma de inspeção representou 16 lugares. Este campo verifica apenas o cabeçalho do datagrama, mas não inclui a parte dos dados. Isso ocorre porque sempre que um datagrama passa por um roteador, o roteador deve recalcular a soma de verificação do cabeçalho (alguns campos, como tempo de vida, sinalizadores, deslocamento de fatia, etc., podem mudar). Não verificar a parte dos dados pode reduzir a carga de trabalho do cálculo.

2. Fragmentação de IP, roteamento de IP
(1) Fragmentação de IP: MTU (Unidade Máxima de Transmissão) A
MTU já foi mencionada anteriormente, é uma limitação do frame de dados da rede na camada de enlace, ainda tomando Ethernet como exemplo, a MTU é de 1500 bytes. Um datagrama IP é transmitido na Ethernet.Se seu comprimento for maior que o valor do MTU, ele deve ser transmitido em fragmentos para que o comprimento de cada datagrama seja menor que o MTU. Os datagramas IP transmitidos em fragmentos não chegam necessariamente em ordem, mas as informações no cabeçalho IP permitem que esses fragmentos de datagrama sejam montados em ordem. A fragmentação e remontagem de datagramas IP são feitas na camada de rede.
Resumo: o UDP não será segmentado, será dividido por IP. O TCP será segmentado, é claro, o IP não será usado!
(2) Roteamento IP: resumido em três pontos. Um, procure primeiro o endereço do host. Em segundo lugar, se o endereço do host não for encontrado, procure o endereço de rede novamente. Terceiro, se o endereço de rede não for encontrado, ele seguirá a rota padrão.

3. Protocolo ICMP: domina principalmente o formato da mensagem. As
mensagens são divididas em 2 tipos de mensagens de consulta + 5 tipos de mensagens de erro
(0) O que é ICMP: https://blog.csdn.net/u011784495/article/details/71743516
(1) Por que eu preciso do ICMP?
Como o protocolo IP não oferece confiabilidade e não pode garantir a entrega de informações, é importante notificar o remetente quando ocorrer um problema. (O protocolo IP é um protocolo não confiável e não pode realizar controle de erros. No entanto, o protocolo IP pode usar outros protocolos para realizar esta função, como ICMP)
(2) Existem 5 tipos de mensagens de relatório de erro ICMP:
1. O destino é inacessível: o ponto final inacessível é dividido em seis casos: rede inacessível, host inacessível, protocolo inalcançável, porta inalcançável, fragmentação necessária, mas o bit DF está definido como 1 e falha de roteamento de origem. O campo de código está definido como 0 a 5. Quando as seis situações acima ocorrem, uma mensagem de destino inacessível é enviada para a estação de origem.
Descrição:
Porta inacessível: uma das regras UDP é: se um datagrama UDP for recebido e a porta de destino não corresponder a um determinado processo em uso, o UDP retornará uma mensagem ICMP inacessível.
2. Supressão da estação fonte: Quando um roteador ou host descarta um datagrama devido ao congestionamento, ele envia uma mensagem de supressão da estação fonte para a estação fonte, para que a estação fonte saiba que deve diminuir a taxa de envio do datagrama.
3. Tempo excedido: quando o roteador recebe um datagrama com tempo de vida igual a zero, ele não apenas descarta o datagrama, mas também envia um pacote com tempo excedido para a estação de origem. Quando a estação de destino não pode receber todos os fragmentos de datagrama de um datagrama dentro do tempo predeterminado, ela descarta todos os fragmentos de datagrama que foram recebidos e envia o pacote que excedeu o tempo para a estação de origem.
4. Problema de parâmetro: Quando o valor do campo no cabeçalho do datagrama recebido pelo roteador ou host de destino está incorreto, o datagrama é descartado e uma mensagem de problema de parâmetro é enviada para a estação fonte.
5. Alterar rota (redirecionar) O roteador envia a mensagem de alteração de rota ao host para que ele saiba que deve enviar o datagrama a outro roteador na próxima vez.

4. Mensagem de consulta ICMP: PING, traceroute (não sei se está correto ou não)

4. Camada de enlace de dados
1. Quadro Ethernet
Em primeiro lugar, há dois formatos de quadro Ethernet: formato de quadro IEEE802.3 e formato de quadro Ethernet_II.Atualmente, o segundo formato é mais usado.
O datagrama transmitido da camada de rede é adicionado com um cabeçalho de quadro e um final de quadro na camada de enlace de dados para formar um quadro de dados.

Método de transmissão de quadro:
Insira a descrição da imagem aqui

O endereço MAC é de 48 bits e os primeiros 24 bits representam o código do fornecedor, que é gerenciado e atribuído pelo IEEE. O número de série de 24 bits restante é atribuído pelo fabricante.

Os quadros na rede local podem ser enviados de três maneiras.
Observe o método de envio: A discussão a seguir é o endereço MAC de destino. O último bit do primeiro byte é 0, 1 e todos os bytes são f. Acontecendo. O endereço de destino é escrito pelo remetente.
1. Unicast:
2. Broadcast
3. Multicast

Se o endereço MAC de destino for o endereço MAC local, o quadro é aceito, o campo de sequência de verificação de quadro (FCS) é verificado e o valor calculado pela máquina local é comparado para determinar se o quadro mantém a integridade durante a transmissão. Se o valor FCS do quadro for diferente do calculado pela máquina, o quadro será descartado. Se o quadro passar na verificação FCS, o host determinará qual protocolo o quadro é enviado para a camada superior (ou esta camada) de acordo com o campo Tipo no cabeçalho do quadro.

2. O conceito de MTU
Ethernet e 802.3 tem um limite para o comprimento dos quadros de dados e os valores máximos são 1.500 e 1.492 bytes, respectivamente. Essa característica da camada de enlace é chamada de MTU, a unidade máxima de transmissão. A maioria dos diferentes tipos de rede tem um limite superior.
Se a camada IP tiver um datagrama a ser transmitido e o comprimento dos dados for maior que o MTU da camada de enlace, a camada IP precisa realizar a fragmentação para dividir o datagrama em várias partes, de modo que cada parte seja menor que o MTU.

Expansão:
Insira a descrição da imagem aqui
3. ARP e RARP: principalmente o princípio de mensagem e consulta ARP
(protocolo de resolução de endereço ARP e protocolo de resolução de endereço reverso RARP)
https://blog.csdn.net/zln99/article/details/51050472 (este site explica Hate completamente)
1. Mensagem:

2. Princípio da consulta ARP:
Insira a descrição da imagem aqui3. Introdução do RARP:
Insira a descrição da imagem aqui
5. Camada de aplicação
1. DNS: espaço de nomes DNS, princípio de consulta de ponteiro DNS (pesquisa reversa ou análise reversa), cache DNS. https://blog.csdn.net/gavin_john/article/details/53264549 (URL recomendado)
(1) Namespace: (lembre-se de algumas palavras-chave: domínio raiz, domínio de nível superior, domínio de segundo nível, subdomínio, nome de host)
Insira a descrição da imagem aqui
1 . Consulta de ponteiro DNS

Pesquisa direta (nome de domínio → endereço IP)
Insira a descrição da imagem aquiInsira a descrição da imagem aquiInsira a descrição da imagem aqui
pesquisa reversa (IP → nome de domínio) (o seguinte é o significado e a função) 2.
Insira a descrição da imagem aqui Cache de
DNS : Se você tiver que passar por todo o processo descrito acima para cada resolução de DNS, ele consumirá largura de banda da rede e atraso de tempo, o que não é amigável para os usuários e sistemas de resolução de DNS.

Portanto, quando o servidor DNS local completa uma consulta, ele armazena em cache o nome do host obtido para o mapeamento de endereço IP localmente, acelerando assim a resolução do DNS. Na verdade, a maior parte da resolução de sua visita é feita no servidor local.

Como o mapeamento entre nomes de host e endereços IP não é permanente, o servidor DNS descartará as informações armazenadas em cache após um período de tempo, geralmente dois dias.

2. Compreender FTP: fluxo de controle e fluxo de dados, dois modos de trabalho: PASV e PORT, upload recuperável, FTP anônimo
1. Fluxo de controle e fluxo de dados:
2. Dois modos de trabalho: https: //blog.csdn. Net / ygqygq2 / artigo / detalhes / 53264916 (muito completo)
Insira a descrição da imagem aqui
(3) Retomar o upload após um ponto de interrupção https://www.cnblogs.com/duanxz/p/5127105.html
Insira a descrição da imagem aqui(4) FTP anônimo

(5) Como saber o fim da transferência FTP de um arquivo?
Conforme mencionado anteriormente, o método geral de transmissão é o método de streaming, e o final do arquivo é marcado fechando a conexão de dados, o que significa que uma nova conexão de dados deve ser estabelecida para cada transmissão de arquivo ou listagem de diretório, e quando o arquivo termina , A conexão de dados também foi desconectada.

3. HTTP: 1. Formato da mensagem: vários campos no cabeçalho da mensagem de solicitação e mensagem de resposta
https://www.cnblogs.com/biyeymyhjob/archive/2012/07/28/2612910.html (falando muito completo)
Insira a descrição da imagem aquiInsira a descrição da imagem aqui
Suplemento : O processo de handshake HTTP é na verdade o processo de handshake da comunicação confiável TCP comum (três handshake, quatro ondas), mas o HTTP é uma transmissão de texto não criptografado, por isso é inseguro e o HTTPS adiciona o protocolo SSL ao HTTP. Resolva formalmente um problema de segurança.

4. Você pode aprender sobre HTTPS: processo de handshake detalhado, algoritmo de compilação, assinatura digital, princípio e processo de certificado digital https://www.zhihu.com/question/52493697 (veja no de Liu Zhijun, muito bom)

(1) Processo de handshake HTTPS: https://blog.csdn.net/cout__waht/article/details/80859369 (compare o processo de handshake de HTTP e HTTPS, observe que HTTPS é feito na camada de transporte)
Insira a descrição da imagem aquiInsira a descrição da imagem aquiInsira a descrição da imagem aquiInsira a descrição da imagem aqui
Algoritmo abstrato: memória simples é any O comprimento do texto é alterado para um texto de comprimento fixo para facilitar o julgamento se o texto original foi modificado.
Insira a descrição da imagem aqui
Assinatura digital: a assinatura digital usa a chave privada e a chave pública do servidor para garantir que o conteúdo da transmissão esteja OK.
Insira a descrição da imagem aqui
Dos princípios e processos ----- certificado digital certificado digital é garantir que os servidores de chave pública corretos
[eu entendo] o certificado digital é equivalente a uma organização de terceiros, enviou-me para me preocupar com a chave pública do servidor foi substituído
Insira a descrição da imagem aqui
Por que a criptografia não simétrica ainda precisa da criptografia simétrica?
Resposta: Embora a criptografia assimétrica seja mais segura do que a criptografia simétrica, a eficiência da criptografia assimétrica não é tão alta quanto a da criptografia simétrica. Portanto, na solicitação HTTps,
a criptografia não empilhada é usada no início do handshake e a criptografia simétrica ainda é usado para transmitir informações posteriormente, para melhorar a eficiência.

O princípio do HASH?
https://blog.csdn.net/qq_38936579/article/details/81486670 O
método de hash comum é o método de cadeia aberta, que é o princípio da hashtable. Observe que, ao expandir a capacidade, dobre a capacidade original e exija um novo hash.
Insira a descrição da imagem aquiPor que o hashMap JDK8 muda para uma árvore vermelha e preta quando o número de nós de bucket é 8- 简 书
Agora, para melhorar a eficiência do hashmap, quando o número de nós no bucket excede 8, a lista vinculada original é convertida em vermelho -árvore negra.
Insira a descrição da imagem aquiPor que existe um estado como Time_wait?
Insira a descrição da imagem aquiInsira a descrição da imagem aquiInsira a descrição da imagem aqui
Por que o cliente tem que esperar o tempo 2MSL no estado de espera de tempo?
(MSL é o tempo mais longo para o pacote ser transmitido na rede)
Resposta:
Para garantir que o último segmento ACK enviado pelo cliente possa chegar ao servidor. Este segmento ACK pode ser perdido, de forma que o servidor no estado LAST-ACK não possa receber a confirmação. O servidor retransmitirá o segmento FIN + ACK ao longo do tempo e o cliente poderá receber o segmento FIN + ACK retransmitido dentro de 2MSL e, em seguida, o cliente retransmitirá uma confirmação e reiniciará o cronômetro. De preferência, tanto o cliente quanto o servidor entram no estado FECHADO normalmente. Se o cliente não esperar por um período de tempo no estado TIME-WAIT, mas liberar a conexão imediatamente após enviar a mensagem ACK, ele não será capaz de receber o segmento de mensagem FIN + ACK retransmitido pelo servidor, então ele irá não enviar outra mensagem de confirmação. Desta forma, o servidor não pode entrar no estado FECHADO de acordo com o procedimento normal. (Ou seja, no primeiro MSL, se o pacote ACK não puder ser entregue, o servidor enviará imediatamente outro pacote fin. Nesse momento, antes do final do segundo MSL, se o cliente receber o pacote fin, ele pode enviar um ack e Start timeewait novamente, se o pacote fin não for recebido após o segundo MSL terminar, significa que o ACK foi enviado com sucesso.)
Impedir que segmentos de solicitação de conexão inválida apareçam nesta conexão. Depois que o cliente termina de enviar o último segmento de mensagem ACK, e depois de decorrido o tempo 2MSL, todos os segmentos de mensagem gerados durante a conexão podem desaparecer da rede. Desta forma, o segmento de mensagem de solicitação de conexão antiga não aparecerá na próxima nova conexão.

O dano causado pelo tempo de espera?
1. Haverá um grande número de conexões no servidor no estado TIME_WAIT.
Insira a descrição da imagem aqui
O que é uma conexão longa e o que é uma conexão curta?
Insira a descrição da imagem aquiInsira a descrição da imagem aqui

Acho que você gosta

Origin blog.csdn.net/weixin_43337444/article/details/114435290
Recomendado
Clasificación