Toward Formal Modelling and Analysis of SCTP Connection Managment Somsak Vanit-Anunchai School of Telecommunication Engineering Institute of Engineering.

Slides:



Advertisements
Similar presentations
Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
Advertisements

Camarillo / Schulzrinne / Kantola November 26th, 2001 SIP over SCTP performance analysis
RivuS Stream Control Transmission Protocol (SCTP) on BSD By- Jayesh Rane Nitin Kumbhar Kedar Sovani PICT. Guides: Prof. Rajesh B. Ingle, PICT. Mr. Adityashankar.
Transmission Control Protocol (TCP)
Stream Control Transmission Protocol (SCTP)
TCP/IP Protocol Suite 1 Chapter 13 Upon completion you will be able to: Stream Control Transmission Protocol Be able to name and understand the services.
TCP/IP Protocol Suite 1 Chapter 13 Upon completion you will be able to: Stream Control Transmission Protocol Be able to name and understand the services.
UNIT-IV Computer Network Network Layer. Network Layer Prepared by - ROHIT KOSHTA In the seven-layer OSI model of computer networking, the network layer.
(4.4) Internet Protocols Layered approach to Internet Software 1.
UDP - User Datagram Protocol UDP – User Datagram Protocol Author : Nir Shafrir Reference The TCP/IP Guide - ( Version Version.
Socket Programming.
Sweep-line Analysis of DCCP Connection Management Somsak Vanit-Anunchai Jonathan Billington Guy Edward Gallasch 25 th October 2006.
Encapsulation Security Payload Protocol Lan Vu. OUTLINE 1.Introduction and terms 2.ESP Overview 3.ESP Packet Format 4.ESP Fields 5.ESP Modes 6.ESP packet.
Stream Control Transmission Protocol 網路前瞻技術實驗室 陳旻槿.
FIRST 2002 John Kristoff - DePaul University 1 UDP Scanning John Kristoff DePaul University Chicago, IL
1 SCTP Tutorial, Ottawa 7/2004 © 2004 Randall Stewart (Cisco Systems), Phill Conrad (University of Delaware). All rights reserved. Bits, Bytes, and Chunks.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Transport Protocols Slide 1 Transport Protocols.
1 Summer Report Reporter : Yi-Cheng Lin Data: 2008/09/02.
Internetworking Fundamentals (Lecture #2) Andres Rengifo Copyright 2008.
Process-to-Process Delivery:
Gursharan Singh Tatla Transport Layer 16-May
Reference Models and Standards. Reference Models (1) A reference model is the formal name for a protocol suite – a collection of protocols and layer definitions.
CPN'09, Aarhus, Denmark, October 19-21, 2009 Verification of Railway Interlocking Tables using Coloured Petri Nets * Somsak Vanit-Anunchai
Chapter 16 Stream Control Transmission Protocol (SCTP)
Signaling & Network Control Dr. Eng. Amr T. Abdel-Hamid NETW 704 Winter 2006 Intelligent Networks.
11 September 2015 RE Meyers, Ms.Ed. CCENT ICND1 Exam Topics Review Describe the Operation of Data Networks: Network Diagrams and Data Paths.
Presentation on Osi & TCP/IP MODEL
Transport Layer Advanced Features1 Chapter 2 Transport Layer Advance Features Some of these slides are copyrighted by: Computer Networking: A Top Down.
Adaptive Failover Mechanism Motivation End-to-end connectivity can suffer during net failures Internet path outage detection and recovery is slow (shown.
Protocols and the TCP/IP Suite
1 Section 10.9 Internet Security Association and Key Management Protocol ISAKMP.
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications.
University of the Western Cape Chapter 12: The Transport Layer.
1 The Internet and Networked Multimedia. 2 Layering  Internet protocols are designed to work in layers, with each layer building on the facilities provided.
Transport Layer: TCP and UDP. Overview of TCP/IP protocols Comparing TCP and UDP TCP connection: establishment, data transfer, and termination Allocation.
SCTP: Stream Control Transfer Protocol Naveen Kumar Department of Computer and Information Sciences *Some slides have been taken from Prof. Amer.
CCNA 1 v3.0 Module 11 TCP/IP Transport and Application Layers.
23.1 Chapter 23 Process-to-Process Delivery: UDP, TCP, and SCTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
3 June Paris Seminar Modelling and Analysis of TCP’s Connection Management Procedures Jonathan Billington and Bing Han Computer Systems Engineering.
What is SIGTRAN?. SIGTRAN Signaling Transport (SIGTRAN) is an Internet Engineering Task Force (IETF) standard for transporting Public-Switched Telephone.
SIP working group IETF#70 Essential corrections Keith Drage.
1.0 SIGTRAN protocol. Objectives SIGTRAN application in R4 network SIGTRAN protocol structure and message introduction SIGTRAN signaling flow Upon completion.
Draft-ietf-rddp-security-02 Summary of outstanding issues August 4, 2004 Jim Pinkerton.
Computer Networks23-1 PART 5 Transport Layer. Computer Networks23-2 Position of Transport Layer Responsible for the delivery of a message from one process.
1 Chapters 2 & 3 Computer Networking Review – The TCP/IP Protocol Architecture.
STREAM CONTROL TRANSMISSION PROTOCOL (SCTP)
SCTP: A new networking protocol for super-computing Mohammed Atiquzzaman Shaojian Fu Department of Computer Science University of Oklahoma.
Teacher:Quincy Wu Presented by: Ying-Neng Hseih
Stream Control Transmission Protocol
Multimedia Streaming I. Fatimah Alzahrani. Introduction We can divide audio and video services into three broad categories: streaming stored audio/video,
1 Review – The Internet’s Protocol Architecture. Protocols, Internetworking & the Internet 2 Introduction Internet standards Internet standards Layered.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 16 Stream Control Transmission.
CIS679: UDP and Multimedia r Review of last lecture r UDP and multimedia.
SCTP (Stream Control Transmission Protocol) Chanmin Park ( 박 찬 민 ) CARES lab.
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications.
Ch23 Ameera Almasoud 1 Based on Data Communications and Networking, 4th Edition. by Behrouz A. Forouzan, McGraw-Hill Companies, Inc., 2007.
Chapter 9: Transport Layer
Instructor Materials Chapter 9: Transport Layer
Slides taken from: Computer Networking by Kurose and Ross
Chapter 16 Stream Control Transmission Protocol (SCTP)
Long-haul Transport Protocols
PART 5 Transport Layer Computer Networks.
SCTP: Stream Control Transport Protocol
SCTP Team 2: Alexia Allaway Johnson Nguyen Nnamdi Nwajagu Scott Seo
TCP - Part I Relates to Lab 5. First module on TCP which covers packet format, data transfer, and connection management.
Stream Control Transmission Protocol (SCTP)
1 TRANSMISSION CONTROL PROTOCOL / INTERNET PROTOCOL (TCP/IP) K. PALANIVEL Systems Analyst, Computer Centre Pondicherry University, Puducherry –
*Supported by National Research Council of Thailand
Course: CISC 856: TCP/IP and Upper Layer Protocols
EEL 5718 Computer Communications
Presentation transcript:

Toward Formal Modelling and Analysis of SCTP Connection Managment Somsak Vanit-Anunchai School of Telecommunication Engineering Institute of Engineering Suranaree University of Technology Nakhon Ratchasima Thailand 22 October 2008

CPN' /10/2008 Outline Introduction to SCTP Motivation SCTP-Packet and VTAG Message sequence chart Tie Tags An error in RFC 4960 Procedure-based modelling approach SCTP-CPN model Analysis Problems Discussion Conclusions and Future Work

CPN' /10/2008 What is Stream Control Transmission Protocol (SCTP)? A transport protocol originally developed by SIGTRANS group, Internet Engineering Task Force (IETF). It became Request For Comments (RFC) 2960 in October Aims to overcome the weakness of TCP. Using four-way handshake and a cookie mechanism to prevent the Denial of Service Attacks (DoS). Internet Protocol (IP) Transmission Control Protocol (TCP) Datagram Congestion Control Protocol User Datagram Protocol (UDP) Network Layer Transport Layer SCTP

CPN' /10/2008 Motivations Discrepancies between RFC 2960 and Implementation Guide (IG). SCTP Errata published in RFC 4460 (Sep. 2007). Revised SCTP spec. – RFC 4960 published in Sep  Q1. Are there any defects left? Q2. Are new deflect introduced in the new spec? Experiment with the Procedure-based modelling approach.

CPN' /10/2008 SCTP Packet Format An SCTP Packet comprises a header and a number of chunks.

CPN' /10/2008 Verification Tag (VTAG) Verification Tag is used to protect the association from blind attacks. An endpoint keeps two values of verification tag: “My Verification Tag” and “Peer’s Verification Tag”. In general, Any received packets containing a verification tag di ff ering from “My Verification Tag” will be discarded.

CPN' /10/2008 Typical message sequence: Connection Setup ESTABLISHED COOKIE-ECHOED CLOSED Init (vtag=0, itag=Ax) InitAck (vtag=Ax,itag=Zx, CK[Zx,Ax]) [ASSOCIATE] COOKIE-WAIT CookieEcho (vtag=Zx,CK[Zx,Ax]) ESTABLISHED CookieAck (vtag=Ax) Endpoint A Initial Verification Tag = Ax Endpoint Z Initial Verification Tag = Zx

CPN' /10/2008 Typical message sequence: Connection Closedown CLOSED No more outstanding data SHUTDOWN- RECEIVED ESTABLISHED Shutdown (vtag=Zx) ShutdownAck (vtag=Ax) SHUTDOWN-PENDING SHUTDOWN-SENT ShutdownComplete (vtag=Zx) CLOSED Endpoint AEndpoint Z [SHUTDOWN] No more outstanding data SHUTDOWN- ACK-SENT

CPN' /10/2008 Tie-Tag Modeling Tie-Tags is a main contribution of this paper. Tie-Tags are copies of two verification tags. RFC2960  Tie Tags being stored in the cookie. RFC4960  Tie Tags stored in both cookie and TCB. In TCB  “Local Tag” and “ Peer’sTag”. (definitions) In cookie  “Local Tie-Tag”and “Peer’s Tie-Tag”. Thus a cookie contains a pair of VTAG and a pair of Tie-tag. TCB contains a pair of VTAG and a pair of Tie-tag. The Tie-Tags are used to tie the received cookie of the new association with the old association.  Table 2 section of RFC 4960 TCB = Transmission Control Block containing state variables for SCTP connection.

CPN' /10/2008 An error in section of RFC 4960 (but the implementation is correct) Local VTAG in Cookie Peer’s VTAG in Cookie

CPN' /10/2008 Motivations Discrepancies between RFC 2960 and Implementation Guide (IG). SCTP Errata published in RFC 4460 (Sep. 2007). Revised SCTP spec. – RFC 4960 published in Sep  Q1. Are there any defects left?   don’t know yet Q2. Are new deflect introduced in the new spec?  A: yes! Experiment with the Procedure-based modelling approach.

CPN' /10/2008 What is the Procedure-based modelling approach? A CPN model usually divided into several CPN subpages according to protocol’s state  state-based.  the model is easy to read. For a protocol procedure, an event is when an endpoint receives a packet or user command. Events in difference states may cause the endpoint acting in the same way regardless of states. Event-processing style groups the similar events into the same CPN subpage.  the model is very compact but difficult to read.

CPN' /10/2008 What is the Procedure-based modelling approach? In order to develop a CPN model which is not only easy to read but also small. Billington proposed the procedure-based approach in [FI08] “Coloured Petri Nets Modelling of an Evolving Internet Standard: the Datagram Congestion Control Protocol. Fundamenta Informaticae, In Press, 2008” Following the Procedure-based style, we group events according its functionalities, e.g. Typical procedures; Error handling procedures (Unexpected events). In FI08 we built an event-processing CPN model from a state- based CPN model. Then a procedure-based CPN model was developed from the event-processing CPN model. Q3. What if we develop a procedure-based CPN model directly from the narrative specification?

CPN' /10/2008 SCTP_Procedure Normal Event Unexpected Event RetransmissionAbort Check InvalidVTAG EstablishShutDown Init_InitAckCookieEcho _CookieAck Shutdown RestartSimultaneous Open Delayed Cookie Tag_Match Hierarchy – SCTP-CPN Model 4-level, 2 ML functions 6 places 54 executable transitions

CPN' /10/2008

Top-level page

CPN' /10/2008 Typical message sequence: Connection Setup

CPN' /10/2008 One side opens  Simultaneous  Open One side closes  Simultaneous  Closed One side aborts  Analysis Results Number of retransmission - Init, InitAck, CookieEcho, CookieAck

CPN' /10/2008 Potential Problem 1-Case A Open side opens Source of the problem : CookieAck is so delayed

CPN' /10/2008 Potential Problem 2 – Case B Simultaneous Open

CPN' /10/2008 Discussion This paper focuses on modelling. Analysis is used to debug the model. It took me two months – part time to study the protocol, create and debug the model. Why the problems is called the potential problems.  We are not so sure if they are really problem.  We do not model time-stamp and user behavior. While developing the model, we find an error in Table 2 section of RFC This was confirmed by IETF. 

CPN' /10/2008 Conclusions The difficulty of designing a protocol is again witnessed by the defect list in RFC This paper presents a CPN model of SCTP connection management. We still need more exhaustive work on the analysis part. The procedure-based style suites SCTP specification. One error and two potential problems were found. ModellingAnalysis

CPN' /10/2008 Further work Investigate complex scenarios when unexpected CookieEcho chunks received. Investigate the user interface, time stamp, stale packets, and cookie authentication. Future work Multi-homing Security attacks against SCTP

CPN' /10/2008 Thankyou! Any questions?

CPN' /10/2008 Chunk - Declaration

CPN' /10/2008 TCB - Declaration