Project

General

Profile

Community TDMSS7 Network » History » Version 19

laforge, 04/04/2022 03:39 PM

1 6 laforge
{{>toc}}
2
3 1 laforge
h1. Community TDM/ISDN/SS7 Network
4
5 13 laforge
This wiki page describes some ideas about a _work in progress_ creating a community TDM/ISDN/SS7 network, enabling retronetworking enthusiasts around the world to interconnect their TDM equipment, such as PBXs, telephony switches, RAS servers, access multiplers, etc.
6 1 laforge
7 2 laforge
For classic analog telephones, there is the C*NET (https://www.ckts.info/).  This is basically the same idea but for one later generation of technology: Digital TDM/PDH/ISDN/SS7 networks.  And of course one can connect analog telephone/modem equipment via ISDN/SS7, if that is desired.
8 1 laforge
9 18 manawyrm
h2. Current Network
10 17 laforge
11
{{graphviz_link()
12
graph G {
13
  newrank=true;
14
  divo [shape=house,label="Central Office\nyate + TE820"];
15
  subgraph cluster_1 {
16
    label="@laforge / Berlin";
17
    uei1a [label="ISDN Phone"];
18
    uea1a [label="Analog Phone"];
19
    ues1a [label="SIP Phone"];
20
    pbx1a [label="Auerswald COMmander\nBasic 2 PBX"];
21
    pm3a [label="Livingston\nPortmaster 3\nRAS Server"];
22
    ice1a [shape=box3d,label="icE1usb\nGPS-DO\nosmo-e1d"];
23
    uei1a -- pbx1a [label="ISDN\nBRI"];
24
    uea1a -- pbx1a [label="POTS"];
25
    pbx1a -- divo [label="ISDN\nPRI"];
26
    pm3a -- divo [label="ISDN\nPRI"];
27
    ice1a -- divo [label="ISDN\nPRI"];
28
    ues1a -- divo [label="SIP"];
29
  }
30
31
  subgraph cluster_2 {
32
    label="@manawyrm / Kiel";
33
    ue2a [label="ISDN Phone\n"];
34
    pbx2 [label="Auerswald COMmander\nBasic 2 PBX"];
35
    ice2 [shape=box3d,label="icE1usb\nGPS-DO\nosmo-e1d\n"];
36
    ue2a -- pbx2 [label="ISDN\nBRI"];
37
    pbx2 -- ice2 [label="ISDN\nPRI"];
38
  }
39 19 laforge
40
  subgraph cluster_3 {
41
    label="@roox / Franconia";
42
    pbx3 [label="Auerswald COMmander\nBasic 2 PBX"];
43
    ice3 [shape=box3d,label="icE1usb\nGPS-DO\nosmo-e1d\n"];
44
    ue3a -- pbx3 [label="ISDN\nBRI"];
45
    pbx3 -- ice3 [label="ISDN\nPRI"];
46
  }
47
48
  subgraph cluster_4 {
49
    label="@gruetzkopf";
50
    pbx4 [label="PBX"];
51
    ice4 [shape=box3d,label="icE1usb\nGPS-DO\nosmo-e1d\n"];
52
    ue4a -- pbx4 [label="ISDN\nBRI"];
53
    pbx4 -- ice4 [label="ISDN\nPRI"];
54
  }
55
56 17 laforge
  internet [shape=hexagon,label="Public Internet"];
57
  cnet [shape=hexagon,label="C*NET"];
58
  ice1a -- internet [label="OCTOI\nTDMoIP"];
59
  ice2 -- internet [label="OCTOI\nTDMoIP"];
60 19 laforge
  ice3 -- internet [label="OCTOI\nTDMoIP"];
61
  ice4 -- internet [label="OCTOI\nTDMoIP"];
62 17 laforge
  divo -- cnet [label="IAX2"];
63
}
64
}}
65
66 14 laforge
h2. Mailing List
67
68 15 laforge
We now have a public "mailing list":https://lists.retronetworking.org/postorius/lists/octoi.lists.retronetworking.org/ for discussion among interested parties. The list has a public "archive":https://lists.retronetworking.org/hyperkitty/list/octoi@lists.retronetworking.org/
69 14 laforge
70 1 laforge
h2. Underlying Protocol / Hardware
71
72 12 laforge
The underlying transport protocol is being designed around the wiki page [[e1-t1-adapter:Proposed_efficient_TDMoIP]].  The initial hardware implementation is going to be an [[e1-t1-adapter:icE1usb]] attached to some kind of [embedded] Linux sytem like a Raspberry Pi.  The unique property about the icE1usb is that it contains a GPS-DO to ensure the same clock reference is used in all locations.
73 1 laforge
74
h2. TDM layer hub / cross-connect
75
76
The TDM layer would allow to interconnect any E1 line (or even only some timeslots of a line) with any other E1 line.  It doesn't interpret the payload but just passes it around.
77
78 3 laforge
{{graphviz_link()
79
graph G {
80
  hub [shape=box, label="TDMoIP hub\ncross-connect\nin public internet"];
81
  subgraph cluster_1 {
82 5 tnt
    label="Hobbyist A";
83 3 laforge
    ad1 [label="Access Device\n"];
84
    pbx1 [label="PBX"];
85
    pbx1 -- ad1 [label="E1"];
86
  }
87
  subgraph cluster_2 {
88 5 tnt
    label="Hobbyist B";
89 3 laforge
    ad2 [label="Access Device\n"];
90
    frr [label="FrameRelay Device"];
91
    frr -- ad2 [label="E1"];
92
  }
93
  subgraph cluster_3 {
94 5 tnt
    label="Hobbyist C";
95 3 laforge
    ad3 [label="Access Device\n"];
96
    ras [label="RAS Server"];
97
    ras -- ad3 [label="E1"];
98
  }
99
  ad1 -- hub [label="TDMoIP\nInternet"];
100
  ad2 -- hub [label="TDMoIP\nInternet"];
101
  ad3 -- hub [label="TDMoIP\nInternet"];
102
}
103
}}
104 1 laforge
105
h2. Services
106
107
h3. Classic SS7
108
109
Classic SS7 (MTP2/MTP3 plus TUP/ISUP) would permit to connect STPs and SPCs, such as those of telephony exchanges / switches.
110
111
A user connecting to the SS7 service would need to be allocated point codes.
112
113
114
h3. ISDN PRI
115
116
ISDN (Q.921/Q.931) would permit to connect equipment like PBXs.   The hub offers the NT / central office function, while the client side implements the TE function.
117
118 16 manawyrm
A user connecting to the ISDN PRI service would need to be allocated telephone numbers in the dialling plan.
119 1 laforge
120
On the hub side, the PRI lines and ISDN service could be terminated in a yate or Freeswitch instance.
121
122 4 laforge
{{graphviz_link()
123
graph G {
124
  hub [shape=box, label="TDMoIP hub\ncross-connect\nin public internet"];
125
  subgraph cluster_1 {
126 5 tnt
    label="Hobbyist A";
127 4 laforge
    ad1 [label="Access Device\n"];
128
    pbx1 [label="PBX"];
129
    phone1a [label="Phone"];
130
    modem1b [label="Modem"];
131
    ta1c [label="ISDN TA"];
132
    pbx1 -- ad1 [label="E1"];
133
    phone1a -- pbx1 [label="POTS"];
134
    modem1b -- pbx1 [label="POTS"];
135
    ta1c -- pbx1 [label="ISDN-BRI"];
136
  }
137
  subgraph cluster_2 {
138 5 tnt
    label="Hobbyist B";
139 4 laforge
    ad2 [label="Access Device\n"];
140
    pbx2 [label="PBX"];
141
    phone2a [label="Phone"];
142
    modem2b [label="Modem"];
143
    ta2c [label="ISDN TA"];
144
    pbx2 -- ad2 [label="E1"];
145
    phone2a -- pbx2 [label="POTS"];
146
    modem2b -- pbx2 [label="POTS"];
147
    ta2c -- pbx2 [label="ISDN-BRI"];
148
  }
149
  subgraph cluster_3 {
150 5 tnt
    label="Hobbyist C";
151 4 laforge
    ad3 [label="Access Device\n"];
152
    pbx3 [label="PBX"];
153
    phone3a [label="Phone"];
154
    modem3b [label="Modem"];
155
    ta3c [label="ISDN TA"];
156
    pbx3 -- ad3 [label="E1"];
157
    phone3a -- pbx3 [label="POTS"];
158
    modem3b -- pbx3 [label="POTS"];
159
    ta3c -- pbx3 [label="ISDN-BRI"];
160
  }
161
  ad1 -- hub [label="TDMoIP\nInternet"];
162
  ad2 -- hub [label="TDMoIP\nInternet"];
163
  ad3 -- hub [label="TDMoIP\nInternet"];
164
}
165
}}
166 1 laforge
167
h3. SCCP/MAP/TCAP
168
169
SCCP/MAP/TCAP on top of SS7 can be used to provide interworking between private cellular networks.
170
171
h3. ISDN BRI
172
173
ISDN BRI service is expected to initially only be obtained indirectly: By connecting a ISDN PRI capable PBX to the hub, and then locally connecting to ISDN BRI ports of the PBX.
174
175 11 laforge
At a later point, one could consider implementing a ISDN BRI version of the TDMoIP protocol and some software implementation for ISDN BRI cards that support NT mode.  One notable topic is clocking:  The hardware would either need a GPS-DO (like [[e1-t1-adapter:icE1usb]] has for E1) or at the very least a VCTCXO that can be disciplined by software to match the timing recovered from the IP packet side.  See #5436 and #5417 
176 2 laforge
177
h3. Frame Relay
178
179
A Frame Relay network could be implemented on top of the TDM hub.  In this case, framed E1 would be used with groups of 64k timeslots (typically all 31) building the underlying FR transport medium.
180 8 laforge
181
h3. POTS / analog telephony
182
183
There is no plan to directly support analog telephony.  Rather, analog ports for phones, modems, etc. can be provided by means of ISDN PBXs connecting via ISDN PRI  (and possibly later ISDN BRI)
Add picture from clipboard (Maximum size: 48.8 MB)