Condividi tramite


Concatenamento in ingresso

La divisione dei dati dell'applicazione in Messaggi dati e il controllo della concatenazione in ingresso sono la responsabilità dell'applicazione.

La dimensione dell'unità richiesta di invio secondaria per la sessione è un parametro nell'host bind ed è disponibile nel blocco di controllo informazioni di associazione (BICB) nel messaggio Open(PLU) OK Conferma. L'applicazione deve assicurarsi che ogni messaggio dati in ingresso corrisponda a una singola unità di richiesta. Non contiene più dati rispetto alle dimensioni massime dell'unità richiesta specificata in BICB.

L'applicazione deve usare i flag dell'applicazione dell'indicatore della catena di inizio (BCI) e i flag dell'indicatore della catena di fine (ECI) nelle intestazioni del messaggio di dati per controllare la concatenazione. Per altre informazioni, vedere Flag dell'applicazione. La catena è l'unità di ripristino e, se si verificano errori recuperabili nella catena, l'applicazione deve assumere la responsabilità del ripristino. Per altre informazioni, vedere Ripristino.

Una catena in ingresso può terminare nei modi seguenti:

  • La catena completa viene inviata senza errori. Tutti i messaggi di dati nella catena sono stati passati all'host. Se la sessione consente al secondario di inviare catene di risposta definite e l'applicazione imposta il campo ACKRQD nell'ultimo messaggio Dati della catena, l'applicazione riceve un riconoscimento stato (Ack) dal nodo locale quando l'host fornisce una risposta.

  • Il nodo locale rileva un errore critico nel formato di un messaggio di dati dall'applicazione o nello stato della sessione. Il nodo locale rifiuta il messaggio Dati con un riconoscimento stato (Nack-2) contenente un codice di errore e chiude la connessione PLU. Si noti che il nodo locale genererà una richiesta CANCEL in ingresso prima di chiudere la connessione PLU. Il nodo locale invierà una richiesta TERM-SELF all'host per elicare un UNBIND.

  • L'host invia una risposta negativa a una richiesta nella catena. Il nodo locale invia un messaggio Status-Acknowledge(Nack-1) all'applicazione con i codici di senso e il numero di sequenza dalla risposta negativa. Se l'host rifiuta una richiesta che non contiene il flag dell'applicazione ECI e l'applicazione non specifica l'opzione di annullamento dell'applicazione nel CICB PLU, il nodo locale genera anche una richiesta CANCEL in ingresso. Quando l'applicazione specifica l'annullamento dell'applicazione, deve inviare EC o Status-Control(CANCEL) per terminare la catena. Le catene in ingresso successive vengono rifiutate con un riconoscimento non critico(Nack-2), il codice di senso 0x2002 o 0x2004 (concatenamento o direzione). Quando l'applicazione riceve il messaggio Status-Acknowledge(Nack-1), deve interrompere l'invio di dati dopo questa catena per sessioni flip-flop half-duplex perché la direzione è passata all'host. Per altre informazioni, vedere Direzione.

  • L'applicazione annulla la catena durante l'invio inviando un messaggio Status-Control(CANCEL) al nodo locale. Il nodo locale invia una richiesta CANCEL all'host e invia un riconoscimento Status-Control(CANCEL) all'applicazione per ricevere una risposta positiva dall'host. Risposte dall'host alle richieste inviate prima dell'annullamento genereranno messaggi di riconoscimento dello stato appropriati all'applicazione se i messaggi di dati originali avevano il set di campi ACKRQD .

  • L'applicazione chiude la connessione PLU durante l'invio della catena. Il nodo locale invia una risposta Close(PLU) all'applicazione. Le risposte dall'host alle richieste inviate prima del messaggio Close(PLU) non genereranno messaggi di riconoscimento dello stato all'applicazione. Si noti che il nodo locale genererà anche una richiesta CANCEL in ingresso e una richiesta TERM-SELF per elizionare un UNBIND.

    Se il nodo locale rileva un errore non critico nel formato di un messaggio di dati dall'applicazione o lo stato della sessione, non chiude la connessione PLU. Rifiuta invece il messaggio Dati in errore con un riconoscimento stato(Nack-2) contenente un codice di errore appropriato. Nessun dato viene inviato all'host.

    Se una catena in ingresso termina con un errore, quando la sessione usa protocolli half-duplex, l'applicazione deve presupporre uno stato di ricezione. Per altre informazioni, vedere Ripristino.

    Le sei cifre seguenti illustrano i protocolli di concatenamento in ingresso tra il nodo locale e l'applicazione e il modo in cui tali protocolli si riferiscono ai protocolli SNA sottostanti.

    Nella prima figura viene inviata una catena in ingresso completa senza errori e accettata dall'host. Si noti che dopo la ricezione di Status-Sign(Ack) l'applicazione rimette la direzione all'host.

    L'immagine che mostra una catena in ingresso viene inviata senza errori e accettata dall'host.
    La catena in ingresso viene inviata senza errori e accettata dall'host

    Nella figura seguente il nodo locale rileva un errore critico nel formato del secondo messaggio di dati nella catena (ACKRQD senza il flag dell'applicazione ECI), invia un riconoscimento stato(Nack-2) all'applicazione con il codice di errore appropriato e chiude la connessione PLU. Si noti che il nodo locale genera solo l'annullamento se il profilo di gestione delle funzioni della sessione supporta CANCEL.

    Immagine che mostra come un nodo locale rileva l'errore, invia un messaggio di stato e chiude la connessione PLU.
    Il nodo locale rileva l'errore, invia un messaggio di stato e chiude la connessione PLU

    Nella figura seguente viene inviata una catena in ingresso completa senza errori, ma viene rifiutata dall'host. Dopo la risposta negativa, l'applicazione deve immettere lo stato di ricezione, in sospeso il ripristino degli errori. Per altre informazioni, vedere Ripristino.

    Immagine che mostra come viene inviata una catena in ingresso senza errori, ma viene rifiutata dall'host.
    La catena in ingresso viene inviata senza errore ma viene rifiutata dall'host

    Nella figura seguente l'applicazione annulla la catena inviando Status-Control(CANCEL). Si noti che l'applicazione ha ancora la direzione e può avviare una nuova catena.

    Immagine che mostra come un'applicazione annulla la catena con un controllo stato(CANCEL).
    L'applicazione annulla la catena con un controllo stato(CANCEL)

    Nella figura seguente l'applicazione chiude la sessione PLU durante l'invio della catena. Il nodo locale genera solo l'annullamento se il profilo FM della sessione supporta CANCEL.

    Immagine che mostra come un'applicazione chiude la connessione PLU durante l'invio della catena.
    L'applicazione chiude la connessione PLU durante l'invio della catena

    Nella figura seguente il nodo locale rileva un errore non critico nel formato del secondo messaggio Dati nella catena e invia un riconoscimento stato (Nack-2) all'applicazione con il codice di errore appropriato.

    Immagine che mostra come un nodo locale rileva un errore non critico e invia un riconoscimento dello stato(Nack-2).
    Il nodo locale rileva un errore non critico e invia un riconoscimento dello stato(Nack-2)

Vedere anche

Apertura della connessione PLU
Sessione PLU
Concatenamento in uscita
Consegna segmenti
Parentesi
Direzione
Spaziatura e suddivisione in blocchi
Conferma e rifiuto dei dati]
Arresto e disattivazione
Ripristino
Terminazione avviata dall'applicazione
LUSTATs]
Dati di monitoraggio del tempo di risposta