⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc3018.txt

📁 最新的RFC
💻 TXT
📖 第 1 页 / 共 5 页
字号:
      used.   NODE_ADDR      1 - 13 octets.  The node address.  The format of this field is      defined separately for each address format number.  The field of      the node address should not necessary precisely correspond to the      real network address.  If the real network address is longer than      this field, it is necessary to organize in the network a subset of      supporting the protocol UMSP addresses.Bogdanov                      Experimental                      [Page 6]RFC 3018             Unified Memory Space Protocol         December 2000   MEM_ADDR      16/24/32/64 bits.  The address of local memory.  This field is the      memory address in system, which is set by a field NODE_ADDR.  The      node completely responds for its memory control.  The protocol      does not define the order of using and format of this field.   128-bit address for the user applications is one field.  The user   code cannot know about a physical arrangement of addressed memory.   The 128-bit memory address may be transmits between nodes, as the   data, for example, in the buffer of function parameters, or in the   instruction of copying the data.  Therefore, it must identify the   given node from any other nodes unequivocal.   Any certain algorithm, connecting real network and 128-bit address,   does not exist.  All used address formats must be known beforehand.   As UMSP has its own address space, it can unite several global   networks.  The nodes can have internal local networks or subordinated   addressable devices connected with the node by the not-network   communications.  Any node by address format number must have an   opportunity to define the gateway respond for routing of this   address.2.2  Computing Model   Computing model is three-layer:      (1) Job      (2) Task      (3) Thread of control   The job corresponds to the user application.  The job is distributed   and can simultaneously be executed on many nodes.  The job control is   carried out centralize, from the node named as Job Control Point   (JCP).  One JCP can control the some jobs.  JCP can be located on the   same node, on which the job is created, or on any other addressed net   point.   The task is the job presentation on the separate node.  The task   includes one or several computing threads of control.  The job has   only one task on each node.   The job is finished, when the appropriate user application is   finished.  At the end of the job all tasks of this job on all nodes   are finished.Bogdanov                      Experimental                      [Page 7]RFC 3018             Unified Memory Space Protocol         December 2000   The job has its isolated 128-bit address space.  The address space is   segmented.  A segment is the local memory of one node.  Besides, the   protocol allows working with objects.  The objects are separate   associative memory of the node.   The task thread represents the concrete control thread, which are   executed by VM in the certain node.  The thread can read and write to   any address of 128-bit address space of the job.  The control   transfer to the address from other (remote) node, results to the   creation of the new thread on the remote node.  The continuous code   segment cannot be distributed on several nodes.  In addition, it is   impossible to receive continuous memory area distributed on several   nodes.   The protocol does not demand to support the different tasks of not-   crossed memory space from the separate VM node.  The supporting of   multi-thread is not also the obligatory requirement.   The 128-bit Global Job Identifier (GJID) is defined by protocol.  It   is assigned on JCP, which will control the job.  All active GJID have   the unique values in the unified system at each moment of time.   The job can contain VM code of different types.  Different types VM   can be situated on one or different nodes.  The mechanism of   association of different VM types in groups on one node is   stipulated, so to the non-uniform code can be executed on one node in   a context of one job.  The groups are described in details in section   9.  VM, incorporated in groups, must work in common memory space (to   have a common subsystem of memory control).Bogdanov                      Experimental                      [Page 8]RFC 3018             Unified Memory Space Protocol         December 20002.3  System Architecture   System structure, based on using Virtual Machines, is given in the   following figure:              Node 1                              Node 2             --------                            --------      +--------------------+              +--------------------+      | User Application 1 |              | User Application 1 |      +-----------------------+           +-----------------------+         | User Application N |              | User Application N |         +--------------------+              +--------------------+   +-----+  +-----+       +-----+      +-----+  +-----+       +-----+   | VM1 |  | VM2 | . . . | VMn |      | VM1 |  | VM2 | . . . | VMn |   +--+--+  +--+--+       +--+--+      +--+--+  +--+--+       +--+--+      |        |             |            |        |             |    +--------------------------+        +--------------------------+    |                          |        |                          |    | +-----+  U M S P         |        |          U M S P         |    | | JCP |                  |        |                          |    | +-----+                  |        +-------------+------------+    +-------------+------------+                      |                  |                             +-----+-----+            +-----+-----+                       |    TCP    |            |    TCP    |                       +-----+-----+            +-----+-----+                             |                  |                                   |                  +-----------------/                 |                                   /------------------+                                  /                                  |                            +-----+-----+                Node N      |    TCP    |               --------     +-----+-----+                                  |                     +------------+------------+                     | +-----+                 |                     | | JCP | U M S P         |                     | +-----+                 |                     +-------------------------+         Figure 1. Structure of the system based on use VM.Bogdanov                      Experimental                      [Page 9]RFC 3018             Unified Memory Space Protocol         December 2000   One or several VM are working on upper level for UMSP.  The VM layer   is not network level.  Last network level is UMSP.  Therefore, VM   layer has no its own network primitives and uses together with UMSP   the same field of operation code.   The end services user of the protocol is the user code, which is   executed by the virtual machine.  It has the instructions with the   128-bit address.  VM translates these instructions to network   commands, which are transmitted through the UMSP protocol for the   executing by the remote machine.  Internal organization VM, command   system and API can be anyone.  The protocol defines only format of   primitives, which the virtual machines exchange through a network.   The protocol does not control the jobs memory.  Control of memory   should realize VM.  If a few VM works on one node, they may have the   common memory space or may be completely isolated.   UMSP uses the transport layer with reliable delivery for the data   exchange.  This document defines of using TCP.  For the transfer of   not requiring acknowledgement data may be used UDP.  Thus, the   connection through TCP is obligatory.  Use of multiple connections   TCP with multiplexing is supposed.  The control of transport   connections is not the part of the UMSP protocol.   The UMSP instructions do not contain network addresses of the   receiver and sender.  The protocol requires that one address UMSP   must correspond to the one transport layer address.  Accordingly, it   is necessary to define unequivocal the node address on transport   layer by the 128-bit address of memory.   Except the TCP, it is possible to use other transport protocols or   not network communications.  The following requirements are showed to   them:      o  Reliable delivery.  The transport layer must inform about         delivery or its impossibility;      o  The violation of a sequence of transmitted segments is allowed;      o  The duplication of segments is not allowed;      o  At emergency reload of nodes it is necessary to guarantee         identification of segments concerning session connections,         assigned up to reload;      o  Use connectionless-mode is possible.   VM is the independent program and the interaction with the protocol   is necessary for it only when it executes the instructions with the   128-bit address, concerning to other node.  VM can execute severalBogdanov                      Experimental                     [Page 10]RFC 3018             Unified Memory Space Protocol         December 2000   user tasks.  Each task can contain several threads of control.  VM   must be able to interpret the application instructions with the 128-   bit address to one or several instructions of the UMSP protocol.   The session connection opens between nodes for the data exchange.   One connection is relational only with one job.  There may be several   session connections for the different jobs simultaneously between two   nodes.  Besides, the protocol provides the connectionless data   exchange.   The exchange between UMSP nodes can include the instructions of the   following type:      o  Immediate reading/write in memory;      o  Requests of allocation/free memory;      o  Comparison instructions;      o  Call-subroutine and unconditional jump instructions;      o  Synchronization instructions;      o  Work with objects instructions - reading / writing in memory of         objects and execution of objects procedures.   UMSP does not trace the user control threads.  VM must provide itself   the necessary order of performance of the instructions.   The length of UMSP instructions does not depend on segment length of   the transport layer.  The segmentation is provided for transfer of   the long instructions.  The packing of the short instructions in one   segment with a possibility of compression of headings is used for its   transfer.  The minimal size of necessary for work segment is 6   octets.  For realization of all functions, it is necessary 54 octets.3  Instruction Format   The UMSP instruction includes the basic header, extension headers and   operands.  All fields have variable length.   +----------------+----------------------+------------------------+   |     Header     |   Extension headers  |       Operands         |   +----------------+----------------------+------------------------+   The header contains operation code and the information necessary for   the instruction interpretation.   The optional extension headers contain the additional information,   not defined in basic header.   The operands contain instructions data.Bogdanov                      Experimental                     [Page 11]RFC 3018             Unified Memory Space Protocol         December 2000   The instruction format allows calculating common instruction length,   without knowing definition of separate operation code.   The instructions headers provide for the short and extended format   for maintenance of the effective protocol work in wide range of   network speeds.  Besides, there is a simple algorithm of the headers   compression.   The all instructions and extension headers the identifiers are given   which enter the name by upper case symbols.  The identifiers of the   instructions begin with the letter.  The identifiers of the extension   headers begin with underlining symbol.3.1  Instruction Header   The header has the following format:

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -