Annotation of 43BSDReno/contrib/isode-beta/doc/ftam/service.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 SERVICE}
                      5: 
                      6: \begin{nrtc}\bf
                      7: \item  MODEL OF OPERATION
                      8: 
                      9: \item  REGIMES AND SERVICES
                     10: \end{nrtc}
                     11: \end{bwslide}
                     12: 
                     13: 
                     14: \begin{bwslide}
                     15: \part* {MODEL OF OPERATION}\bf
                     16: 
                     17: \begin{nrtc}
                     18: \item  FILE SERVICE INITIATOR AND RESPONDER
                     19: 
                     20: \item  REGIMES
                     21: 
                     22: \item  SERVICE PRIMITIVES AND COMMON PARAMETERS
                     23: \end{nrtc}
                     24: \end{bwslide}
                     25: 
                     26: 
                     27: \begin{bwslide}
                     28: \ctitle        {FILE SERVICE INITIATOR AND RESPONDER}
                     29: 
                     30: \begin{nrtc}
                     31: \item  A CLIENT-SERVER MODEL IS USED
                     32:     \begin{nrtc}
                     33:     \item      THE PROTOCOL EXCHANGE IS ASYMMETRIC
                     34: 
                     35:     \item      NOTE: CLIENT COULD BE ANOTHER FILESTORE
                     36:     \end{nrtc}
                     37: 
                     38: \item  AN INITIATOR IS A USER ENTITY WHICH REQUESTS THE FILE SERVICE
                     39: 
                     40: \item  A RESPONDER IS A USER ENTITY WHICH IMPLEMENTS THE VIRTUAL FILESTORE
                     41: 
                     42: \item  THIS PAIRING OF USERS IS TERMED AN FTAM ACTIVITY
                     43: 
                     44: \item  THE PROVIDER IS THE FILE SERVICE ABSTRACTION,
                     45:        IT IMPLEMENTS THE FILE SERVICE BY USING THE FILE PROTOCOL
                     46: \end{nrtc}
                     47: \end{bwslide}
                     48: 
                     49: 
                     50: \begin{bwslide}
                     51: \ctitle        {REGIMES}
                     52: 
                     53: \begin{nrtc}
                     54: \item  THE ASSOCIATION BETWEEN THE TWO ENTITIES PROGRESS THROUGH A NUMBER
                     55:        OF STAGES, TERMED ``REGIMES''
                     56: 
                     57: \item  A REGIME DETERMINES WHICH COMPONENTS OF THE FILE SERVICE MAY BE
                     58:        REQUESTED
                     59: 
                     60: \item  REGIMES NEST IN AN ORDERLY FASHION
                     61: \end{nrtc}
                     62: \end{bwslide}
                     63: 
                     64: 
                     65: \begin{note}\em
                     66: following are a lot of standard osi modeling mechanisms$\ldots$
                     67: \end{note}
                     68: 
                     69: 
                     70: \begin{bwslide}
                     71: \ctitle        {SERVICE PRIMITIVES AND COMMON PARAMETERS}
                     72: 
                     73: \begin{nrtc}
                     74: \item  THE INITIATOR AND RESPONDER COMMUNICATE VIA SERVICE PRIMITIVES
                     75: 
                     76: \item  A PRIMITIVE IS AN ABSTRACTION (NOT AN INTERFACE)
                     77: 
                     78: \item  IN GENERAL, THERE ARE THREE KINDS OF SERVICES
                     79:     \begin{nrtc}
                     80:     \item      CONFIRMED, IN WHICH A REQUEST ALWAYS RESULTS IN A RESPONSE
                     81: 
                     82:     \item      UNCONFIRMED, IN WHICH NO RESPONSE IS RETURNED
                     83: 
                     84:     \item      PROVIDER-INITIATED,
                     85:                IN WHICH THE SERVICE PROVIDER INDICATES SOME ABNORMAL
                     86:                CONDITION
                     87:     \end{nrtc}
                     88: 
                     89: \item  CONFIRMATION IS UNRELATED TO RELIABILITY
                     90: 
                     91: \item  SERVICE PRIMITIVES, LIKE PROCEDURE CALLS, HAVE TYPED PARAMETERS
                     92: \end{nrtc}
                     93: \end{bwslide}
                     94: 
                     95: 
                     96: 
                     97: \begin{bwslide}
                     98: \ctitle        {SERVICE PRIMITIVES}
                     99: 
                    100: \begin{nrtc}
                    101: \item  A SERVICE CONSISTS OF ONE OR MORE PRIMITIVES
                    102: 
                    103: \item  EACH PRIMITIVE IS PREFIXED WITH ``F-''
                    104: 
                    105: \item  A CONFIRMED SERVICE HAS FOUR PRIMITIVES
                    106:     \begin{nrtc}
                    107:     \item      .REQUEST, .INDICATION, .RESPONSE, and .CONFIRMATION
                    108:     \end{nrtc}
                    109: 
                    110: \item  AN UNCONFIRMED SERVICE HAS TWO PRIMITIVES:
                    111:     \begin{nrtc}
                    112:     \item      .REQUEST,  and .INDICATION
                    113:     \end{nrtc}
                    114: 
                    115: \item  A PROVIDER-INITIATED SERVICE HAS ONE PRIMITIVE:
                    116:     \begin{nrtc}
                    117:     \item      .INDICATION
                    118:     \end{nrtc}
                    119: \end{nrtc}
                    120: \end{bwslide}
                    121: 
                    122: 
                    123: \begin{bwslide}
                    124: \ctitle        {EXAMPLE: CONFIRMED SERVICE}
                    125: 
                    126: \vskip.5in
                    127: \diagram[p]{figure5}
                    128: \end{bwslide}
                    129: 
                    130: 
                    131: \begin{bwslide}
                    132: \ctitle        {COMMON PARAMETERS TO SERVICE PRIMITIVES}
                    133: 
                    134: \begin{nrtc}
                    135: \item  STATE RESULT: INDICATES IF A REGIME CHANGE IS SUCCESSFUL
                    136: 
                    137: \item  ACTION RESULT: INDICATES IF A SERVICE PRIMITIVE IS SUCCESSFUL
                    138: 
                    139: \item  DIAGNOSTICS: PROVIDES DETAILED INFORMATION ON THE FAILURE
                    140:        (IF ANY) OF A CONFIRMED SERVICE
                    141: 
                    142: \item  CHARGING: A RESOURCE, CHARGING UNIT, and CHARGE VALUE\\
                    143:        (INTERPRETATION IS UNDEFINED BY FTAM)
                    144: 
                    145: \item  IDENTITY OF FILE ACCESS DATA UNIT (FADU)
                    146: 
                    147: \item  PLUS: FILE ATTRIBUTES, REQUESTED ACCESS, etc.
                    148: \end{nrtc}
                    149: \end{bwslide}
                    150: 
                    151: 
                    152: 
                    153: \begin{bwslide}
                    154: \part* {REGIMES AND SERVICES}\bf
                    155: 
                    156: \begin{nrtc}
                    157: \item  AS NOTED EARLIER,
                    158:        THE INNER-MOST REGIME DETERMINES WHICH SERVICE PRIMITIVES
                    159:        (AND HENCE SERVICES) ARE ACCESSIBLE
                    160: 
                    161: \item  THERE ARE FOUR REGIMES
                    162:     \begin{nrtc}
                    163:     \item      APPLICATION ASSOCIATION
                    164: 
                    165:     \item      FILE SELECTION
                    166: 
                    167:     \item      FILE OPEN
                    168: 
                    169:     \item      DATA TRANSFER
                    170:     \end{nrtc}
                    171: \end{nrtc}
                    172: \end{bwslide}
                    173: 
                    174: 
                    175: \begin{bwslide}
                    176: \ctitle        {NESTED REGIMES}
                    177: 
                    178: \vskip.5in
                    179: \diagram[p]{figure6}
                    180: \end{bwslide}
                    181: 
                    182: 
                    183: \begin{note}\em
                    184: as regimes and services are so hopelessly interwined,
                    185: we now bounce back-and-forth between the two in this part of the presentation
                    186: \end{note}
                    187: 
                    188: 
                    189: \begin{bwslide}
                    190: \ctitle        {APPLICATION ASSOCIATION REGIME}
                    191: 
                    192: \begin{nrtc}
                    193: \item  FTAM REGIME ESTABLISHMENT SERVICE
                    194:     \begin{nrtc}
                    195:     \item      WHEN TWO APPLICATIONS ARE BOUND BY AN ASSOCIATION,
                    196:                AN FTAM REGIME IS ESTABLISHED    
                    197:     \end{nrtc}
                    198: 
                    199: \item  FTAM REGIME TERMINATION SERVICE
                    200: 
                    201: \item  FTAM REGIME ABORT SERVICE
                    202: 
                    203: \item  DURING REGIME ESTABLISHMENT,
                    204:        PARAMETERS REGARDING THE USE OF THE FILE SERVICE ARE MANDATED OR
                    205:        NEGOTIATED
                    206:     \begin{nrtc}
                    207:     \item      SERVICE LEVEL (RELIABLE/USER-CORRECTABLE)
                    208: 
                    209:     \item      SERVICE CLASS
                    210: 
                    211:     \item      FUNCTIONAL UNITS
                    212: 
                    213:     \item      ATTRIBUTE GROUPS (KERNEL, STORAGE, etc.)
                    214:     \end{nrtc}
                    215: \end{nrtc}
                    216: \end{bwslide}
                    217: 
                    218: 
                    219: \begin{note}\em
                    220: observation: having defined a massive service,
                    221: we now frantically seek ways to delimit what actually gets used!
                    222: \end{note}
                    223: 
                    224: 
                    225: \begin{bwslide}
                    226: \ctitle        {SERVICE CLASS}
                    227: 
                    228: \begin{nrtc}
                    229: \item  FTAM SUPPORTS MANY SERVICES\\
                    230:        NEED A WAY TO CHOOSE A SUBSET OF THE SERVICES A INITIATOR DESIRES
                    231: 
                    232: \item  FIVE SERVICES CLASSES
                    233:     \begin{nrtc}
                    234:     \item      FILE TRANSFER
                    235: 
                    236:     \item      FILE ACCESS
                    237: 
                    238:     \item      FILE MANAGEMENT
                    239: 
                    240:     \item      FILE TRANSFER AND MANAGEMENT
                    241: 
                    242:     \item      UNCONSTRAINED
                    243:     \end{nrtc}
                    244: 
                    245: \item  THE SERVICE CLASS IS SELECTED BY THE INITIATOR DURING CONNECTION
                    246:        ESTABLISHMENT
                    247: \end{nrtc}
                    248: \end{bwslide}
                    249: 
                    250: 
                    251: \begin{bwslide}
                    252: \ctitle        {FUNCTIONAL UNITS}
                    253: 
                    254: \begin{nrtc}
                    255: \item  FUNCTIONAL UNITS, WHICH ARE NEGOTIABLE, PROVIDE A WAY TO FURTHER
                    256:        DELIMIT THE SERVICES NEEDED BY AN INITIATOR
                    257: 
                    258: \item  A FUNCTIONAL UNIT DEFINES WHICH SERVICES ARE AVAILABLE DURING
                    259:        THE LIFETIME OF THE FTAM REGIME
                    260: 
                    261: \item  THE SERVICE LEVEL AND CLASS OFTEN MANDATE CERTAIN FUNCTIONAL UNITS
                    262: \end{nrtc}
                    263: \end{bwslide}
                    264: 
                    265: 
                    266: \begin{bwslide}
                    267: \ctitle        {FUNCTIONAL UNITS (cont.)}
                    268: 
                    269: \begin{nrtc}
                    270: \item  KERNEL: REGIME ESTABLISHMENT/TERMINATION, FILE SELECTION/DESELECTION
                    271: 
                    272: \item  READ: FILE OPEN/CLOSE, READ BULK DATA
                    273: 
                    274: \item  WRITE: FILE OPEN/CLOSE, WRITE BULK DATA
                    275: 
                    276: \item  FILE ACCESS: LOCATE/ERASE FADU
                    277: 
                    278: \item  LIMITED FILE MANAGEMENT: CREATE/DELETE FILES, READ ATTRIBUTES
                    279: 
                    280: \item  ENHANCED FILE MANAGEMENT: CHANGE ATTRIBUTES
                    281: 
                    282: \item  GROUPING: BEGIN/END A COLLECTION OF REQUESTS
                    283: 
                    284: \item  RECOVERY: RECOVER PREVIOUS REGIME, CHECKPOINTING
                    285: 
                    286: \item  RESTART: RESTART DATA TRANSFER, CHECKPOINTING
                    287: \end{nrtc}
                    288: \end{bwslide}
                    289: 
                    290: 
                    291: 
                    292: 
                    293: \begin{bwslide}
                    294: \ctitle        {FILE SELECTION REGIME}
                    295: 
                    296: \begin{nrtc}
                    297: \item  WHEN A FILE IS BOUND TO FTAM REGIME,
                    298:        THE FILE SELECTION REGIME IS ESTABLISHED BY EITHER
                    299:     \begin{nrtc}
                    300:     \item      FILE SELECTION SERVICE:
                    301:                A FILE IS SELECTED, IF IT ALREADY EXISTS
                    302: 
                    303:     \item      FILE CREATION SERVICE:
                    304:                A FILE IS (OPTIONALLY) CREATED AND THENCE SELECTED
                    305:     \end{nrtc}
                    306: 
                    307: \item  ONCE A FILE IS SELECTED,
                    308:        FILE MANAGEMENT FUNCTIONS MAY BE PERFORMED BY
                    309:     \begin{nrtc}
                    310:     \item      READ ATTRIBUTE SERVICE
                    311: 
                    312:     \item      CHANGE ATTRIBUTE SERVICE
                    313:     \end{nrtc}
                    314: 
                    315: \item  AFTER ANY FILE MANAGEMENT FUNCTIONS,
                    316:        THE FILE MAY BE OPENED FOR TRANSFER AND/OR ACCESS
                    317: \end{nrtc}
                    318: \end{bwslide}
                    319: 
                    320: 
                    321: \begin{bwslide}
                    322: \ctitle        {FILE SELECTION REGIME (cont.)}
                    323: 
                    324: \begin{nrtc}
                    325: \item  THE FILE SELECTION REGIME IS TERMINATED BY EITHER
                    326:     \begin{nrtc}
                    327:     \item      FILE DESELECTION SERVICE:
                    328:                THE FILE IS SIMPLY UNBOUND FROM THE FTAM REGIME
                    329: 
                    330:     \item      FILE DELETION SERVICE:
                    331:                THE FILE IS REMOVED FROM THE FILESTORE, AND HENCE UNBOUND
                    332:     \end{nrtc}
                    333: \end{nrtc}
                    334: \end{bwslide}
                    335: 
                    336: 
                    337: \begin{bwslide}
                    338: \ctitle        {FILE OPEN REGIME}
                    339: 
                    340: \begin{nrtc}
                    341: \item  FILE OPEN SERVICE
                    342:     \begin{nrtc}
                    343:     \item      WHEN A FILE IS TO BE TRANSFERRED OR ACCESSED,
                    344:                THE FILE OPEN REGIME IS ESTABLISHED    
                    345:     \end{nrtc}
                    346: 
                    347: \item  THIS BINDS THE STRUCTURE OF THE FILE
                    348: 
                    349: \item  ONCE A FILE IS OPENED,
                    350:        FILE ACCESS FUNCTIONS MAY BE PERFORMED
                    351:     \begin{nrtc}
                    352:     \item      LOCATE FADU SERVICE
                    353: 
                    354:     \item      ERASE FADU SERVICE
                    355:     \end{nrtc}
                    356: 
                    357: \item  AFTER ANY FILE ACCESS FUNCTIONS,
                    358:        DATA TRANSFER MAY OCCUR
                    359: 
                    360: \item  THE FILE CLOSE SERVICE TERMINATES THE FILE OPEN REGIME
                    361: \end{nrtc}
                    362: \end{bwslide}
                    363: 
                    364: 
                    365: \begin{bwslide}
                    366: \ctitle        {DATA TRANSFER REGIME}
                    367: 
                    368: \begin{nrtc}
                    369: \item  FINALLY, WHEN DATA IS TO BE ACTUALLY TRANSFERRED,
                    370:        THE DATA TRANSFER REGIME IS ESTABLISHED
                    371: 
                    372: \item  THIS INVOKES A ``BULK DATA'' TRANSFER MECHANISM FOR FADUs
                    373:     \begin{nrtc}
                    374:     \item      READ BULK DATA SERVICE
                    375: 
                    376:     \item      WRITE BULK DATA SERVICE
                    377: 
                    378:     \item      DATA UNIT TRANSFER SERVICE
                    379: 
                    380:     \item      END OF DATA TRANSFER SERVICE
                    381: 
                    382:     \item      END OF TRANSFER SERVICE
                    383: 
                    384:     \item      CANCEL DATA TRANSFER SERVICE
                    385:     \end{nrtc}
                    386: \end{nrtc}
                    387: \end{bwslide}
                    388: 
                    389: 
                    390: \begin{bwslide}
                    391: \ctitle        {THE GROUPING SERVICE}
                    392: 
                    393: \begin{nrtc}
                    394: \item  TYPICALLY MANY FILE OPERATIONS HAVE THREE ACTIONS
                    395:     \begin{nrtc}
                    396:     \item      ACQUIRE THE FILE FOR DATA TRANSFER
                    397: 
                    398:     \item      PERFORM THE DATA TRANSFER
                    399: 
                    400:     \item      RELEASE THE FILE
                    401:     \end{nrtc}
                    402: 
                    403: \item  THE FIRST AND LAST ACTIONS CAN EACH BE VIEWED AS BEING INDIVISIBLE
                    404: 
                    405: \item  GROUPING PERMITS PRIMITIVES TO BE ``BUNDLED TOGETHER''
                    406:        IN ORDER TO IMPLEMENT ONE OF THESE TWO ACTIONS
                    407: 
                    408: \item  GROUPING IS MANDATED BY MOST FILE CLASSES
                    409: \end{nrtc}
                    410: \end{bwslide}
                    411: 
                    412: 
                    413: \begin{bwslide}
                    414: \ctitle        {THE GROUPING SERVICE (cont.)}
                    415: 
                    416: \begin{nrtc}
                    417: \item  THE TYPICAL ``ACQUIRE THE FILE'' GROUP:
                    418:     \begin{nrtc}
                    419:     \item      F-BEGIN-GROUP
                    420: 
                    421:     \item      F-SELECT
                    422: 
                    423:     \item      F-OPEN
                    424: 
                    425:     \item      F-END-GROUP
                    426:     \end{nrtc}
                    427: 
                    428: \item  THE TYPICAL ``RELEASE THE FILE'' GROUP:
                    429:     \begin{nrtc}
                    430:     \item      F-BEGIN-GROUP
                    431: 
                    432:     \item      F-CLOSE
                    433: 
                    434:     \item      F-DESELECT
                    435: 
                    436:     \item      F-END-GROUP
                    437:     \end{nrtc}
                    438: \end{nrtc}
                    439: \end{bwslide}
                    440: 
                    441: 
                    442: \begin{note}\em
                    443: more complicated groups will be examined later on
                    444: 
                    445: this should pretty much illustrate the distinction between state results and
                    446: actions results:
                    447: \begin{quote}
                    448: if a state-change operation fails, they all fail
                    449: 
                    450: otherwise if an operation fails, processing continues
                    451: \end{quote}
                    452: 
                    453: grouping is constrained to certain commonly used combinations
                    454: (setup and cleanup)
                    455: \end{note}
                    456: 
                    457: 
                    458: \begin{note}\em
                    459: not discussed due to time constraints:
                    460: 
                    461: service level: reliable, user-correctable
                    462: 
                    463: recover service for regime recreation
                    464: 
                    465: checkpoint service for mark insertion
                    466: 
                    467: restart service for transfer restoration
                    468: 
                    469: we're pressed for time,
                    470: so no examples here, later on during the implementation part of the talk,
                    471: different applications will be sketched
                    472: \end{note}
                    473: 
                    474: 
                    475: \begin{bwslide}
                    476: \part* {SUMMARY}\bf
                    477: 
                    478: \begin{nrtc}
                    479: \item  THE FILE SERVICE EXISTS BETWEEN AN INITIATOR, RESPONDER, AND PROVIDER
                    480: 
                    481: \item  THE FILE SERVICE PROGRESSES THROUGH A NUMBER OF NESTED REGIMES,
                    482:        WHICH DETERMINE WHICH PARTS OF THE SERVICE MAY BE INVOKED
                    483: 
                    484: \item  THE SERVICE IS FURTHER LIMITED BY NEGOTIATION OF SERVICE ELEMENTS
                    485: 
                    486: \item  ALL SERVICES CENTER ON A SELECTED FILE WHICH IS TRANSFERRED,
                    487:        ACCESSED, OR MANAGED
                    488: 
                    489: \item  THE SERVICES ARE SUFFICIENTLY GENERAL TO SUPPORT A WIDE RANGE OF
                    490:        FILE ACTIVITIES
                    491: \end{nrtc}
                    492: \end{bwslide}

unix.superglobalmegacorp.com

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