是否有任何 python 库抽象基于 IP 的传输——TCP、UDP、SCTP、TLS 等?

Is there any python library that abstracts IP based transport -- TCP, UDP, SCTP, TLS etc.?

最近我对 [RFC 6733][1] 定义的 DIAMETER 协议产生了兴趣。由于我正在学习 Python,我认为看看我是否可以使用任何 DIAMETER Python 库可能会很有趣。我确实找到了 [one][2],但它似乎不再被维护。因此,我有了一个雄心勃勃的想法,那就是尝试构建一个至少是骨架的东西,它可以扩展为具有更丰富的 DIAMETER 信号传输功能。

因为我前段时间也遇到过扭曲矩阵,所以我试图检查它的文档,看看是否支持 DIAMETER 协议可以支持的所有类型的传输,但除了 TCP、UDP(以及TLS),我没有找到休息的提及,即

所以想知道是否有任何其他库可以使用,或者我应该期望必须手动滚动它吗?延伸扭曲,这一步超出了我的范围。 [1]: https://www.rfc-editor.org/rfc/rfc6733 [2]: http://i1.dk/PythonDiameter/

我不知道这个是否仍然受支持(最后更新于 2014 年 12 月) http://sourceforge.net/projects/pyprotosim/

它进行半径、直径、dhcp、ldap、EAP 计算

您没有选择最简单的协议。许多供应商都有自己的 AVP,有时他们甚至使用标准数字。

您也可以编写自己的库来解析 DIAMETER,这并不难,您只需要时间(很多)和好的文档(或专家)。 如果我做的那个不是我工作期间开发的,我本来可以分享的,但是我不能。

如果您打算自己推出,您可以使用 IFileDescriptor(及相关)界面使用 Twisted 来实现。创建一个 SCTP 套接字,在其周围包裹一个 IFileDescriptor,returns 它的 fileno,然后实现 IReadDescriptor.doRead 调用 sctp_sendmsgIWriteDescriptor.doWrite 调用 sctp_recvmsg。现在你有了一个 SCTP 传输。您可以实现它以调用适用于该协议的任何 SCTP 协议接口上的方法。不幸的是,我对 SCTP 的了解还不够多,无法说明协议接口应该具有哪些方法。