Sweep-line Analysis of DCCP Connection Management Somsak Vanit-Anunchai Jonathan Billington Guy Edward Gallasch 25 th October 2006.

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

Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Chapter 6 Transport Layer.
Transmission Control Protocol (TCP)
Transportation Layer. Very similar to the data link layer. – two hosts connected by a link or two hosts connected by a network differences: – When two.
BZUPAGES.COM 1 User Datagram Protocol - UDP RFC 768, Protocol 17 Provides unreliable, connectionless on top of IP Minimal overhead, high performance –No.
Transport Layer – TCP (Part1) Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
Chapter 7 – Transport Layer Protocols
Computer Networks 2 Lecture 2 TCP – I - Transport Protocols: TCP Segments, Flow control and Connection Setup.
- Reliable Stream Transport Service
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
EEC-484/584 Computer Networks Lecture 15 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
UDP - User Datagram Protocol UDP – User Datagram Protocol Author : Nir Shafrir Reference The TCP/IP Guide - ( Version Version.
The Transport Layer Chapter 6. The Transport Service Services Provided to the Upper Layers Transport Service Primitives Berkeley Sockets An Example of.
William Stallings Data and Computer Communications 7 th Edition (Selected slides used for lectures at Bina Nusantara University) Transport Layer.
CSEC Experimenting with Progress Mappings for the Sweep-Line Analysis of the Internet Open Trading Protocol Guy Edward Gallasch, Chun Ouyang, Jonathan.
EEC-484/584 Computer Networks Lecture 13 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
DCP: The Datagram Control Protocol Eiman Zolfaghari E190 – Technical Communications Professor Hatton April 2002.
Toward Formal Modelling and Analysis of SCTP Connection Managment Somsak Vanit-Anunchai School of Telecommunication Engineering Institute of Engineering.
EE 4272Spring, 2003 Chapter 17 Transport Protocols Connection-Oriented Transport Protocol  Reliable Network Service: Design Issues  Unreliable Network.
Transport Layer TCP and UDP IS250 Spring 2010
Gursharan Singh Tatla Transport Layer 16-May
Process-to-Process Delivery:
TRANSPORT LAYER T.Najah Al-Subaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
Lect3..ppt - 09/12/04 CIS 4100 Systems Performance and Evaluation Lecture 3 by Zornitza Genova Prodanoff.
1 CMPT 471 Networking II ICMP © Janice Regan, 2012.
1 Transport Layer Computer Networks. 2 Where are we?
Chapter 17 Networking Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William Stallings.
Jozef Goetz, Application Layer PART VI Jozef Goetz, Position of application layer The application layer enables the user, whether human.
Mobile Communications: Mobile Transport Layer Mobile Communications Chapter 10: Mobile Transport Layer  Motivation  TCP-mechanisms  Indirect TCP  Snooping.
TCP : Transmission Control Protocol Computer Network System Sirak Kaewjamnong.
University of the Western Cape Chapter 12: The Transport Layer.
Transport Layer: UDP, TCP
1 The Internet and Networked Multimedia. 2 Layering  Internet protocols are designed to work in layers, with each layer building on the facilities provided.
Data Transmission Over Wireless Links Fan Yang
1 End-user Protocols, Services and QoS. 2 Layering: logical communication application transport network link physical application transport network link.
3 June Paris Seminar Modelling and Analysis of TCP’s Connection Management Procedures Jonathan Billington and Bing Han Computer Systems Engineering.
Wireless TCP. References r Hari Balakrishnan, Venkat Padmanabhan, Srinivasan Seshan and Randy H. Katz, " A Comparison of Mechanisms for Improving TCP.
Multimedia and Networks. Protocols (rules) Rules governing the exchange of data over networks Conceptually organized into stacked layers – Application-oriented.
ECE 4110 – Internetwork Programming
Multimedia Streaming I. Fatimah Alzahrani. Introduction We can divide audio and video services into three broad categories: streaming stored audio/video,
4343 X2 – The Transport Layer Tanenbaum Ch.6.
McGraw-Hill Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
Transmission Control Protocol A Reliable, Connection-Oriented, Byte-Stream Service Lab 9.
Mobile Transport Layer  Motivation  TCP-mechanisms  Indirect TCP  Snooping TCP  Mobile TCP  Fast retransmit/recovery  Transmission freezing  Selective.
3. END-TO-END PROTOCOLS (PART 1) Rocky K. C. Chang Department of Computing The Hong Kong Polytechnic University 22 March
The Transport Layer Implementation Services Functions Protocols
Master’s Project Presentation
Slides taken from: Computer Networking by Kurose and Ross
5. End-to-end protocols (part 1)
Process-to-Process Delivery, TCP and UDP protocols
Long-haul Transport Protocols
PART 5 Transport Layer Computer Networks.
Understand the OSI Model Part 2
Chapter 6: Transport Layer (Part I)
Subject Name: Computer Communication Networks Subject Code: 10EC71
Congestion Control, Internet transport protocols: udp
Transport Layer Unit 5.
SCTP: Stream Control Transport Protocol
THE TRANSPORT LAYER Scott Garland COSC 352.
TCP - Part I Relates to Lab 5. First module on TCP which covers packet format, data transfer, and connection management.
Process-to-Process Delivery:
PART V Transport Layer.
Transportation Layer.
Transport Protocols: TCP Segments, Flow control and Connection Setup
Transport Protocols: TCP Segments, Flow control and Connection Setup
Process-to-Process Delivery: UDP, TCP
Computer Networks Protocols
Transport Layer 9/22/2019.
Presentation transcript:

Sweep-line Analysis of DCCP Connection Management Somsak Vanit-Anunchai Jonathan Billington Guy Edward Gallasch 25 th October 2006

CPN' /10/2006 Motivation: Protocol Verification As parameter values increase, State Explosion is encountered. A possible solution: Sweep-line exploration. –‘ Sweep ’ through the state space, deleting states on-the-fly. Sweep-line has been applied to industrially relevant protocols: –Wireless Transaction Protocol (WTP) (ICATPN ’ 02) –Internet Open Trading Protocol (IOTP) (CPN ’ 04) –Transmission Control Protocol (TCP) (ICFEM ’ 05) –Datagram Congestion Control Protocol (DCCP) (CPN ’ 05,MASCOTS ’ 06) Sweep-line has extended analysis to scenarios that could not be reached before. However: the reduction in memory is rarely higher than a factor of 10. –A greater reduction in memory is desired !!! To develop an effective progress mapping for the DCCP connection management CPN model. To boldly extend the analysis of the Datagram Congestion Control Protocol to cases where no analysis has gone before! ( With thanks to Star Trek ) Instead of modifying the Sweep-line, we transform the problem that Sweep-line operates on, so that it becomes more efficient. Approach: Goal:

CPN' /10/2006 The Sweep-line Method (briefly) The conceptual “Sweep Line” 1 Progress increases down the page 7

CPN' /10/2006 About DCCP … DCCP (Request For Comments (RFC) 4340) is designed to overcome the risk of congestion collapse in the Internet caused by User Datagram Protocol (UDP) traffic (delay sensitive applications, e.g. streaming media) In the protocol stack: Many similarities with TCP, e.g. –Connection oriented –Congestion control/avoidance mechanisms But is quite different Internet Protocol (IP) Transmission Control Protocol (TCP) DCCP User Datagram Protocol (UDP) Network Layer Transport Layer

CPN' /10/2006 CPN Model of DCCP Connection Management A CPN Model of DCCP’s Connection Management procedures was created. It comprises: –4 hierarchical levels –6 places –22 substitution transitions –53 executable transitions –18 functions The model is parameterised with the Maximum Number of Retransmissions for various packets (types of message, sent between protocol entities). Numerous scenarios have been analysed for different sets of application commands (issued by the users of each protocol entity).

CPN' /10/2006 DCCP-CM CPN model Top-level Page

CPN' /10/2006 Typical message sequence: Connection Setup OPEN PARTOPEN RESPOND CLOSED LISTEN Request (seq=x) Response (seq=y,ack=x) [active open] REQUEST Ack (seq=x+1,ack=y) OPEN Data (seq=y+1) [passive open] Client: Initial Send Sequence Number = x Server: Initial Send Sequence Number = y

CPN' /10/2006 “Intuitive” Sources of Progress 1. Values of sequence number variables: a) Greatest Sequence No. Sent (GSS) b) Greatest Sequence No. Received (GSR) c) Greatest Acknowledgement No. Received (GAR) 2. Progression through the Major states: (I)nitial CLOSED (F)inal CLOSED 3. Processing of Application Commands - Command tokens consumed => increasing progress

CPN' /10/2006 More Subtle Sources of Progress When in the Idle States (CLOSED, LISTEN and TIMEWAIT): 1.When an entity receives a Reset packet, it discards this, thus the total number of packets over both channels decreases by one. - Decreasing no. of packets infers increasing progress 2.When an entity receives a non-Reset packet, it responds with a Reset packet. The total number of packets is the same, but the summation of all sequence and acknowledgement numbers of the packets in both channels increases by one - Increasing summation infers increasing progress But still, the best reduction we can get from Sweep- line is a factor of 10! (and only in some cases)

CPN' /10/2006 A new perspective on an old idea… We add new variables to the model to record information that will differentiate states: –Purposely inducing state explosion, rather than modelling to reduce explosion as much as possible. As more variables are added to the model: –The model is changed  Augmented model. –Total size of the state space is larger due to explosion. Despite the larger overall state space, the peak number of states stored in memory is smaller: –The ratio of peak/total states decreases by more than the increase in total states due to explosion. The added variables are only used for calculating progress values: –They do not affect protocol behaviour.

CPN' /10/2006 What about the Initial Sequence Number Received (ISR) by each entity? OPEN PARTOPEN RESPOND CLOSED LISTEN Request (seq=x) Response (seq=y,ack=x) [active open] REQUEST Ack (seq=x+1,ack=y) OPEN Data (seq=y+1) [passive open] (C_ISR=y) (S_ISR=x) “Connection Setup” Message Sequence Revisited

CPN' /10/2006 2,174 nodes S_ISR =5 1,427 nodes S_ISR =6 No S_ISR Conventional State Space Total nodes = 14,756 11,155 nodes Consider the state space of a Connection Setup AND Connection Release procedure, where both Client and Server Initial Send Sequence Numbers are 5… Includes opening states before ISR is known, and closing states where ISR is ‘forgotten’

CPN' /10/ ,182 nodes S_ISR =5 7,579 nodes S_ISR =6 No S_ISR 60 nodes No S_ISR 60 nodes S_ISR=5 11,182 nodes S_ISR=6 7,579 nodes BUT Peak nodes = 11,939 (a decrease of 19%, down from 14,756) But… when we store S_ISR permanently (once it is known): Introduce a new variable to store S_ISR, even after it is ‘forgotten’ by the server. Total nodes = 18,821 (an increase of 28%, up from 14,756) Construct a progress mapping to sweep in this order: Some states become “duplicated”

CPN' /10/2006 C_ISR =5 -->6,686 nodes C_ISR =6 -->4,684 nodes S_ISR =5 No C_ISR 560 nodes C_ISR =5 -->7,158 nodes S_ISR =6 No C_ISR 454 nodes Sweeping order => 1, 2, 3, 4, 5, 6 - Continue performing a similar procedure within 3,4,6, and so on…. Further division, when we store C_ISR: No S_ISR 60 nodes 1 BUT Peak nodes = 7,158 (a decrease of 51%, down from 14,756) Total nodes = 19,602 (an increase of 33%, up from 14,756)

CPN' /10/2006 Some Experimental Results – Configuration A: Client user issues Active Open, Server user issues Passive Open. Full Reachability Graph Sweep-line operating on the Augmented model Decreasing trend in space and time

CPN' /10/2006 Further Comments and Conclusions We have developed a more effective progress mapping for our DCCP Connection Management CPN model. We have proposed a new way of applying Sweep-line to combat the state explosion problem: –Exploding the state space to get greater reduction. –Transforming the problem, not the method. Previously when applying sweep-line to industrially relevant models, the reduction in peak states stored has never been greater than a factor of 10. This new approach has given us a reduction by a factor of 270 (in configurations not shown here). Both time and space performance improve as the size of the original state space increases. New results have been obtained for scenarios that were too large for conventional reachability analysis.

CPN' /10/2006 Thankyou! Any questions?