描述:
因本人不懂技术与硬件,故不知道该如何为本帖起个贴切的标题。
在CSDN > CSDN论坛 > Windows专区 > 安全技术/病毒 论坛,我提出了一个服务器安全的新构想, http://bbs.csdn.net/topics/391022387 ,感觉在理论上应当可靠,故特到硬件论坛,请硬件方面的专家予以指点。
我的构想是,建造一种新的硬件(姑且称之为“网关”吧,反正不管什么名字,都已经被人给占用啦)。
网关有这样三个模块:
中转、外端、内端。
一、外端。
外端是通过网线与网络(我们假设是通过路由)相联的。
当外端插上网线,加电后,其自主与路由通讯,进行网络配置,通过路由接入网络。就如同HUB一样,不需要计算机的支持,网关加电后,独立运行。
外端的所有程序与设置均固化,不允许有任何的人工设置,配置标准的通讯协议。
外端处有一个写开关,有一个只写寄存器。我不懂硬件,也不知道是否应当叫寄存器,也许称数据缓冲区吧,反正,就是临时存放数据的地方。
该开关为开时,表示可写入外端的只写寄存器,如果开关是关闭的,则表示此时不得写入。外端写入只写寄存器后,将该开关关闭,表示有数据供下一模块处理。
当外端接收到网络传递来的信息后,如果能解译成UDP数据,则将其写入到外端的只写寄存器,数据格式为6字节源地址+数据。同时,外端将外端的写开关关闭。如果写开关本身就是关闭的,则表示此时不能写入,直接抛弃数据。
外端处有一个读开关,有一个只读寄存器。
该开关从开跳转为关时,会触发外端。
当外端感受到该开关的触发时,将只读寄存器当中的数据读入外端,并关闭读开关。
外端从只读寄存器中取回的数据,数据格式为6字节源地址+6字节目标地址+数据。外端通过UDP协议,将数据发往目的地。
二、内端。
内端是通过网线与电脑相联的。以后,也许可以做成硬件卡,如网卡声卡一般,直接插在电脑主板上。暂时,我们假设是独立外置的,用网络方式与电脑想联的。
当内端插上网线,加电后,其自主与电脑通讯,进行网络配置。就如同HUB一样,不需要计算机的支持,网关加电后,独立运行。
内端的所有程序与设置均固化,不允许有任何的人工设置,配置标准的通讯协议。
内端处有一个写开关,有一个只写寄存器。
该开关为开时,表示内端可以写入内端的只写寄存器,如果开关是关闭的,则表示此时不得写入。内端写入只写寄存器后,将该开关关闭,表示有数据供后续模块处理。
当内端接收到网络传递来的电脑主机的信息后,如果能解译成UDP数据,则将其写入到内端的只写寄存器,数据格式为6字节目标地址+数据。同时,内端将内端的写开关关闭。如果写开关本身就是关闭的,则表示此时不能写入,直接抛弃数据。
内端处有一个读开关,有一个只读寄存器。
该开关从开跳转为关时,会触发内端。
当内端感受到该开关的触发时,将只读寄存器当中的数据读入内端,并关闭读开关。
内端从只读寄存器中取回的数据,数据格式为6字节源地址+数据。内端通过UDP协议,将数据发往主机。
三、中转
当外端将外端的只写开关从开置为关时,会触发中转模块。中转先检查内端的只写开关,如果内端的只读开关是闭,则等待;如果是开,则读取外端的只写寄存器,将外端的只写开关打开,将数据写入内端的只读寄存器,将网商的只读寄存器开关关闭。如此,数据从网络上进入到主机。
反之亦然。
其实,中转模块的虚拟的、逻辑上的。
事实上,是外端写内端的只读寄存器,内端写外端的只读寄存器,外端读内端的只写寄存器,内端读外端的只写寄存器。
这种从逻辑上划分出“中转模块”,是为了从逻辑上,将内外两端彻底分开。
不知道,这种方案,在硬件实现上,是否可行?