Por que usamos o sk_wmem_alloc no kernel do linux?

0

Estou analisando o código-fonte do kernel TCP na versão do kernel 4.9.59

Eu aprendo sobre a variável sk_wmem_queued, referindo-se à arquitetura, design e implementação TCP-IP no livro Linux.

De tcp_sendmsg () para tcp_transmit_skb () no lado do remetente e de tcp_rcv_established () para tcp_ack () no lado do receptor, observo a variação sk_wmem_queued.

Pergunta !!!!

Já temos sk_wmem_queued, porque precisamos da variável sk_wmem_alloc no kernel ??

e por que a variável sk_wmem_alloc aumenta em tcp_transmit_skb ()? não no skb_entail () provavelmente a variável sk_wmem_queued aumentou a localização?

e por que a variável sk_wmem_alloc usa atomic_read ()?

mas a variável sk_wmem_queued não usou a função atômica.

Eu não sei exatamente a diferença! mas, eu sei sk_wmem_queued que significa bytes que ainda não foram enviados (mas vinculados à fila de gravação) ou pacotes já enviados e que ainda não foram reconhecidos.

    
por bestn 27.09.2018 / 04:47

0 respostas