Annotation of 43BSDReno/contrib/isode-beta/doc/ftam/protocol.tex, revision 1.1.1.1

1.1       root        1: % run this through SLiTeX with the appropriate wrapper
                      2: 
                      3: \begin{bwslide}
                      4: \part  {THE FILE PROTOCOL}
                      5: 
                      6: \begin{nrtc}\bf
                      7: \item  ELEMENTS OF PROCEDURE
                      8: 
                      9: \item  DEFINITION AND ENCODING OF DATA UNITS
                     10: 
                     11: \item  FTAM USE OF LOWER-LAYER SERVICES
                     12: 
                     13: \item  EXAMPLES
                     14: \end{nrtc}
                     15: \end{bwslide}
                     16: 
                     17: 
                     18: \begin{bwslide}
                     19: \part* {ELEMENTS OF PROCEDURE}%%%\bf
                     20: 
                     21: \begin{nrtc}
                     22: \item  THE FILE SERVICE PROVIDER EXECUTES THE FILE PROTOCOL
                     23: 
                     24: \item  THE PROVIDER IS ACTUALLY TWO PEER ENTITIES
                     25: 
                     26: \item  ASSOCIATION CONTROL IS USED TO MANAGE THE END-TO-END ASSOCIATION
                     27:        BETWEEN FILE USERS
                     28: 
                     29: \item  PRESENTATION SERVICES ARE USED TO EXCHANGE DATA IN A
                     30:        MACHINE-INDEPENDENT FASHION
                     31: 
                     32: \item  COMMITMENT, CONCURRENCY AND RECOVERY (CCR) SERVICES CAN ALSO BE USED
                     33:        FOR THE FILE TRANSFER CLASS
                     34: 
                     35: \item  ALL DATA UNITS (FPDUs and FADUs) ARE EXPRESSED IN TERMS OF
                     36:        ABSTRACT SYNTAX NOTATION ONE (ASN.1)
                     37: \end{nrtc}
                     38: \end{bwslide}
                     39: 
                     40: 
                     41: \begin{bwslide}
                     42: \ctitle        {FILE SERVICE REQUESTS}
                     43: 
                     44: \begin{nrtc}
                     45: \item  THE VALIDITY OF THE REQUEST IS VERIFIED
                     46:     \begin{nrtc}
                     47:     \item      i.e., CHECK NEGOTIATED FUNCTIONAL UNITS, INNER-MOST REGIME,
                     48:                INTERNAL STATE, and so on
                     49:     \end{nrtc}
                     50: 
                     51: \item  THE PARAMETERS OF THE REQUEST ARE ENCODED IN A
                     52:        FILE PROTOCOL DATA UNIT (FPDU)
                     53: 
                     54: \item  THE FPDU IS GIVEN TO THE PRESENTATION PROVIDER FOR DELIVERY
                     55:        TO THE REMOTE SYSTEM
                     56: 
                     57: \item  THE PROVIDER UPDATES ITS INTERNAL STATE
                     58: \end{nrtc}
                     59: \end{bwslide}
                     60: 
                     61: 
                     62: \begin{bwslide}
                     63: \ctitle        {ON RECEIPT OF A FILE PROTOCOL DATA UNIT}
                     64: 
                     65: \begin{nrtc}
                     66: \item  THE VALIDITY OF THE FPDU IS VERIFIED
                     67:     \begin{nrtc}
                     68:     \item      i.e., CHECK NEGOTIATED FUNCTIONAL UNITS, INNER-MOST REGIME,
                     69:                INTERNAL STATE, and so on
                     70:     \end{nrtc}
                     71: 
                     72: \item  THE PARAMETERS OF THE FPDU ARE ENCODED IN A SERVICE .INDICATION
                     73:        OR .CONFIRMATION EVENT
                     74: 
                     75: \item  THE EVENT IS GIVEN TO THE FILE SERVICE USER
                     76: 
                     77: \item  THE PROVIDER UPDATES ITS INTERNAL STATE
                     78: 
                     79: \item  FADUs (DETERMINED BY PRESENTATION CONTEXT) ARE GIVEN DIRECTLY TO THE
                     80:        USER
                     81: \end{nrtc}
                     82: \end{bwslide}
                     83: 
                     84: 
                     85: \begin{bwslide}
                     86: \part* {DEFINITION AND ENCODING OF DATA UNITS}\bf
                     87: 
                     88: \begin{nrtc}
                     89: \item  TWO KINDS OF DATA UNITS ARE EXCHANGED IN THE FILE SERVICE
                     90: 
                     91: \item  FILE PROTOCOL DATA UNITS (FPDUs) ARE EXCHANGED WITHIN THE
                     92:        FILE SERVICE PROVIDER
                     93: 
                     94: \item  FILE ACCESS DATA UNITS (FADUs) ARE EXCHANGED BY THE USERS OF THE
                     95:        FILE SERVICE
                     96: \end{nrtc}
                     97: \end{bwslide}
                     98: 
                     99: 
                    100: \begin{bwslide}
                    101: \ctitle        {ABSTRACT SYNTAX NOTATION ONE (ASN.1)}
                    102: 
                    103: \begin{nrtc}
                    104: \item  ABSTRACT SYNTAX NOTATION ONE (ASN.1) IS USED TO DESCRIBE THE STRUCTURE
                    105:        AND ENCODING OF DATA UNITS
                    106: 
                    107: \item  ASN.1 IS A DATA STRUCTURE DESCRIPTION LANGUAGE AND AN ENCODING
                    108:        SPECIFICATION
                    109:     \begin{nrtc}
                    110:     \item      IT IS USED TO DESCRIBE DATA STRUCTURES INDEPENDENT OF A
                    111:                GIVEN MACHINE'S INTERNAL REPRESENTATION
                    112: 
                    113:     \item      IT ALSO DEFINES HOW TO UNIVERSALLY ENCODE THOSE STRUCTURES
                    114:                AS THEY ARE TRANSMITTED FROM ONE MACHINE TO ANOTHER
                    115:     \end{nrtc}
                    116: \end{nrtc}
                    117: \end{bwslide}
                    118: 
                    119: 
                    120: \begin{bwslide}
                    121: \part* {FTAM USE OF LOWER-LAYER SERVICES}\bf
                    122: 
                    123: \begin{nrtc}
                    124: \item  ASSOCIATION CONTROL
                    125: 
                    126: \item  PRESENTATION SERVICES
                    127: 
                    128: \item  SESSION SERVICES
                    129: 
                    130: \item  COMMITMENT, CONCURRENCY AND RECOVERY
                    131: \end{nrtc}
                    132: \end{bwslide}
                    133: 
                    134: 
                    135: \begin{bwslide}
                    136: \ctitle        {FTAM USE OF LOWER-LAYER SERVICES (cont.)}
                    137: 
                    138: \vskip.5in
                    139: \diagram[p]{figure7}
                    140: \end{bwslide}
                    141: 
                    142: 
                    143: \begin{bwslide}
                    144: \ctitle        {ASSOCIATION CONTROL}
                    145: 
                    146: \begin{nrtc}
                    147: \item  ASSOCIATION CONTROL IS USED BY
                    148:     \begin{nrtc}
                    149:     \item      FTAM REGIME ESTABLISHMENT SERVICE: A-ASSOCIATE
                    150: 
                    151:     \item      FTAM REGIME TERMINATION SERVICE: A-RELEASE
                    152: 
                    153:     \item      FTAM REGIME ABORT SERVICE: A-(U-)ABORT, A-P-ABORT
                    154:     \end{nrtc}
                    155: 
                    156: \item  NOTE THAT ASSOCIATION CONTROL MAPS DIRECTLY ONTO PRESENTATION
                    157:        SERVICES
                    158:     \begin{nrtc}
                    159:     \item      A PART OF THE APPLICATION LAYER
                    160:                (SO-CALLED COMMON APPLICATION SERVICE ENTITY)
                    161:     \end{nrtc}
                    162: \end{nrtc}
                    163: \end{bwslide}
                    164: 
                    165: 
                    166: \begin{bwslide}
                    167: \ctitle        {ADDRESSES AND APPLICATION ENTITY TITLES}
                    168: 
                    169: \begin{nrtc}
                    170: \item  INITIATOR PROVIDES
                    171:     \begin{nrtc}
                    172:     \item      DESCRIPTION OF FILE SERVICE DESIRED,
                    173:                e.g., ``gremlin-filestore''
                    174:     \end{nrtc}
                    175:         
                    176: \item  AND (SOMEHOW) PERFORMS TWO MAPPINGS
                    177:     \begin{nrtc}
                    178:     \item      DESCRIPTOR TO APPLICATION ENTITY TITLE PROVIDING SERVICE:
                    179:                CURRENTLY AN OBJECT IDENTIFIER
                    180: 
                    181:     \item      AET TO PRESENTATION ADDRESS:
                    182:                CURRENTLY P-SELECTOR, S-SELECTOR, T-SELECTOR, AND A LIST OF
                    183:                NETWORK ADDRESSES
                    184:     \end{nrtc}
                    185: 
                    186: \item  IN THE FUTURE, DIRECTORY SERVICES ARE USED
                    187: \end{nrtc}
                    188: \end{bwslide}
                    189: 
                    190: 
                    191: \begin{bwslide}
                    192: \ctitle        {PRESENTATION SERVICES}
                    193: 
                    194: \begin{nrtc}
                    195: \item  PRESENTATION SERVICES ARE USED BY THE REMAINING FTAM REGIMES: P-DATA
                    196: 
                    197: \item  FURTHER
                    198:     \begin{nrtc}
                    199:     \item      THE FILE OPEN SERVICE MAY REQUIRE: P-ALTER-CONTEXT
                    200: 
                    201:     \item      THE CANCEL DATA SERVICE REQUIRES: P-RESYNCHRONIZE
                    202: 
                    203:     \item      THE CHECKPOINT SERVICE REQUIRES: P-SYNC-MINOR
                    204: 
                    205:     \item      THE RESTART SERVICE REQUIRES: P-ALTER-CONTEXT
                    206:     \end{nrtc}
                    207: 
                    208: \item  IN ADDITION, ASSOCIATION CONTROL REQUIRES:
                    209:        P-CONNECT, P-RELEASE, P-U-ABORT, P-P-ABORT
                    210: \end{nrtc}
                    211: \end{bwslide}
                    212: 
                    213: 
                    214: \begin{bwslide}
                    215: \ctitle        {PRESENTATION CONTEXTS}
                    216: 
                    217: \begin{nrtc}
                    218: \item  ASSOCIATION CONTROL PCI (PRESENTATION CONTEXT INFORMATION)
                    219: 
                    220: \item  FTAM PCI
                    221: 
                    222: \item  IF THE PRESENTATION CONTEXT MANAGEMENT SERVICE IS UNAVAILABLE, THEN
                    223:     \begin{nrtc}
                    224:     \item      FTAM REQUESTS A CONTEXT FOR EACH DOCUMENT TYPE THAT MIGHT BE
                    225:                EXCHANGED
                    226:     \end{nrtc}
                    227: 
                    228: \item  FTAM PROVIDES BOTH THE ABSTRACT SYNTAX AND TRANSFER SYNTAX
                    229:        OF EACH CONTEXT
                    230: \end{nrtc}
                    231: \end{bwslide}
                    232: 
                    233: 
                    234: \begin{bwslide}
                    235: \ctitle        {COMMITMENT, CONCURRENCY AND RECOVERY}
                    236: 
                    237: \begin{nrtc}
                    238: \item  IF THE FILE TRANSFER CLASS IS SELECTED, AS A USER OPTION,
                    239:        THE ISO COMMITMENT, CONCURENCY, AND RECOVERY PROTOCOL CAN BE USED
                    240: 
                    241: \item  NEEDED FOR ATOMIC TRANSFER OF FILES (BUT NOT REALLY NEEDED FOR
                    242:        RESUMPTION OF FILE TRANSFER)
                    243: 
                    244: \item  PERSONAL OPINION
                    245:     \begin{nrtc}
                    246:     \item      A TREMENDOUS ``OVERKILL'' FOR ATOMIC FILE TRANSFER
                    247: 
                    248:     \item      NOT REALLY WELL-DEFINED AT THIS POINT
                    249:     \end{nrtc}
                    250: \end{nrtc}
                    251: \end{bwslide}
                    252: 
                    253: 
                    254: \begin{bwslide}
                    255: \ctitle        {SESSION SERVICES}
                    256: 
                    257: \begin{nrtc}
                    258: \item  THE FILE PROVIDER DOES NOT USE SESSION SERVICES DIRECTLY
                    259: 
                    260: \item  HOWEVER MOST PRESENTATION SERVICES MAP DIRECTLY ONTO SESSION SERVICES
                    261: 
                    262: \item  HENCE: AT LEAST S-CONNECT, S-DATA, S-RELEASE, S-U-ABORT, AND S-P-ABORT
                    263:        ARE REQUIRED
                    264: 
                    265: \item  AND OPTIONALLY: S-TYPED-DATA, S-RESYNCHRONIZE and S-SYNC-MINOR ARE
                    266:        ALSO REQUIRED
                    267: \end{nrtc}
                    268: \end{bwslide}
                    269: 
                    270: 
                    271: \begin{bwslide}
                    272: \part* {EXAMPLES}\small
                    273: 
                    274: \begin{verbatim}
                    275: wrote F-INITIALIZE-request, context 1
                    276: {
                    277:    {
                    278:       service-class transfer-and-management-class,
                    279:       functional-units { read, write, limited-file-management,
                    280:                          enhanced-file-management },
                    281:       attribute-groups { storage, security },
                    282:       contents-type-list {
                    283:          { document-types { 1.0.8571.6.3, 1.17.3.6.1, 1.17.3.6.8 } }
                    284:       },
                    285:       initiator-identity "ANON",
                    286:       filestore-password { "mrose" }
                    287:    }
                    288: }
                    289: \end{verbatim}
                    290: \end{bwslide}
                    291: 
                    292: 
                    293: \begin{bwslide}\small
                    294: \begin{verbatim}
                    295: wrote AARQapdu, context 9
                    296: {
                    297:    protocolVersion { version1 },
                    298:    calledAEtitle 1.17.4.3.1,
                    299:    applicationContextName 1.0.8571.2.1,
                    300:    userInformation {
                    301:       data-value-identifier { indirect-reference 1 },
                    302:       encodings {
                    303:          single-ASN1-type {
                    304:             [3] '03'H,
                    305:             [4] '0136'H,
                    306:             [5] '06c0'H,
                    307:             [7] {
                    308:                [0] {
                    309:                   [APPLICATION 7] '28c27b0603'H,
                    310:                   [APPLICATION 7] '39030601'H,
                    311:                   [APPLICATION 7] '39030608'H
                    312:                }
                    313:             },
                    314:             [APPLICATION 4] "ANON",
                    315:             [APPLICATION 6] { "mrose" }
                    316:          }
                    317:       }
                    318:    }
                    319: }
                    320: \end{verbatim}
                    321: \end{bwslide}
                    322: 
                    323: 
                    324: \begin{bwslide}\small
                    325: \begin{verbatim}
                    326: wrote CPppdu
                    327: {
                    328:    { nonx410mode },
                    329:    [2] {
                    330:       [2] TRUE,
                    331:       [3] {
                    332:          { 1, 1.0.8571.1.1, { 1.0.8825 } },
                    333:          { 3, 1.0.8571.2.4, { 1.0.8571.3.4 } },
                    334:          { 5, 1.17.3.2.0, { 1.17.3.3.0 } },
                    335:          { 7, 1.17.3.2.2, { 1.17.3.3.0 } },
                    336:          { 9, 1.0.8650.2.1, { 1.0.8825 } }
                    337:       },
                    338:       [4] { 1.0.8571.1.1, 1.0.8825 },
                    339:       [5] { version-1 },
                    340:       {
                    341:          {
                    342:             {
                    343:                data-value-identifier { indirect-reference 9 },
                    344:                encodings {
                    345:                   single-ASN1-type {
                    346:                      [0] '0780'H,
                    347:                      [1] { 1.17.4.3.1 },
                    348:                      [3] { 1.0.8571.2.1 },
                    349: \end{verbatim}
                    350: \end{bwslide}
                    351: 
                    352: 
                    353: \begin{bwslide}\small
                    354: \begin{verbatim}
                    355:                      [4] {
                    356:                         [UNIVERSAL 8] {
                    357:                            1,
                    358:                            [0] {
                    359:                               [0] {
                    360:                                  [3] '03'H,
                    361:                                  [4] '0136'H,
                    362:                                  [5] '06c0'H,
                    363:                                  [7] {
                    364:                                     [0] {
                    365:                                        [APPLICATION 7] '28c27b0603'H,
                    366:                                        [APPLICATION 7] '39030601'H,
                    367:                                        [APPLICATION 7] '39030608'H
                    368:                                     }
                    369:                                  },
                    370:                                  [APPLICATION 4] "ANON",
                    371:                                  [APPLICATION 6] { "mrose" }
                    372:                               }
                    373:                            }
                    374:                         }
                    375:                      }
                    376:                   }
                    377:                }
                    378:             }
                    379:          }
                    380:       }
                    381:    }
                    382: }
                    383: \end{verbatim}
                    384: \end{bwslide}
                    385: 
                    386: 
                    387: \begin{bwslide}\small
                    388: \begin{verbatim}
                    389: ---> (: dump of SPDU 0xb8404, errno=0xffffffff mask=0x409f
                    390: ---> LI/ 281
                    391: ---> CODE/ CONNECT
                    392: ---> REFERENCE/ <USER "gremlin", COMMON  "870601045854Z", ADDITIONAL 0>
                    393: ---> OPTIONS/ 0x0<>
                    394: ---> TSDU/ INITIATOR: 65528, RESPONDER: 65528
                    395: ---> VERSION/ 0x1
                    396: ---> ISN/ 1
                    397: ---> REQUIREMENTS/ 0x22<DUPLEX,RESYNC>
                    398: ---> USER DATA/ 225 bytes
                    399: ---> )
                    400: \end{verbatim}
                    401: \end{bwslide}
                    402: 
                    403: 
                    404: \begin{bwslide}
                    405: \part* {SUMMARY}\bf
                    406: 
                    407: \begin{nrtc}
                    408: \item  THE FILE SERVICE PROVIDER IS A ``STATE MACHINE'' COMPOSED OF TWO
                    409:        PEERS EXECUTING THE FILE PROTOCOL
                    410: 
                    411: \item  IN ADDITION TO RESOURCES ON THEIR HOST SYSTEMS,
                    412:        THEY USE THE ASSOCIATION CONTROL AND PRESENTATION SERVICES
                    413: 
                    414: \item  ASN.1 IS USED TO DEFINE AND ENCODE THE DATA UNITS WHICH ARE EXCHANGED
                    415: \end{nrtc}
                    416: \end{bwslide}

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.