网络管理员指南 -12.管理 Taylor UUCP -2>绪论 -2)Uucico的内部工作

/ns/wz/net/data/20020808034726.htm

网络管理员指南 -12.管理 Taylor UUCP -2>绪论 -2)Uucico的内部工作


本文出自:http://www.linpus.com.tw 作者: Andrew Anderson


为了了解为什么uucico需要知道特定的事情,这里是对于它如何实际连接到一个远程系统的简述。
当你在命令行执行uucico �Cs系统的时候首先进行物理连接。这个动作的执行依靠所打开的连接
的类型―例如,当使用电话线时,它就需要发现一个modem,然后拨号。在TCP上,它需要呼叫
gethostbyname(3)来转变名字为一个网络地址,查找要打开的端口,并设置地址到相应的插槽。
在这个连接建立之后,就需要进行一个证明程序。它通常包括要求一个注册名,并且可能的话要求
一个密码的远程系统。这通常被称为login chat。证明程序可以由通常的getty/login套组,或者是
uucico自己在TCP插槽上运行。如果证明成功,远程终端就启动uucico。Uucico引导连接的本地副本
被作为主人(master),而远程副本作为仆人(slave)。
握手之后的阶段:主人现在发送他的主机名和几个标志。仆人检查接受这个主机名来登录,发送并接
受文件等等。标志描述(包括其它东西)需要传送的spool文件的最大等级。如果启动,一个谈话有效,
或者在这里称为序列数字检查。这个特性,两端都保留一个成功连接的记录进行比较。如果它们不匹配,
握手失败。这会帮助你阻止冒名顶替者。
最后,两个uucico试着在一个常规的传送协议上达成一致。这个协议规范数据传输的方式,经常进行检
查并且进行重新传送以防止错误。因为它支持不同的连接类型,对于不同的协议这是有必要的。例如,
电话线要求一个“安全的”协议,它拒绝错误,而TCP传送本身非常值得信任,可以使用一个更加有效的
协议预先运行大多数的多余错误的检查。
在握手完成的时候,实际的传送阶段开始了。两个终端都打开所选择的协议驱动。驱动可能执行一个特定
协议的初始顺序。
首先,主人为所有的有足够高的spool等级的远程系统发送所有的文件序列。当它完成的时候,它会通知
有关的仆人,和那个仆人现在可否被断开。仆人现在即可以同意断开或者完成谈话。这是一个规定的变化:
现在远程系统变成了主人,而本地的终端变成了仆人。现在,新的主人发送它的文件。当完成的时候,两
个uucico交换终止信息,并断开连接。
我们就此将不进行更为详细的介绍:请查阅源材料或者在UUCP上有关这个的任何好书。还有在网上的非常
古老的文章,由David A.-Novitz撰写,它对于UUCP协议有详细的描述。Taylor UUCP FAQ也介绍了UUCP安
装方式的一些细节。它通常有规律的被邮寄到comp.mail.uucp。