Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP...
Transcript of Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP...
![Page 1: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/1.jpg)
SCTP User Message InterleavingIntegration and ValidationFelix WeinrankMichael TüxenIrene RüngelerErwin P. Rathgeb
1
![Page 2: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/2.jpg)
Outline
● Brief introduction to SCTP● Message interleaving and stream scheduler ● Integration and validation● Measurements and results● Outlook and future work
2
![Page 3: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/3.jpg)
SCTP Overview
Stream Control Transmission Protocol● Layer 4 protocol like TCP/UDP● Message oriented and multihomed● Originally designed for small messages● Used for WebRTC data channels
3
streams
association
![Page 4: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/4.jpg)
4
Interleaving and Scheduling
![Page 5: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/5.jpg)
Sender side Head-of-line Blocking● A large SCTP user message blocks all other messages in
any stream until completely sent
Message interleaving● Reduces Head-of-line Blocking ● Specified by IETF draft *
*https://tools.ietf.org/html/draft-ietf-tsvwg-sctp-ndata-07
5
Interleaving - why?
![Page 6: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/6.jpg)
Data transfer - non-interleaving
6
1. Stream scheduler selects stream2. Optional message fragmentation3. Stream scheduler keeps locked on
stream until all fragments of a single message have been sent
![Page 7: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/7.jpg)
Data transfer - non-interleaving
7
1. Stream scheduler selects stream2. Optional message fragmentation3. Stream scheduler keeps locked on
stream until all fragments of a single message have been sent
Example: WebRTC chat application- File transfer blocks chat messages
Head-of-line Blocking
![Page 8: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/8.jpg)
Data transfer - interleaving
8
1. Stream scheduler selects stream2. Optional message fragmentation3. Stream scheduler selects next
stream
![Page 9: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/9.jpg)
9
Integration and Validation
![Page 10: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/10.jpg)
Integration
● Integration follows IETF draft● iData parameter enables interleaving support● Interleaving is used if both peers announce the
extension support in the 4-way-handshake
10
![Page 11: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/11.jpg)
Validation
Wireshark● Packet flow inspection● I-Data support added
Packetdrill● Script based testing tool for transport protocols● Currently more than 120 interleaving specific tests● Same tests for OMNeT++/INET and FreeBSD
11
![Page 12: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/12.jpg)
Validation
External Interface● Interoperability tests between FreeBSD’s SCTP
implementation and OMNeT++/INET model
12
![Page 13: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/13.jpg)
Measurements - scenario
13
Bottleneck scenario● SCTP server and client● Random UDP background
traffic
![Page 14: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/14.jpg)
Measurements - scenario
Two competing streams● Stream 1
○ Saturated○ Large messages (1 - 128kB)○ Low priority
● Stream 2○ Unsaturated○ Small messages (8 - 16B)○ High priority
14
![Page 15: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/15.jpg)
Measurements - results
15
![Page 16: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/16.jpg)
Conclusion and Outlook
16
![Page 17: Irene Rüngeler SCTP User Message Interleaving Integration and Validation · 2019-09-19 · SCTP User Message Interleaving Integration and Validation Felix Weinrank Michael Tüxen](https://reader030.fdocuments.in/reader030/viewer/2022011816/5e7496cb34df777e2a52c47d/html5/thumbnails/17.jpg)
Conclusion
Conclusion● Message interleaving reduces head-of-line-blocking for
fragmented messages● Wireshark, Packetdrill and the external interface are
great tools to validate protocol operation
Outlook● Buffering improvements● New stream schedulers (e.g. weighted-fair-queueing) 17