传统SS7网络中的二层是MTP2. ITU-T Q.703中规定它的帧(SS7中的术语叫Signal Unit)结构:
,''''|''''''''''|''''''''''|'''''+''|'''''|''|''''|''|'''''|'''''|
| F | CK | SIF | SIO|/ | LI |F |FSN |B BSN | F |
| | | | | /| |I | |I | | |
|____|__________|__________|_____|__+_____|B_|____|B_|_____|_____|
(这里是传送数据的MSU)
粗看,可能以为就如一般的二层协议的帧一样,会是由Flag,控制信息,地址,checksum等组成。
如果看仔细一点,跟其他常见的二层链路协议,比如Ethernet, Frame Relay, PPP等对比一下。比如Ethernet
的帧:
+------------+------------+------+------------------+--------------+
| Destination| Source | | | |
| MAC | MAC | Ether| Data | CRC Checkum |
| Address | Adress | Type | | |
+------------+------------+------+------------------+--------------+
(Ethernet Type II Frame)
可以看到,Ethernet帧中有地址域(其他常见的二层协议Frame Relay,PP的帧也由地址域),而MTP2的帧中没
有任何地址信息。
其实这和传统SS7网络的特殊性有关。
1. 一条MTP2 link物理上怎么连接?是由一根E1/T1或者Sonet/SDH 将2个节点连起来,使用其中一个64K的时隙。一个时隙也仅仅连接2个机器,是绑死的。所以一个机器在收到MTP2的帧的时候不需要查看地址,不需要寻址,就知道谁发给谁。这种连接方法叫single drop。
而Ethernet则不同,一条网线可能连多台机器,那么在发送的帧中就需要地址来确定目标机器。这种连线方
法似乎叫multi-drop。
2. 传统SS7网络中,MTP2这一层不做交换。交换啊路由啊由上面一层MTP3去做。而显然,Ethernet接个以太交
换机,就在二层做交换了, 交换自然要求帧中有用于寻址的域。
-千里