1 RFC主机软件( 二 )


高级应用
网络的一个内在问题是每半秒左右必须收到远程主机的响应 , 不管它如何简单 。对于TTY应用 , 可以使用半双工 , 本地响应 , 但这会破坏网络的一些有效性 。例如940系统会有非凡的回波 。当考虑到图形工作站或其它由远程主机控制的复杂终端 , 问题会变得尤其严重 。因此需要找到合理的解决途径以便象直接连接到远程计算机一样使用比较复杂的装置 。
错误检查
SRI的JeffRulifson指出主流软件接口的错误检查是好事情 。他指出SRI的一些经验很好地解决了许多无用的争辩和精力的浪费 。正因为如此 , 我们希望能看到主机-主机之间的错误检查 。除了检查软件的接口 , 还需要检查主机-接口消息处理机(HOST-IMP)装置(BB&N声称主机-接口消息处理机装置就象主机内部的寄存器一样值得信赖 。我们相信这一点 , 但还是希望有错误检查) 。
III.主机软件
连接的建立
可以想到的最简单的连接是本地主机类似一个TTY并且已经拨号连接到远程主机 。考虑到初始化和中断连接的问题 , 链接0保留以进行主机操作系统之间的通讯 , 其余31个链接用作拨号专线 。
每个主机操作系统必须给它的用户级程序提供一个基本操作来建立与远程主机的连接和一个基本操作来中止连接 。当这些操作被调用后 , 操作系统选择一条空链接 , 与此同时 , 通过链接0上发送一条消息给远程主机请求在已选的链接上实现连接 。远程主机的操作系统答应并通过链接0上回送一条接受消息 。在整个活动中 , 两台主机选择同一条链接来初始化一个连接 , 并且几乎在同时发送请求消息 , 这时会使用一个简单的优先策略:低优先级的主机让位给高优先级的主机 , 自己选择另一条空闲链接 。一种可行的优先方案是根据主机的身份号码来决定优先级的高低 。请注重两台主机都是知道请求是同时发生的 , 但采取了不同的补救行为:高优先级的主机忽略请求而低优先级的主机除了发送一条接受消息还发送一条请求消息 。
建立的连接是一种TTY形式的提前登录状态的连接 。这意味着远程主机操作系统一开始就把该链接当作是一个刚实现拨号登录的TTY 。远程主机发出相同的回应 , 期待相同的登录顺序 , 查找相同的中断字符 。
大数据量传输
考虑到传送一个大的文件时 , TTY担当终端会有两个专门的缺陷 。首先 , 有些字符是非凡的中断字符 。其次 , 由于使用非凡的缓冲技术 , 而这些技术只适合于定时的低速字符传输 。因此定义了另一类连接用来传输文件或比较大的数据量 。为初始化该类链接 , 已建立的TTY形式的链接的两端的用户级程序要求实现建立的文件形式连接与TTY形式链接并行 。于是又用到了优先策略:高优先级的主机通过链接0发送消息 , 低优先级的主机等待消息的到来 。用户级程序对此并不关心 。空闲链接的选取有高优先级的主机完成 。文件形式链接在于不需要搜索中断字符 , 并且使用适合高数据比率的缓冲技术 。
基本操作摘要
每个主机操作系统至少要给它的用户提供如下基本操作 。该列表不是必需的但还不充分 。
a)主机x初始化TTY形式连接
b)中断连接
c)通过TTY形式连接发送/接收字符
d)初始化文件形式的连接与TTY形式连接并行
e)中断文件形式连接
e)通过文件形式连接发送/接收
错误检查
假设每条消息体带有一个消息数字 , 位数和一个校验码 , 这对于IMP来说是透明的 。根据1152位计算得到16位的末位进位的和并且循环右移一位 。每1152位循环右移的检查和是IMP用来发现消息中的错误 。

推荐阅读