1

私はこの分野に不慣れです。2 つの SMSC サービス プロバイダー接続があります。100 メッセージを送信した場合、50 メッセージは最初のサービス プロバイダーを経由し、残りの 50 メッセージは 2 番目のサービス プロバイダーを経由する必要があります。これは可能ですか?もしそうなら、それを行う方法は?

前もって感謝します

#1st service provider
group = smsc
smsc = smpp
smsc-id = A
interface-version = 34
host = xxxxx  
port = xxxx
system-id = xxxxx
smsc-password = xxxx
system-type = "default"
address-range = ""
transceiver-mode = true
source-addr-ton = 1
source-addr-npi = 1
dest-addr-ton = 1
dest-addr-npi = 1
bind-addr-ton = 1
bind-addr-npi = 1
log-level = 0
log-file = "/var/log/kannel/xxxxx.log"

#2nd service provider
group = smsc
smsc = smpp
smsc-id = B
interface-version = 34
host = xxxxx  
port = xxxx
system-id = xxxxx
smsc-password = xxxx
system-type = "default"
address-range = ""
transceiver-mode = true
source-addr-ton = 1
source-addr-npi = 1
dest-addr-ton = 1
dest-addr-npi = 1
bind-addr-ton = 1
bind-addr-npi = 1
log-level = 0
log-file = "/var/log/kannel/xxxxx.log" 
4

1 に答える 1

1

各ルートで smsc-id を同じ名前に設定すると、Kannel がこれを負荷分散します。1 つの SMSC がダウンした場合、すべてのメッセージは、稼働中の代替 SMSC 経由で送信されます。両方の SMSC が有効な場合、Kannel はランダムに 1 つを選択するので、おおよそ 50/50 の分散を実現する必要があります (ただし、正確に 50/50 ではありません)。

- 編集 -

申し訳ありませんが、実際に確認したところ、Kannel は最小のキューを持つ SMSC 経由で送信されるため、メッセージのスループットが低い場合、これが常に最初の SMSC になり、50/50 の分散には近づきません。これは、kannel ソース コードの gw/bb_smscconn.c のコード smsc2_rout() の下にあります。

于 2012-06-08T13:10:53.287 に答える