rfc3018.txt
来自「RFC 的详细文档!」· 文本 代码 · 共 1,557 行 · 第 1/5 页
TXT
1,557 行
GTID and GJID are written at the instructions in the field of length
4-16 octets. The field FREE is not present at these identifiers (see
section 2.1). It is considered, that it contains the zero-value
octets. Length of the identifier is defined in header of the
address.
By sending of instructions CONTROL_REQ, TASK_REG and SESSION_OPEN,
the protocol uses timeout. The value of timeout is assigned by node
and must be more than three intervals of the maximal time of delivery
at the transport layer. The timeout is not influenced the waiting
period in queue to the transport layer.
5.1 Job Initiate
The job concerns to the user application executed on VM. The UMSP
job initialization can be made simultaneously with the application
user start or during its working.
The task, appropriated to its job, is initialized on the node
together with the job. LTID is binding to this task.
If the node, on which the user application was loaded, is chosen for
JCP, the question of the job initialization lays beyond the scope of
the network protocol.
Other node can be chosen as JCP for the following reasons:
o The job initialization node is connected to network by slow-speed
or overloaded channel. It is undesirable to send the managing
traffic.
o The node has no computing possibilities for conducting the
managing tables.
o The authentication on the detailed node is necessary.
If the other node is chosen for JCP, the node, that initiates the
job, must register the job at JCP.
Bogdanov Experimental [Page 23]
RFC 3018 Unified Memory Space Protocol December 2000
5.1.1 CONTROL_REQ
The instruction "To request a control" (CONTROL_REQ) is sending from
the node, initial the job, to JCP of other node. The instruction has
the following values of fields:
OPCODE = 3
PCK = %b00
CHN = 0
ASK = 1
EXT = 0/1
OPR_LENGTH = 2/3 ; Depends on LTID length.
REQ_ID - The value is assigned by the sender node protocol and
then will be sent in the response.
Operands:
4 octets: The control parameters profile. This field has the
following format:
bits
0 1 2 3 4 5 6 7
+-----+-----+-----+-----+-----+-----+-----+-----+
| |
+ JOB_LIFE_TIME +
| |
+-----+-----+-----+-----+-----+-----+-----+-----+
| CMT | Reserved | VERSION |
+-----+-----+-----+-----+-----+-----+-----+-----+
| Reserved |
+-----+-----+-----+-----+-----+-----+-----+-----+
JOB_LIFE_TIME
2 octets. The job lifetime in seconds. The zero-value
signifies that the restriction of the job lifetime is
unused.
CMT
1 bit. The flag of several JCP using. This field is
reserved for the future expansion of the protocol.
VERSION
1 octet. The number of the UMSP version. It must
contain the value 1.
Bogdanov Experimental [Page 24]
RFC 3018 Unified Memory Space Protocol December 2000
Reserved
3 + 8 bits. All bits must be set to 0.
4/8 octet: LTID of task of the job, assigned on the node, which
initiate the job (by the sender of this
instruction).
The optional extension headers:
_JOB_NAME - This header contains the name of the Job. Is
assigned once and must not change further.
_INACT_TIME - This header contains the inaction time (see
section 5.7).
At reception of the CONTROL_REQ instruction JCP checks the LTID value
from the received instruction and makes the following:
(1) If the node, which has sent CONTROL_REQ, already has registered
on JCP the active job with such LTID, the notification about
abnormality end of the registered job is sent, as is described in
section 5.5.2 (it is considered, that the node was reloaded).
After that, the sanction to an initiation of the new job is sent.
(2) If the node has no registered job with received LTID, it allows
the new job initiation at once.
If JCP confirms the control, it will send the instruction
CONTROL_CONFIRM, or else CONTROL_REJECT.
5.1.2 CONTROL_CONFIRM
The instruction "To confirm the control" (CONTROL_CONFIRM) is sent
from JCP as the positive response to CONTROL_REQ instruction.
CONTROL_CONFIRM has the following values of fields:
OPCODE = 4
PCK = %b00
CHN = 0
ASK = 1 ; The instruction does not need to be responded. This flag
specifies presence of the REQ_ID field.
EXT = 0/1
OPR_LENGTH = 1-4 ; Depends of length of the GJID.
REQ_ID - The value is taken from the instruction CONTROL_REQ
Operands:
4-16 octets: The GJID assigned to the job on the JCP.
The sending of the instruction CONTROL_REQ means request of control
and request of task initiation. Assigned to the task CTID is part
GJID (field of the local memory address).
Bogdanov Experimental [Page 25]
RFC 3018 Unified Memory Space Protocol December 2000
5.1.3 CONTROL_REJECT
The instruction "To reject the control" (CONTROL_REJECT) is sent from
JCP as the negative response to CONTROL_REQ instruction.
CONTROL_REJECT has the following values of fields:
OPCODE = 4
PCK = %b00
CHN = 0
ASK = 1. The instruction does not need to be responded. This flag
specifies presence of the REQ_ID field.
EXT = 0/1
OPR_LENGTH = 1/2 ; Depends on presence of the control parameters
profile field.
REQ_ID - The value is taken from the instruction CONTROL_REQ
Operands:
2 octets: The basic error code. The zero-value is not
available.
2 octets: The additional error code.
4 octets: The control parameters profile (see section 5.1.1),
that is allowed by JCP. This is optional field.
The optional extension headers:
_INACT_TIME - This header contains the inaction time (see
section 5.7).
_MSG - contains the arbitrary error description.
5.2 Task Initiate
The job is executed on several nodes simultaneously. The task,
appropriate to it, must be initialized on each node. There is
corresponding only one task to one job on the node. Each task must
be connected only with one job.
The task is initiated together with the job on the node, which had
created the job. On the other nodes, the task is initiated during
the receiving of the first request on the opening of the session
connection, which is appropriate to the job. The request about
openings of session connection contains GJID. GJID contains the JCP
address. It is necessary to receive the sanction from JCP for the
task start. If the request about the opening of session has been
received from JCP node, it is not necessary to request the sanction.
5.2.1 TASK_REG
The instruction "To register a task" (TASK_REG) is sent from the
node, which initials the task, to JCP of the remote node. The
instruction has the following values of fields:
Bogdanov Experimental [Page 26]
RFC 3018 Unified Memory Space Protocol December 2000
OPCODE = 6/7/8 ; For length CTID of 2/4/8 octets.
PCK = %b00
CHN = 0
ASK = 1
EXT = 0/1
OPR_LENGTH = 2-8 ; Depends on length of the GTID and LTID.
REQ_ID - The value is assigned by the sender node protocol and
then will be sent in the response.
Operands:
2/4/8 octets: CTID of the task initiated the job. It CTID is a
part GJID from the instruction SESSION_OPEN.
4-16 octets: GTID, assigned on the node, initialed session
connection. GTID is formed of sender addresses (at
transport layer) and field LTID of the instruction
SESSION_OPEN.
2/4/8 octets: LTID, assigned on the node, initialed the task
(by the sender of this instruction).
The optional extension headers:
_INACT_TIME - This header contains the inaction time (see
section 5.7).
The instruction TASK_REG must be sent only if the task with given
GJID was not initiated on the node.
JCP confirms initiation of a task at observance of the following
conditions:
(1) Task with received GTID already has registered on JCP.
(2) Task with LTID for the node requesting for initiation has not
registered.
In all other cases, JCP will not confirm a task.
If JCP confirms the task, it will send the instruction TASK_CONFIRM,
differently TASK_REJECT.
5.2.2 TASK_CONFIRM
The instruction "To confirm the task" (TASK_CONFIRM) is sent from JCP
as the positive response to TASK_REG. TASK_CONFIRM has the following
values of fields:
OPCODE = 9
PCK = %b00
CHN = 0
ASK = 1. The instruction does not need to be responded. This flag
specifies the field REQ_ID presence.
EXT = 0/1
Bogdanov Experimental [Page 27]
RFC 3018 Unified Memory Space Protocol December 2000
OPR_LENGTH = 1/2 ; Depends on length of the CTID.
REQ_ID - The value is taken from the instruction TASK_REG.
Operands:
4/8 octets: The CTID assigned to the task on the JCP.
The optional extension headers:
_JOB_NAME - This header contains the name of the Job.
5.2.3 TASK_REJECT
The instruction "To reject the task" (TASK_REJECT) is sent from JCP
as the negative response to TASK_REG instruction. TASK_REJECT has
the following values of fields:
OPCODE = 10
PCK = %b00
CHN = 0
ASK = 1. The instruction does not need to be responded. This flag
specifies presence of the REQ_ID field.
EXT = 0/1
OPR_LENGTH = 1
REQ_ID - The value is taken from the instruction CONTROL_REQ
Operands:
2 octets: The basic error code. The zero-value is not
available.
2 octets: The additional error code.
The optional extension headers:
_INACT_TIME - This header contains the inaction time (see
section 5.7).
_MSG - contains the arbitrary error description.
5.2.4 TASK_CHK
With the purposes of a safety the node, which have received request
about the opening of session connection, may check up at JCP the
node, which has initialed connection, even if the task was already
initiated.
The instruction "To check up the task" (TASK_CHK) is sent from the
node, which has received the ins
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?