Serviço de sessão Liane Tarouco Funções da camada de sessão • Intercâmbio de Dados - estabelecer conexão com outro usuário, trocar dados e fechar a conexão; • Gerenciamento de Diálogos - negociar a utilização de tokens para troca de dados, sincronização e liberação da conexão de sessão; • Sincronização - definir pontos de sincronização em diálogos possibilitando interrupções e retornos (caso ocorram erros, o diálogo deve ser retomado a partir do ponto de sicronização); Funções da camada de sessão • Gerenciamento de Atividades - permite que mensagens sejam divididas pelo usuário em unidades lógicas menores independentes (atividades); • Relatório de Exceções - caso ocorram problemas, estes podem ser relatados ao parceiro de um determinado usuário. Primitivas do serviço de sessão • • • • • Intercâmbio de Dados Gerenciamento de Diálogos Sincronização Gerenciamento de Atividades Relatório de Exceções Intercâmbio de Dados Primitiva S-CONNECT S-RELEASE S-U-ABORT S-P-ABORT S-DATA S-EXPEDITED-DATA S-TYPED-DATA S-CAPABILITY-DATA Estabelece uma sessão Encerra uma sessão Liberação abrupta pelo usuário Liberação abrupta pelo provedor Transferência de dados normal Transferência de dados expedidos Transferência de dados fora de faixa Transferência de dados de informação de controle Gerenciamento de Diálogos Primitiva S-TOKEN-GIVE S-TOKEN-PLEASE S-CONTROL-GIVE Entregar uma ficha (token) ao parceiro Solicitar uma ficha do parceiro Entregar todas as fichas ao parceiro Sincronização Primitiva S-SYNC-MAJOR Insere um ponto de sincronização principal S-SYNC-MINOR Insere um ponto de sincronização secundário S-RESYNCHRONIZE Retorna a um ponto de sincronização anterior Gerenciamento de Atividades Primitiva S-ACTIVITY-BEGIN S-ACTIVITY-END S-ACTIVITY-DISCARD S-ACTIVITY-INTERRUPT S-ACTIVITY-RESUME Inicia uma atividade Finaliza uma atividade Abandona uma atividade Suspende uma ativivdade Reinicia uma atividade suspensa Relatório de Exceções Primitiva S-U-EXCEPTION-REPORT Relatório de uma exceção do usuário S-P-EXCEPTION-REPORT Relatório de uma exceção do provedor S-DATA-UNITY Transferência de dados sem conexão SPDU - Session Protocol Data Unit CONNECT OVERFLOW ACCEPT CONNECT DATA OVERFLOW ACCEPT REFUSE FINISH DISCONNECT NOT FINISHED ABORT ABORT ACCEPT DATA TRANSFER EXPEDITED TYPED DATA CAPABILITY DATA CAPABILITY DATA ACK SPDU - Session Protocol Data Unit GIVE TOKENS PLEASE TOKENS GIVE TOKENS CONFIRM GIVE TOKENS ACK MINOR SYNC POINT MINOR SYNC ACK MAJOR SYNC POINT MAJOR SYNC ACK RESYNCHRONIZE RESYNCHRONIZE ACK PREPARE EXCEPTION REPORT EXCEPTION ACTIVITY START ACTIVITY RESUME ACTIVITY INTERRUPT ACTIVITY INTERRUPT ACK ACTIVITY DISCARD ACTIVITY DISCARD ACK ACTIVITY END ACTIVITY END ACK Formato dos SPDUs • IS (Identificador de Sessão) : um byte que indica o tipo da SPDU • IC (Identificador de Comprimento) : um valor entre 0 e 254, informando quantos bytes de parâmetros vêm a seguir. Se houver mais de 254 bytes de parâmetros, IC utiliza o valor 255 e é seguido por dois bytes adicionais, determinando o comprimento ( até 65.535 bytes). • Após os parâmetros vêm os dados do usuário. Formatos para codificação de parâmetros • IP (Identificador de Parâmetro) de um byte indicando que parâmetro se segue • IC de um byte informando o tamanho do parâmetro • VP (Valor do Parâmetro) de comprimento variável contendo o valor numérico do parâmetro. Formatos dos parâmetros do SPDU IGP (Identificador de Grupo de Parâmetros) • O campo IS (Identificador de Sessão) consiste de um byte que indica o tipo da UDPS. • O campo IC (Identificador de Comprimento) é em geral um valor entre 0 e 254, informando quantos bytes de parâmetros vêm a seguir. • Se houver mais de 254 bytes de parâmetros, IC utiliza o valor 255 e é seguido por dois bytes adicionais, determinando o comprimento ( até 65.535 bytes). Após os parâmetros vêm os dados do usuário. Unidades funcionais • • • • • • • Kernel Negotiated release Half-duplex Duplex Expedited data Typed data Capability data exchange Unidades funcionas • • • • • Minor synchronize Major synchronize Resynchronize Exceptions Activity management Kernel CN OA CDO AC RF FN DN AB AA DT CONNECT OVERFLOW ACCEPT CONNECT DATA OVERFLOW ACCEPT REFUSE FINISH DISCONNECT ABORT ABORT ACCEPT DATA TRANSFER Negotiated release NF NOT FINISHED GT GIVE TOKENS PT PLEASE TOKENS Half-duplex GT GIVE TOKENS PT PLEASE TOKENS Expedited data EX EXPEDITED DATA Typed data TD TYPED DATA Capability data exchange CD CAPABILITY DATA CDA CAPABILITY DATA ACK Minor synchronize MIP MINOR SYNC POINT MIA MINOR SYNC ACK GT GIVE TOKENS PT PLEASE TOKENS Major synchronize MAP MAJOR SYNC POINT MAA MAJOR SYNC ACK PR PREPARE GT GIVE TOKENS PT PLEASE TOKENS Resynchronize RS RESYNCHRONIZE RA RESYNCHRONIZE ACK PR PREPARE Exceptions ER EXCEPTION REPORT ED EXCEPTION DATA Activity Management AS AR AI AIA AD ADA AE AEA PR GT PT GTC GTA ACTIVITY START ACTIVITY RESUME ACTIVITY INTERRUPT ACTIVITY INTERRUPT ACK ACTIVITY DISCARD ACTIVITY DISCARD ACK ACTIVITY END ACTIVITY END ACK PREPARE GIVE TOKENS PLEASE TOKENS GIVE TOKENS CONFIRM GIVE TOKENS ACK