Resumo

  • PPPMuxCP permitia ao receptor oferecer, separadamente em cada direção, suporte a quadros PPP multiplexados. O sucesso autorizava o formato, mas não obrigava o par a transmitir nenhum quadro desse tipo.
  • O PID padrão dizia como reconstruir um identificador ausente; não demonstrava que PFF ficou em zero, que o campo foi omitido nem que houve economia.
  • A economia de enquadramento competia com espera, limite de tamanho e domínio de erro. Negociação, uso, demultiplexação, medição e resultado do aplicativo são recibos diferentes.

A proposta dividia o custo da embalagem

Pacotes pequenos podem carregar muitos bytes de enquadramento em relação ao conteúdo. Mesmo depois das compressões usuais de PPP, cada quadro isolado mantém limites, identificação e verificação. Dentro de L2TP, outra embalagem pode se repetir.

RFC 3153 colocou vários pacotes PPP como subquadros de um único quadro externo. Um delimitador curto informa se o PID aparece e quantos bytes pertencem a cada subquadro. O ganho vem de compartilhar a embalagem externa, não de comprimir o conteúdo da aplicação.

Para compartilhar, porém, é preciso ter mais de um pacote disponível. Esperar pelo próximo pode poupar bytes e atrasar o primeiro. O próprio RFC manda considerar a troca entre menor overhead e maior tempo de multiplexação e demultiplexação.

Por isso a medida começa no quadro emitido: quantidade e tamanho dos subquadros, delimitadores, campos omitidos, espera de fila, serialização e perda. Uma opção configurada não contém essas respostas.

Quem receberia fazia a oferta; quem enviaria mantinha a escolha

Durante NCP, o receptor oferece por PPPMuxCP que sabe receber o formato. Sem essa oferta, o transmissor não pode enviar um quadro multiplexado. A capacidade é negociada em cada direção; um acordo de A para B não abre B para A.

Depois do acordo, o transmissor decide. Ele pode selecionar alguns pacotes para o agregado ou não usar a opção. RFC 3153 declara que uma negociação bem-sucedida não cria obrigação de transmitir quadros multiplexados.

Logo, “ativo” é ambíguo. Pode significar oferta, Configure-Ack, política carregada ou dados 0x0059 observados. Um registro confiável liga o controle direcional a quadros posteriores no mesmo sentido e na mesma cronologia.

O PID combinado ainda precisava desaparecer do fio

PPPMuxCP sempre negocia um PID padrão oferecido pelo receptor. Se o primeiro subquadro usar esse protocolo, o transmissor pode zerar PFF e retirar o campo, economizando um ou dois bytes. Também pode mantê-lo.

Nos subquadros seguintes, PFF igual a zero reutiliza o último PID explícito. Last_PID e Last_rcvd_PID guardam esse estado; antes de uma atualização, o valor padrão inicia a interpretação.

O acordo, portanto, prova apenas uma regra comum. A economia exige análise sequencial dos PFFs e campos efetivamente presentes. Dois links com a mesma negociação podem omitir quantidades diferentes ou não omitir nada.

MRU limitava validade, não definia a melhor agregação

LXT escolhe a forma curta ou estendida de comprimento, e LEN marca a fronteira. O exemplo usa MAX_SF_LEN para admitir subquadros e impede que o conjunto exceda o MRU. Também para quando a fila acaba; uma implementação pode usar temporizador.

O texto observa que, por atraso e erros, o limite do quadro multiplexado pode ficar muito abaixo do MRU. Encher até o máximo não é recomendação automática. Um agregado maior reparte melhor o cabeçalho, mas espera mais e reúne mais pacotes sob uma única perda externa.

A decisão depende de velocidade, erro, rajadas, tamanhos, protocolos e sensibilidade do aplicativo. MAX_SF_LEN, MRU e timer precisam ser registrados separadamente.

Recuperar subquadros não autorizava reordenar ou declarar entrega

Ao receber 0x0059, o demultiplexador percorre os comprimentos, recupera o PID e entrega cada pacote à lógica PPP. Se um comprimento exceder os dados restantes, o último subquadro é descartado, embora a origem do desalinhamento possa estar antes.

Não se permite aninhar um quadro multiplexado nem incluir LCP. Pacotes isolados e agregados também devem preservar a ordem. Assim, contar saídas não basta: é preciso conservar a sequência externa, as fronteiras internas e a ordem de entrega.

Saída do demultiplexador ainda não é recebimento pela aplicação. Há outras camadas, filas e políticas depois dela.

A posição entre MP, CCP e ECP fazia parte da compatibilidade

Em Multilink PPP, PPPMux é negociado para o bundle. O transmissor multiplexa antes de MP; o cabeçalho MP fica por fora e um quadro Multilink não pode entrar como subquadro.

PPPMux ocorre depois de CCP/ECP no bundle e antes de MP e de CCP/ECP por enlace. Se uma implementação não consegue essa posição, deve rejeitar as formas por enlace correspondentes quando PPPMux está negociado.

Uma lista de recursos não prova essa ordem. O ponto de captura precisa ser conhecido, e um acordo ECP não prova que um quadro específico foi protegido.

Ausência de nova consideração de segurança não era proteção

RFC 3153 diz não acrescentar considerações além das de PPP e compressão de cabeçalhos. Isso não fornece autenticação, integridade, sigilo ou defesa contra repetição.

Comprimentos inválidos, divergência de parser e estado PID incorreto continuam relevantes. Segurança exige recibos próprios de autenticação PPP, ECP realmente ativo, integridade, rejeição e efeito posterior. Entender o formato não autentica o remetente.

A camada comum parava antes da política local

O RFC tornou comum o necessário: oferta prévia, números de protocolo, flags, comprimentos, reconstrução, ordem e composição. A decisão de agregar a fila presente permaneceu local.

Não usar a opção depois do acordo era válido; enviar antes da oferta não era. Essa distinção tornou a adoção voluntária sem tornar o formato ambíguo.

O Configure-Ack prova permissão. 0x0059 prova uso. PFF/LXT/LEN provam codificação. A saída prova reconstrução. Medidas pareadas provam bytes e tempo. O aplicativo prova o resultado.

A contribuição duradoura de RFC 3153 foi manter essas frases separadas: “posso ler” não significa “você enviou”, e “você enviou” ainda não significa “valeu a pena”.

Fontes