SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical...

22
SCTP for Vertical Handover 경북대학교 고석주 [email protected]

Transcript of SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical...

Page 1: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

SCTP for Vertical Handover

경북대학교

고석주

[email protected]

Page 2: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

2/22

SCTP

Stream Control Transmission Protocol

RFC 2960 (October 2000)

Two Major Extensions

PR-SCTP (Partial Reliable SCTP): RFC 3758

Dynamic Address Reconfiguration (ADD-IP): I-D

IETF Transport Area (TSV) WG

Sockets API extensions for (SCTP)

SCTP Implementer's Guide

Page 3: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

3/22

Related Links

SCTP Implementations

Linux (since Kernel 2.6.0)

http://www.kernel.org/

LK-SCTP

http://sourceforge.net/projects/lksctp

SCTPLIB: User Space Implementation

http://www.sctp.de/sctp.html

ns-2 for SCTP

http://www.cis.udel.edu/~iyengar/research/

Page 4: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

4/22

SCTP Architecture

The 3rd Transport Protocol (next to TCP and UDP)

Protocol ID = 132

(cf.) TCP = 6, UDP = 17

Page 5: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

5/22

SCTP Features

Similarly to TCP

Connection-Oriented Unicast protocol

Reliable and Full duplex transmission

TCP-friendly flow and congestion control

Differently from TCP

Message-Oriented (data chunks)

Multi-Streaming

Multi-Homing

4-Way Connection Setup

3-Way Connection Shutdown

Page 6: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

6/22

SCTP Multi-Streaming

Multi-Streaming per Association

Stream ID

Stream Sequence Number (SSN)

Page 7: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

7/22

SCTP Multi-Homing

Multiple IP addresses per Host

One Primary Path

One or more Backup Paths (against path failure)

Page 8: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

8/22

SCTP Packet

Packet Format

Common Header (12 bytes)

Chunks (Data Chunk, Control Chunks)

Page 9: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

9/22

SCTP: Current Use

At present, SCTP is used for “Mission-Critical Reliable Transport” (instead of TCP):

Signaling transport over IP (for VoIP)

Transport between AAA servers

Transport between SIP servers (cf. 3GPP)

These (servers) are using the SCTP “multi-streaming” and “multi-homing” for backup path.

Page 10: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

10/22

SCTP: Challenge

<Question>

Could SCTP be used by end users (terminals) ?

If yes, one of the promising application areas is

“mobile SCTP (mSCTP)” SCTP handover

Page 11: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

11/22

Mobile SCTP (mSCTP)

mSCTP

mSCTP = SCTP with ASCONF(ADD-IP) extension

ASCONF extension

Dynamic IP Address Reconfiguration

During an association

ASCONF, ASCONF-ACK chunks

Three functions

Add a new IP address to the association

Change the primary IP address for the association

Delete the old IP address from the association

Page 12: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

12/22

mSCTP

mSCTP SCTP handover

mSCTP is used to support soft handover

For a moving terminal

Using the SCTP multi-homing feature

Using the ASCONF extension

In the transport layer

mSCTP does not rely on

Network Agents for Handover Tunnel (MIP FA)

Home address (MIP HoA)

Page 13: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

13/22

mSCTP Handover

mSCTP Handover Scenario

MN moves from location A to location B during a session

Correspondent Node

Access Router A

Access Router B

IP address 2

IP address 3

IP address 1

Overlap Region

Mobile Node

Internet

Mobile Node

Page 14: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

14/22

mSCTP: Control Flow

CorrespondentNode AR1

MobileNodeAR2

ASCONF(ADD-IP)/ASCONF-ACK MN detects AR2

AR2 is betterthan AR1

AR 1 link is down

ASCONF(Primary-Change)/ASCONF-ACK

ASCONF(DELETE-IP)/ASCONF-ACK

Page 15: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

15/22

Socket APIs for mSCTP (Linux)

API for ADD-IP and DELTE-IP

“sctp_bindx()”

int sctp_bindx(sockfd, sockaddr *addrs, addrcnt, flags);

API for Primary-Change

“SCTP_SET_PEER_PRIMARY_ADDR” Socket option

setsockopt(sd, IPPROTO_SCTP, SCTP_SET_PEER_PRIMARY_ADDR, *setpeerprim, len)

Page 16: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

16/22

mSCTP Handover

API sequences

Link-Up (new)Add-IP

setsockopt(PRIMARY_PEER_ADDR)

ASCONF & ACK

time

sctp_bindx(ADD)ASCONF & ACK

Link-Down (old)Delete-IP

Primary-Change

sctp_bindx(REMOVE)ASCONF & ACK

Page 17: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

17/22

mSCTP: TODO

Automatic IP Address Configuration for mSCTP

Link (up/down) IP address mSCTP

Page 18: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

18/22

Vertical Handover

Vertical versus Horizontal Hanover

Vertical Handover

Between Heterogeneous (Access) Networks

Multiple Network Interfaces (multi-homing)

Horizontal Handover

Between Homogeneous (Access) Networks

Single Network Interface (single-homing)

Page 19: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

19/22

Vertical Handover

Examples

3G BWA(WiBro)

3G WLAN

Page 20: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

20/22

mSCTP for Vertical Handover

Experimentation over Linux 2.6.10 & LK-SCTP

Page 21: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

21/22

Conclusions

Mobility Management

Location Management

MIP, SIP, etc

Handover Management

Network-Layer Solution: MIP Fast Handover

End-to-end Solution: mSCTP, SIP

SCTP (mSCTP) can be used

For soft handover (vertical handover)

Using the multi-homing feature

In the “end-to-end” transport layer

Page 22: SCTP for Vertical Handover - KNUprotocol.knu.ac.kr/tech/CPL-TR-07-03-msctp.pdf · SCTP for Vertical Handover 경북대학교 고석주 sjkoh@knu.ac.kr. 2/22 SCTP Stream Control Transmission

Thank you for your attention !!

[email protected]

http://protocol.knu.ac.kr/