2011-02-09 46 views
3

我读过erlang最大的采用者之一是电信行业。我假设他们使用它来在它们的节点之间发送二进制数据,并提供简单的冗余,效率和并行性。Erlang OTP I/O - 几个问题

erlang实际上是否只发送二进制文件到中央节点?

是否直接负责将二进制数据解析为实际语音?还是通过端口将它传送给另一种语言/程序?

负责电话通话的速度,速度与我说话时的延迟和你听到的一样。

是否有可能erlang仅用于缓解并行行为和C++或类似的处理速度的顺序函数?

回答

5

我只能猜测事情是如何在实际的电信交换机来实现,但我可以推荐的做法采取:

  • 首先,要实现在二郎的一切,包括许多低的级别的东西。由于信号处理非常昂贵,这可能不会那么大。作为一个原型,然而,它的工作原理,你可以打电话和什么。

  • 其次,您决定如何处理性能瓶颈。您可以将它们推到C(++)并获得大约10的因子,或者可以将它们推送到FPGA并获得大约100的因子。最后,您可以执行CMOS工作并获得1000的因子。后一种方法也更陡峭,所以你决定你需要什么,并去购买。

  • 在您按下呼叫设置等按钮时会发生什么情况,Erlang仍然控制着控制背板。但是一旦分配了一个呼叫,我们就将该频道切换到较低层。这里的ATM交换更容易,因为一旦连接被设置,你就不需要改变它(ATM是面向连接的,IP是面向数据包的)。

  • Erlangs的分布功能主要用于在控制背板中提供冗余。也就是说,我们在多个节点之间同步呼叫建立表等以在硬件故障的情况下促进节点接管。

  • 诀窍是使用ports和NIFs原型来加速程序的较慢部分。

+1

事实上,电信业务是20%的实际语音数据和80%的信令来建立呼叫,做收费和带宽分配。 Erlang被用于信令部分,呼叫C来代理语音。 – Lukas 2011-02-09 09:05:37