利用光纤实现物理单向传输
2011-03-07 23:02
288 查看
最近做了一个非常有意思的事情,就是利用光纤实现物理上的数据单向传输。其实这个东西已经有不少公司都已经做过了,但了解的人貌似并不多,我也是第一次做这样的事情。由于自己对这方面知识的匮乏,还导致系统设计上出现了偏差,实在惭愧,所以特别把自己的经验拿出来与大家分享一下。
首先陈述几个概念:
1. 光纤本身只能做单向的数据传输,光数转换需要有相应的光网卡。这里注意一下,如果想组成一个双向链路,那么就需要两根光纤了。
2. 另外,光纤分单模和多模的,价格差的也非常大,区别主要在实际可有效传输的距离上,单模可以到几公里,但多模只有几米,当然实际传输距离也和光强度有关系。
3. 光传输有个特点,就是可以利用棱镜(也就是分光器)把光分成两个一模一样的信号,但是强度也会按分光比例削弱。常见的分光器有5:5的,2:8的等等。
4. 市面上有带光网口和普通网口的交换机,当然也有带光网卡的服务器,这个就按需选购吧。
上图就是一个最简单的一个实现方案。这里Send Server是个带光网卡的服务器,它与Ftp Server用两个光纤进行连接,这样就可以实现TCP的连接了,他们之间的通讯可以走tftp协议,实现文件的上传功能。在发送通道上接了一个分光器,这样Receive Server就同样可以收到上传的文件,当然这里要写一个网卡级的还原程序。这样的物理结构就真正的实现数据传输的单向性,其实也挺简单的。
首先陈述几个概念:
1. 光纤本身只能做单向的数据传输,光数转换需要有相应的光网卡。这里注意一下,如果想组成一个双向链路,那么就需要两根光纤了。
2. 另外,光纤分单模和多模的,价格差的也非常大,区别主要在实际可有效传输的距离上,单模可以到几公里,但多模只有几米,当然实际传输距离也和光强度有关系。
3. 光传输有个特点,就是可以利用棱镜(也就是分光器)把光分成两个一模一样的信号,但是强度也会按分光比例削弱。常见的分光器有5:5的,2:8的等等。
4. 市面上有带光网口和普通网口的交换机,当然也有带光网卡的服务器,这个就按需选购吧。
上图就是一个最简单的一个实现方案。这里Send Server是个带光网卡的服务器,它与Ftp Server用两个光纤进行连接,这样就可以实现TCP的连接了,他们之间的通讯可以走tftp协议,实现文件的上传功能。在发送通道上接了一个分光器,这样Receive Server就同样可以收到上传的文件,当然这里要写一个网卡级的还原程序。这样的物理结构就真正的实现数据传输的单向性,其实也挺简单的。
相关文章推荐
- 利用双重指针来实现单向链表的节点交换
- 利用VC++实现局域网实时视频传输
- python3 利用tcp实现文件夹的远程传输
- 利用Mybatis的动态SQL实现物理分页
- 利用 WAS V6.1 开发安全可靠的 Web Services,第 2 部分:实现可靠的消息传输
- 利用json实现数据传输
- 利用HttpWebRequest通过POST Json数据在.net后台实现不同平台间的数据传输
- 利用LED灯光来传输数据流,实现无线上网
- Linux下利用epoll实现两台机器之间的UDP传输丢包统计
- 利用VC++实现局域网实时视频传输
- .Net网络通讯编程[利用Socket实现字串、文件、序列化对象传输]--使用封装的网络服务2
- 利用自反ACL实现VLAN之间的单向访问
- Qt中利用TCP实现客户端与服务器端的数据传输
- (转载)利用HttpWebRequest通过POST Json数据在.net后台实现不同平台间的数据传输
- 利用数组实现单向队列
- 利用头插法实现单向链表的逆置
- .Net网络通讯编程[利用Socket实现字串、文件、序列化对象传输]--使用封装的网络服务3[聊天室]
- 利用Jbox2D物理引擎实现愤怒的小鸟
- 【数据恢复】利用构造ROWID实现无备份情况下绕过ORA-1578、ORA-8103、ORA-1410等逻辑/物理坏块问题
- 利用IWebBrowser2接口的Navigate2方法实现Http POST传输