2006/11/13

數位家庭產品初探 -- uPnP 裝置 IGD

uPnP 裝置列表 如下

裝置分類
  • 網路

額外服務

在 IGD DCP 裡定義了 Layer3Forwarding, WANCommonInterfaceConfig, WANPOTSLinkConfig, WANDSLLinkConfig, WANCableLinkConfig, WANEthernetLinkConfig, WANPPPConnection, WANIPConnection, LANHostConfigManagement,但是 linux-igd 套件只實作了 WANIPConnection 與 WANCommonInterfaceConfig.

至於文件裡 Sec. 3 定義的 XML Device Description 則參考 /etc/linuxigd/gatedesc.xml,源碼中也吐出不少 xml 格式的訊息。GetConnectionTypeInfo() 會吐出下面結果:

<u:GetConnectionTypeInfoResponse xmlns:u="urn:schemas-upnp-org:service:WANIPConnection:1">
<NewConnectionType>IP_Routed</NewConnectionType>
<NewPossibleConnectionTypes>IP_Routed</NewPossibleConnectionTypes>
</u:GetConnectionTypeInfoResponse>


結論:Linux-IGD 這個套件對 Cable, PPP 等連線均未實作,目前似乎只有實作 IP 的連線而已。
這邊有個程式片斷用來說明 SDK 怎麼使用 serviceId,當然本套件也只有定義兩個 serviceId(WANIPConn1, WANCommonIFC1):

UpnpNotifyExt(deviceHandle, gateUDN, "urn:upnp-org:serviceId:WANIPConn1", propSet);

0 意見: