http://sofia-sip.sourceforge.net/refdocs/tport/index.html,翻译自官网的这张网页。
模块信息
tport模块提供可供SIP、RTSP和HTTP使用的通用的传输接口。这是一个抽象层,介于协议栈和传输协议实现之间。接口通过传输对象来实现。传输对象的tag参数在<sofia-sip/tport_tag.h>头文件中被定义。
-
状态:
- Sofia SIP Core library
-
许可:
- LGPL
Master, Primary and Secondary传输对象
一个传输对象可以以三种角色被使用。Master传输对象表示所有可能的传输。它被用来保存stack和root接口,以及类似于SigComp状态处理器的通用数据。primary传输对象表示可用的传输。secondary传输对象表示实际的传输连接。
一个协议栈首先创建一个master传输对象,然后绑定许多的primary传输对象(每个代表一个传输协议,例如UDP、TCP、TLS/TCP和SCTP等等)。绑定过程为每个支持的传输协议创建一个新的primary传输对象。如果协议栈作为一个服务端使用,邦定过程还将创建必要的服务器sockets,并且将它们绑定到指定的服务器端口上。
secondary传输对象为每个传输层连接创建。tport模块负责自动创建它们,当它们不再被使用时自动销毁它们。当一个面向连接的传输协议被使用时,secondary传输对象被要求用来传输消息。<