equal
deleted
inserted
replaced
101 * |
101 * |
102 * \param msg the message |
102 * \param msg the message |
103 */ |
103 */ |
104 virtual void CreateSessionResponse (CreateSessionResponseMessage msg) = 0; |
104 virtual void CreateSessionResponse (CreateSessionResponseMessage msg) = 0; |
105 |
105 |
|
106 struct BearerContextRemoved |
|
107 { |
|
108 uint8_t epsBearerId; |
|
109 }; |
|
110 |
|
111 /** |
|
112 * Delete Bearer Request message, see 3GPP TS 29.274 Release 9 V9.3.0 section 7.2.9.2 |
|
113 */ |
|
114 struct DeleteBearerRequestMessage : public GtpcMessage |
|
115 { |
|
116 std::list<BearerContextRemoved> bearerContextsRemoved; |
|
117 }; |
|
118 |
|
119 /** |
|
120 * \brief As per 3GPP TS 29.274 Release 9 V9.3.0, a Delete Bearer Request message shall be sent on the S11 interface by PGW to SGW and from SGW to MME |
|
121 * \param msg the message |
|
122 */ |
|
123 virtual void DeleteBearerRequest (DeleteBearerRequestMessage msg) = 0; |
|
124 |
|
125 |
|
126 |
106 |
127 |
107 /** |
128 /** |
108 * Modify Bearer Response message, see 3GPP TS 29.274 7.2.7 |
129 * Modify Bearer Response message, see 3GPP TS 29.274 7.2.7 |
109 */ |
130 */ |
110 struct ModifyBearerResponseMessage : public GtpcMessage |
131 struct ModifyBearerResponseMessage : public GtpcMessage |
160 * |
181 * |
161 * \param msg the message |
182 * \param msg the message |
162 */ |
183 */ |
163 virtual void CreateSessionRequest (CreateSessionRequestMessage msg) = 0; |
184 virtual void CreateSessionRequest (CreateSessionRequestMessage msg) = 0; |
164 |
185 |
|
186 struct BearerContextToBeRemoved |
|
187 { |
|
188 uint8_t epsBearerId; |
|
189 }; |
|
190 |
|
191 /** |
|
192 * Delete Bearer Command message, see 3GPP TS 29.274 Release 9 V9.3.0 section 7.2.17.1 |
|
193 */ |
|
194 struct DeleteBearerCommandMessage : public GtpcMessage |
|
195 { |
|
196 std::list<BearerContextToBeRemoved> bearerContextsToBeRemoved; |
|
197 }; |
|
198 |
|
199 /** |
|
200 * \brief As per 3GPP TS 29.274 Release 9 V9.3.0, a Delete Bearer Command message shall be sent on the S11 interface by the MME to the SGW |
|
201 */ |
|
202 virtual void DeleteBearerCommand (DeleteBearerCommandMessage msg) = 0; |
|
203 |
|
204 |
|
205 struct BearerContextRemovedSgwPgw |
|
206 { |
|
207 uint8_t epsBearerId; |
|
208 }; |
|
209 |
|
210 /** |
|
211 * Delete Bearer Response message, see 3GPP TS 29.274 Release 9 V9.3.0 section 7.2.10.2 |
|
212 */ |
|
213 struct DeleteBearerResponseMessage : public GtpcMessage |
|
214 { |
|
215 std::list<BearerContextRemovedSgwPgw> bearerContextsRemoved; |
|
216 }; |
|
217 |
|
218 /** |
|
219 * \brief As per 3GPP TS 29.274 Release 9 V9.3.0, a Delete Bearer Command message shall be sent on the S11 interface by the MME to the SGW |
|
220 * \param msg the message |
|
221 */ |
|
222 virtual void DeleteBearerResponse (DeleteBearerResponseMessage msg) = 0; |
165 |
223 |
166 /** |
224 /** |
167 * Modify Bearer Request message, see 3GPP TS 29.274 7.2.7 |
225 * Modify Bearer Request message, see 3GPP TS 29.274 7.2.7 |
168 */ |
226 */ |
169 struct ModifyBearerRequestMessage : public GtpcMessage |
227 struct ModifyBearerRequestMessage : public GtpcMessage |
198 MemberEpcS11SapMme (C* owner); |
256 MemberEpcS11SapMme (C* owner); |
199 |
257 |
200 // inherited from EpcS11SapMme |
258 // inherited from EpcS11SapMme |
201 virtual void CreateSessionResponse (CreateSessionResponseMessage msg); |
259 virtual void CreateSessionResponse (CreateSessionResponseMessage msg); |
202 virtual void ModifyBearerResponse (ModifyBearerResponseMessage msg); |
260 virtual void ModifyBearerResponse (ModifyBearerResponseMessage msg); |
|
261 virtual void DeleteBearerRequest (DeleteBearerRequestMessage msg); |
203 |
262 |
204 private: |
263 private: |
205 MemberEpcS11SapMme (); |
264 MemberEpcS11SapMme (); |
206 C* m_owner; |
265 C* m_owner; |
207 }; |
266 }; |
219 |
278 |
220 template <class C> |
279 template <class C> |
221 void MemberEpcS11SapMme<C>::CreateSessionResponse (CreateSessionResponseMessage msg) |
280 void MemberEpcS11SapMme<C>::CreateSessionResponse (CreateSessionResponseMessage msg) |
222 { |
281 { |
223 m_owner->DoCreateSessionResponse (msg); |
282 m_owner->DoCreateSessionResponse (msg); |
|
283 } |
|
284 |
|
285 template <class C> |
|
286 void MemberEpcS11SapMme<C>::DeleteBearerRequest (DeleteBearerRequestMessage msg) |
|
287 { |
|
288 m_owner->DoDeleteBearerRequest (msg); |
224 } |
289 } |
225 |
290 |
226 template <class C> |
291 template <class C> |
227 void MemberEpcS11SapMme<C>::ModifyBearerResponse (ModifyBearerResponseMessage msg) |
292 void MemberEpcS11SapMme<C>::ModifyBearerResponse (ModifyBearerResponseMessage msg) |
228 { |
293 { |
245 MemberEpcS11SapSgw (C* owner); |
310 MemberEpcS11SapSgw (C* owner); |
246 |
311 |
247 // inherited from EpcS11SapSgw |
312 // inherited from EpcS11SapSgw |
248 virtual void CreateSessionRequest (CreateSessionRequestMessage msg); |
313 virtual void CreateSessionRequest (CreateSessionRequestMessage msg); |
249 virtual void ModifyBearerRequest (ModifyBearerRequestMessage msg); |
314 virtual void ModifyBearerRequest (ModifyBearerRequestMessage msg); |
|
315 virtual void DeleteBearerCommand (DeleteBearerCommandMessage msg); |
|
316 virtual void DeleteBearerResponse (DeleteBearerResponseMessage msg); |
250 |
317 |
251 private: |
318 private: |
252 MemberEpcS11SapSgw (); |
319 MemberEpcS11SapSgw (); |
253 C* m_owner; |
320 C* m_owner; |
254 }; |
321 }; |
274 void MemberEpcS11SapSgw<C>::ModifyBearerRequest (ModifyBearerRequestMessage msg) |
341 void MemberEpcS11SapSgw<C>::ModifyBearerRequest (ModifyBearerRequestMessage msg) |
275 { |
342 { |
276 m_owner->DoModifyBearerRequest (msg); |
343 m_owner->DoModifyBearerRequest (msg); |
277 } |
344 } |
278 |
345 |
279 |
346 template <class C> |
280 |
347 void MemberEpcS11SapSgw<C>::DeleteBearerCommand (DeleteBearerCommandMessage msg) |
281 |
348 { |
282 |
349 m_owner->DoDeleteBearerCommand (msg); |
|
350 } |
|
351 |
|
352 template <class C> |
|
353 void MemberEpcS11SapSgw<C>::DeleteBearerResponse (DeleteBearerResponseMessage msg) |
|
354 { |
|
355 m_owner->DoDeleteBearerResponse (msg); |
|
356 } |
283 |
357 |
284 |
358 |
285 |
359 |
286 |
360 |
287 } //namespace ns3 |
361 } //namespace ns3 |