互操作性是一個系統經過很少甚至無需系統操作員介入而實現與其它系統協同工作的能力。系統的互操作性使其有可能為其它系統提供服務或接受其它系統的服務,使得不同廠商的系統能夠協同工作。本應用筆記介紹如何設置DS34S132 TDM-over-Packet (TDMoP) IC,使其與其它TDMoP器件實現互操作。
引言
毋庸諱言,當今的通信系統需要不同設備和設備之間的復雜交互。隨著技術的進步,互操作性也變得更加重要。互操作性是一個系統經過很少甚至無需系統操作員介入而實現與其它系統協同工作的能力。系統的互操作性使其有可能為其它系統提供服務或接受其它系統的服務,從而使不同廠商的系統能夠協同工作。
本應用筆記著重介紹Maxim TDM-over-Packet (TDMoP) IC,DS34S132。文章介紹了在DS34S132與其他廠商TDMoP器件之間實現互操作性的設置要求。
?
互操作性要求
Maxim的TDMoP器件產生的數據包與其他廠商的TDMoP器件的報頭信息可能不同。為了使TDMoP器件實現互操作,用戶需要了解器件的設置類型。Maxim器件的設置為以下之一:
- IP/UDP/RTP/SAToP
- IP/UDP/RTP/CESoPSN
- MEF/RTP/CESoETH—非結構化(即MEF/SAToP)
- MEF/RTP/CESoETH—結構化鎖定(即MEF/CESoPSN)
- MPLS/RTP/SAToP—非結構化(即MPLS/RTP/SAToP)
- MPLS/RTP/CESoPSN—結構化鎖定(即MPLS/RTP/CESoPSN)
每種TDMoP器件設置都有不同的報頭。為了實現互操作性,必須將來自于Maxim TDMoP器件的報頭格式化,使其與其它器件的報頭相同。這意味著用戶需要比較TDMoP器件的報頭,并查找格式差異。本應用筆記介紹如何利用Maxim的應用程序修改DS34S132 TDMoP器件的報頭。文章還介紹了如何修改Maxim綁定配置,以接受協議相同但報頭信息不同的數據包。
?
TDMoP格式
本節介紹TDM-over-Packet模塊的功能描述。為了通過分組交換網絡傳輸TDM數據,TDMoP器件將TDM數據封裝為以太網數據包,如圖1所示。TDMoP報頭不同數據塊的說明請參見表1。
圖1. 以太網數據包格式的TDMoP封裝。
表1. 以太網數據包結構
Field | Description |
Preamble | A sequence of 56 bits (alternating 1 and 0 values) used for synchronization. Gives components in the network time to detect the presence of a signal. |
Start frame delimiter | A sequence of 8 bits (10101011) that indicates the start of the packet. |
Destination and Source Addresses | The Destination Address field identifies the station or stations that are to receive the packet. The Source Address identifies the station that originated the packet. A Destination Address can specify either an "individual address" destined for a single station, or a "multicast address" destined for a group of stations. A Destination Address of all 1 bits refers to all stations on the LAN and is called a "broadcast address." |
Type | Ether type |
Data and padding | This field contains the data transferred from the source station to the destination station or stations. The maximum size of this field is 1500 bytes. A minimum size Ethernet packet is 64 bytes from the Destination Address field through the Frame Check Sequence. If the packet size of this field is less than 46 bytes, padding is used to bring the packet size up to the minimum length. |
Frame check sequence | This field contains a 4-byte cyclical redundancy check (CRC) value used for error checking. When a source station assembles a packet, it performs a CRC calculation on all the bits in the packet from the Destination Address through the pad fields (that is, all fields except the preamble, start frame delimiter, and Frame Check Sequence). The source station stores the value in this field and transmits it as part of the packet. When the destination station receives the packet, it performs an identical check. If the calculated value does not match the value in this field, the destination station assumes that an error has occurred during transmission and discards the packet. |
為了實現互操作性,用戶需要注意TDMoP報頭的兩個部分:
- UDP/IPv4報頭互操作性
- RTP報頭互操作性
UDP/IPv4報頭互操作性
圖2 所示為UDP/IPv4報頭結構。表2和3詳細說明了IPv4和UDP報頭結構的不同域。
圖2. UDP/IPv4報頭。
表2. IPv4報頭結構
Field | Description |
IPVER | IP version number; IPv4 IPVER = 4 |
IHL | Length in 32-bit words of the IP Header, IHL = 5 |
IP TOS | IP type of service |
Total length | Length in octets of IP Header and data |
Identification | IP fragmentation identification |
Flags | IP control flags; must be set to 010 to avoid fragmentation |
Fragment offset | Indicates where in the datagram the fragment belongs; not used for TDMoP |
Time to live | IP time-to-live field; datagrams with zero in this field are discarded |
Protocol | Must be set to 0x11 to signify UDP |
IP Header checksum | Checksum for the IP Header |
Source IP address | IP address of the source |
Destination IP address | IP address of the destination |
表3. UDP報頭結構
Field | Description |
Source port number, destination port number | Either the source or the destination port number holds the bundle identifier. The unused field can be set to 0x85E (2142), which is the user's port number assigned to TDMoP by the Internet Assigned Numbers Authority (IANA). For UDP/IP-specific OAM packets, the bundle identifier is all 1s. |
UDP length | Length in octets of UDP Header and data |
UDP checksum | Checksum of UDP/IP Header and data. If not computed, it must be set to zero. |
根據IANA規定,UDP報頭的目標端口應設定為0x85E (2142),這是分配給TDMoP的用戶端口號。Maxim TDMoP器件默認遵循該規范。
部分TDMoP廠商在UDP報中的目標端口號位置分配一個綁定標識號,而不是在源端口號位置。有些廠商還分配一個隨機號作為用戶端口號,而不是采用IANA分配的0x85E。使用DS34S132時,用戶可采用兩種方式解決這些問題。
- 在預配置菜單中,將全部綁定標識號賦予相應的位置。
- 向綁定引擎表明綁定標識號在接收數據包中的位置。
-
?RTP報頭互操作性
RTP報頭
Field Description V RTP version; must be set to 2. P Padding bit; must be set to 0. X Extension bit; must be set to 0. CC CSRC count; must be set to 0. M Marker bit; must be set to 0. PT Payload type. One PT value MUST be allocated from the range of dynamic values for each direction of the bundle. The same PT value MAY be reused for both directions of the bundle, and is also reused between different bundles. SN The sequence number identical to the sequence number in the control word. TS Timestamp. The RTP Header can be used in conjunction with the following modes of timestamp generation:
Absolute mode: the chip sets timestamps using the clock recovered from the incoming TDM circuit.
Differential (common clock) mode: The two chips at bundle edges have access to the same high-quality clock source, and this clock source is used for timestamp generation.SSRC Identifies the synchronization source. This identifier should be chosen randomly, with the intent that no two synchronization sources within the same RTP session will have the same SSRC identifier.
如何區分其他廠商TDMoP器件的報文內容
總結
-
-
向綁定引擎表明綁定標識號在接收數據包中的位置。參考上文中的圖4,選項1,Bundle Configuration Decides (BCDR4),將在目標端口號或源端口號位置分配一個綁定標識號,取決于圖5中所示的綁定配置。
圖5. DS34S132的綁定配置菜單。
在以上的綁定配置菜單中,用戶在UDP源端口號位置插入綁定標識號。用戶還表明報文分類模塊應該在UDP源端口號位置查找綁定標識號。
如果用戶知道數據包的綁定標識號位于UDP目標端口號位置,那么則很容易通過將選項45, RX Bundle Number Location at UDP port,修改為Destination進行表示,如圖6所示。
圖6. DS34S132的綁定配置菜單的選項45。
圖7. RTP報頭
表4. RTP報頭結構
為了在絕對時鐘恢復模式下產生時鐘,端口接收配置寄存器4 (PRCR4)中的RTP發生器時標模式選擇(TSGMS)位需設定為1,即PRCR4.TSGMS = 1。為了在差分時鐘恢復模式產生時鐘,PRCR4寄存器中的TSGMS位需設定為0,即PRCR4.TSGMS = 0。用戶無需手動設置這些寄存器位。在綁定配置中將RTP使能時,這些位被設置。
自適應模式下, Maxim的DS34S132 TDMoP器件中的時鐘恢復算法根據數據包之間到達延遲恢復時鐘。因此,自適應時鐘恢復模式下,使能RTP是可選的。然而,差分模式下, Maxim的DS34S132 TDMoP器件中的時鐘恢復算法通過分析RTP報頭中的時標恢復時鐘。所以,差分時鐘恢復模式下,強制使能RTP。
為了實現互操作,用戶需要確定其它TDMoP廠商用以發生RTP報頭中時標的模式。用戶還需要了解其它系統處于自適應還是差分時鐘恢復模式。在接口配置中,可更改每個端口的時鐘恢復模式。圖8所示為如何修改時鐘恢復模式。默認為自適應模式端口。
圖8. 接口配置。
現在,如果用戶希望更改時鐘恢復模式,那么就需要使用選項40,Adaptive or Differential mode,如圖9所示。
圖9. 在接口配置中選擇差分時鐘恢復模式。
與Maxim的TDMoP器件不同,有些TDMoP廠商在自適應或差分時鐘恢復模式下根據RTP報頭中的時標恢復時鐘。因此,為了實現與這些廠商系統的互操作, Maxim TDMoP器件在自適應時鐘恢復模式下使能RTP。DS34S132,以及其它TDMoP廠商的器件,能夠以三種方式在RTP報頭中產生時標: -
- 位模式
- 字節模式
- 幀模式
圖10. 在接口配置中為時標選擇位、字節或幀模式。
在接口配置中選擇了時鐘恢復模式和時標發生模式后,用戶接下來需要在綁定配置中使能RTP模式。之前圖5所示的綁定配置中的RTP被禁用。從綁定配置菜單中,用戶需要利用選項27使能RTP模式,如圖11所示。
圖11. 在接口配置中為時標選擇位、字節或幀模式。
一旦使能RTP模式,綁定配置菜單將如圖12所示。
圖12. 使能RTP模式后的綁定配置菜單。
有各種不同的軟件可用于分析以太網上的報頭。本應用筆記中使用Wireshark?軟件。用戶可這個軟件。關于Wireshark的更多信息,請參見。
互操作性是指各種不同系統和組織間無縫協同工作的能力。與其它產品可以實現互操作的器件要么遵循公開的接口標準,要么容許改變配置,將一個產品的接口直接轉換為另一個產品的接口。通過了解其它TDMoP器件生成的報文內容,Maxim的器件可以很容易地與其它TDMoP器件的報文配置相匹配。
-
評論
查看更多