BSDCan2011 - Final (with audio).5

BSDCan 2011
The Technical BSD Conference

Speakers
Randall Stewart
Schedule
Day Tutorials - 1 - 2011-05-11
Room DMS 1140
Start time 09:00
Duration 07:00
Info
ID 243
Event type Lecture
Track Tutorial

SCTP Introduction and Workshop

A firehose full of SCTP

SCTP is a relatively new transport protocol that can be used in any situation in which one wants reliable data communication, much like TCP.

This tutorial will go over some of the basic's of how SCTP works and also dive into how to write software with the SCTP stack in FreeBSD.

SCTP Introduction and Workshop - Randall Stewart

SCTP is a relatively new transport protocol that can be used in any situation in which one wants reliable data communication, much like TCP. However SCTP offers some real advantages that TCP does not offer, such as:

The ability to send un-ordered messages The ability to have parrallel ordered streams of messages that preserves message order with respect to one stream but not with respect to others. An unreliable option that allows a sender to "give up" sending a message if it does not arrive in a timely fashion. Redundancy via multi-homing at the transport layer, a feature some in the TCP world are just beginning to think about. Message boundary preservation so an application sends and receives messages and does not have to worry about message framing. This day long tutorial will begin with a half day lecture that will expose you to the basics of the protocol. Walking you through the mechanisms that give the protocol the flexibility to offer the feature set it does. In the second half of the tutorial we will walk through how a user interacts with the socket API to activate and use these features. Looking at a number of examples including:

Connecting with multiple addresses to a peer. How to send data on the third leg of the setup handshake. When and how to use multiple streams. A survey of the large number of socket options that SCTP gives the application to control the association. How to send data with various order and reliability characteristics How to use the authentication module. How to add new addresses to an existing association. The second half of the tutorial will assume that the attendee can follow along in the 'C' programming language and has some familiarity with the socket API.

Randall Stewart is a Distinguished Engineer for Huawei Inc., and is a FreeBSD commit-ter that maintains the SCTP stack in FreeBSD. In past lives Randall has been a Cisco Distinguished Engineer, and a Member of Technical Staff for Motorola, NYNEX S&T, Bell Northern Research, Fijitsu Network Switching, and AT&T communications. His work has always focused on *NIX Operating Systems, Fault tolerance and base infrastructure (e.g. Rserpool RFC5351-6). More information can be found at: http://www.sctp-consultant.com