A Study Of Cyclone Technology University Of Maryland 1 Table of Content • • • • • • • • • • • • • • Overview Contributions The need for time-based resource management Cyclone technology - basic idea Description of a Cyclone network Clock synchronization Data movements Connection management Scheduling Adaptation layer Fault handling Performance Advantages and limitations Open issues University Of Maryland 2 Overview • Current networking – event-based, on-demand resource allocation – best effort performance • • • New classes of traffic placing stringent requirements on the communications Time-based resource management in a synchronous manner End-to-end coordination among network components – no congestion, loss, jitter – better utilization of bandwidth • one byte header • reduced control messages • reduced routing information – well-suited network environment for traffic with stringent timing requirements University Of Maryland 3 Contributions • Time-based networking technology – – – – • • components protocols operations host interface Time-based resource management Alternate way of managing resources in networking – without requiring very accurate and highly synchronized clocks – without consuming significant amount of bandwidth for handling timing variability University Of Maryland 4 Time-based Resource Management In Networking A B node node X link 1 node Z Y C link 2 D Data Loss A t1 t2 Data Loss Prevention t5 t3 t6 t4 A t7 t1 t2 t8 t3 B t6 t4 t7 t8 B t9 t10 t9 Delay and Jitter A t5 t1 t2 t3 Delay and Jitter Control t5 t4 t10 t6 t7 A t8 t1 t2 t3 B t5 t4 t6 t7 t8 B t9 t10 t11 t12 University Of Maryland t9 t10 t11 t12 5 Cyclone Technology - Basic Idea tA tA+sA tA+d tA+sA+d tA tA+sA tA+2sA tA+3sA tB tB+sB tB+2sB ... tA+(i-1)sA tA+isA tA+(i+1)sA ... tB+(j-1)sB tB+jsB tB+(j+1)sB University Of Maryland 6 Data Movements - Basic Free slot list Incoming link Outgoing link Slot buffer Pointer buffer University Of Maryland 7 Data Movements host switch controller University Of Maryland 8 Types Of Traffic Supported • • Connection-oriented Scheduled traffic – data available at known time instant (temporal profile) – resources reserved when establishing a connection • On-demand traffic – source routing – dynamic resource allocation – possible loss of a chunk University Of Maryland 9 Description Of Cyclone Network • • • • • Chunk Slot and slot time Time tag Period Fixed design parameters – the size of a chunk – the duration of a period University Of Maryland 10 Chunk Types marker • • Three types - Control/Scheduled/On-demand Control chunk – – – – • checksum multiple sub-chunks in a chunk connection request chunk confirm/reject/abort/terminate chunk pathfinder chunk Scheduled chunk – scheduled traffic data chunk – scheduled traffic data acknowledgement/retransmission request chunk • On-demand chunk – on-demand traffic data chunk – on-demand traffic data acknowledgement/retransmission request chunk University Of Maryland 11 Multiple Sub-chunks In A Chunk marker n subchunk . . . subchunk padding checksum 512 bytes 8 8 bit marker bit n is the number of subchunks contained; maximum is (512-1-1-2)/b where b is the number of bytes in a subchunk (127) b*n bit subchunks where b is the number of bits in a subchunk v bit padding where (v=(512-1-1-b*n-2)*8>=0) 16 bit checksum University Of Maryland 12 Connection Request Chunk marker source 8 bit 160 bit 160 bit 8 bit 64 bit 64 bit 16 bit 24*sbit v bit 16 bit destination ToS start end s temporal behavior padding checksum 512 bytes marker source address (128 bit address + 32 bit port) destination address (128 bit address + 32 bit port) type of services start time end time s is the number of temporal descriptors in this chunk temporal behavior padding where (v=(512-1-20-20-1-8-8-2-3*s-2)*8>=0) checksum marker source 8 bit 160 bit 160 bit 16 bit 24*sbit v bit 16 bit destination s temporal behavior padding checksum 512 bytes marker source address (128 bit address + 32 bit port) destination address (128 bit address + 32 bit port) s is the number of temporal descriptors in this chunk temporal behavior padding where (v=(512-1-20-20-2-3*s-2)*8>=0) checksum University Of Maryland 13 Confirm/Reject/Abort/Terminate Chunk marker source destination padding checksum 127 bytes 8 160 160 672 16 bit bit bit bit bit marker source address (128 bit address + 32 bit port) destination address (128 bit address + 32 bit port) padding (127-1-20-20-2)*2 checksum University Of Maryland 14 Pathfinder Chunk marker source destination hops* pointer** list* padding* checksum* 127 bytes 8 bit marker 160 bit source address (128 bit address + 32 bit port) 160 bit destination address (128 bit address + 32 bit port) 8 bit number of hops(h)* 8 bit pointer into current hop position** 8*h*2 bit list of outgoing and incoming link identifier pair at each hop* v bit padding where (v=(127-1-20-20-1-1-1*h*2-2)*8>=0)* 16 bit checksum* * recomputed at each hop on forward path **recomputed at each hop on forward and reverse paths University Of Maryland 15 Scheduled Traffic Data and Acknowledgement/Retransmission Request Chunk marker data padding checksum 512 bytes 8 8*d v 16 bit bit bit bit chunk marker data (d bytes of data) padding where (v=(512-1-1*d-2)*8>=0) checksum marker source 8 160 160 16 656 16 bit bit bit bit bit bit destination sequence padding checksum 127 bytes marker source address (128 bit address + 32 bit port) destination address (128 bit address + 32 bit port) slot sequence number for this connection padding (127-1-20-20-2-2)*8 checksum University Of Maryland 16 On-Demand Traffic Data And Acknowledgement/Retransmission Request Chunk marker hop pointer* list source destination data padding checksum* 512 bytes 8 bit check marker 8 bit number of hops 8 bit index into current hop information 8*h*2 bit list of outgoing and incoming link identifier pair at each hop 160 bit source address 160 bit destination address 8*d bit data (d byte data) v bit padding where (v=(512-1-1-1-1*h*2-20-20-1*d-2)*8>=0) 16 bit checksum* * recomputed at each hop marker hops pointer* list source destination data padding checksum* 127 bytes 8 bit marker 8 bit number of hops(h) 8 bit index into current hop information* 8*h*2 bit list of outgoing and incoming link identifier pair at each hop 160 bit source address (128 bit address + 32 bit port) 160 bit destination address (128 bit address + 32 bit port) 8*d bit data containing acknowledgement/retransmit request v bit padding where (v=(127-1-1-1-1*h*2-20-20-1*d-2)*8>=0) 16 bit checksum* * recomputed at each hop University Of Maryland 17 Cyclone Network Model Temporal Regulator Non-Cyclone Network Cyclonode host Incoming link 1 outgoing link 1 1’ Non-Cyclone Network Incoming link m outgoing link m m’ Backup Incoming link 1’ switch Backup Incoming link m’ Backup outgoing link 1’ Backup outgoing link m’ controller University Of Maryland 18 Clock Synchronization • • • • Clock Adjustment At A Node With Four Incoming Links Markers are sent to indicate the beginning and ending of a period A node obtains the clock information of upstream nodes A local clock rate is set to the average of incoming clock rates and its own rate A local clock phase is set considering clock phase information University Of Maryland 19 Connection Establishment/Termination C 2 1 B A D 3 5 4 E 6 7 University Of Maryland 20 Time Relationship Of Scheduling t1 Timeline of incoming link t2 d t3 Timeline of outgoing link (same speed) Timeline of outgoing link (slower) Timeline of outgoing link (faster) t4 t3 t4 t3 t4 t1 d t3 t 2 t 4 University Of Maryland 21 Single-Pass Scheduling Approach • • First available slot column assignment Assignment before reusing the buffer space 0 1 2 3 4 5 6 7 22 23 24 0 25 26 0 22 23 24 25 1 2 3 4 5 6 7 1 2 3 21 22 23 24 25 26 27 28 University Of Maryland 4 5 6 7 Available slot list (2, 3, 5, 6, 7) (3, 6, 7) (3) (1, 3, 4, 5) 22 Double-Pass Scheduling Approach 0 0 21 22 23 24 25 26 27 1 2 3 4 5 6 7 1 2 3 4 5 6 7 21 22 23 24 25 26 Available slot list (1, 2, 3, 4, 6) (2, 3, 4) 27 28 0 1 2 3 21 22 23 24 25 26 27 28 University Of Maryland 4 5 6 7 Available slot list (1, 2, 3, 4, 6) (2, 3, 4) 23 Double-Pass Scheduling Approach 0 1 2 3 4 5 6 7 21 22 23 24 25 26 27 0 1 2 3 4 5 6 7 Available slot list 21 22 23 (1, 2, 3, 4, 6) 24 25 26 27 28 (2, 3, 4) University Of Maryland 24 Adaptation Layer Application Layer • Supports existing applications and communications with non-Cyclone networks Cyclone Adaptation Layer Cyclone Interface (CAL-C) Switch Controller Application Layer TCP CAL-A IP CAL-C Network Interface Temporal Regulator – Specify temporal profile for a scheduled traffic – Provide scheduled data chunks according to the temporal profile specified – Detect bit-errors – Initiate appropriate recovery mechanisms – Initiate command control chunks – Detect data loss for on-demand traffic Temporal Regulator Cyclone Adaptation Layer Application Interface (CAL-A) Host Receive information from an application and provide the appropriate information to a temporal regulator in the form acceptable to a Cyclone network Host • Switch Controller University Of Maryland 25 Fault Handling • Backup link approach incoming link 1 – line condition monitor – backup link pointer – automatic switching to backup • Application-dependent recovery mechanism – primary and secondary connections – altering partial or entirety of a path • incoming link 2 backup link pointer 3 next free slot pointer backup link pointer 4 backup incoming link 3 outgoing link 2 switch backup incoming link 4 Reader-writer flag for handling timing variability University Of Maryland outgoing link 1 backup outgoing link 3 backup outgoing link 4 controller line condition monitor slot buffer pointer buffer free slot list marker checker 26 Summary Of Scheduling Techniques Bounded Delay Bounded Jitter Bandwidth Protection Advantages Disadvantages E-to-E Delay Bound Cyclone Y Y Y Stop-and-Go Y Y Y Jitter-EDD Y Y Y WFQ Y N Y Provides bounded delay and jitter No additional operations during data transmission. No header. Easy hardware implementation Clock synchronization Explicit resource reservations Provides bounded delay and jitter Bounded buffer requirement Provides bounded delay and jitter Bounded buffer requirement Smoothes bursts without policing Coupled delay bound and bandwidth allocation To reduce delay jitter, all packets received a large delay Complicate implementation due to separate regulator Costly local delay bound computation D D (or H ) H Coupled delay bound and bandwidth allocation Expensive round number computation N m PH N 2 HT H 1S max Jitter Bound University Of Maryland 27 Performance Studies • • Data transfer Connection admission – long term connections – single node and multiple nodes University Of Maryland 28 Type Of Traffic Studied • • Regularly spaced traffic Random pattern traffic University Of Maryland 29 Regularly Spaced Traffic (S5-S7) (S5: 5-10%) 97.33% Loading (S6: 10-20%) 94.32% Loading (S7: 5-33%) 95.24% Loading 120 80 60 40 20 97 93 89 85 81 77 73 69 65 61 57 53 49 45 41 37 33 29 25 21 17 13 9 5 0 1 number of slots 100 number of trials University Of Maryland 30 (S7) 98.1% Loading trials 26-30 of (S7) number of additionally used slots after 15 requests number of used slots before the first rejection 105 120 95 80 number of additionally used slots after 15 requests 60 90 number of used slots before the first rejection 40 85 University Of Maryland 97 93 89 85 81 77 73 69 65 4 5 number of trials number of trials 61 57 53 49 45 41 37 3 33 29 25 2 21 17 13 1 9 0 75 5 20 80 1 number of slots slots number of 100 100 31 Random Pattern (S8) 120 100 80 p(a) 60 d-avg 40 20 0 0 20 40 60 80 100 120 % of available slots requested University Of Maryland 32 Random Pattern (S9) 100 90 80 70 60 50 40 30 20 10 0 p(a) d-avg 0 20 40 60 80 100 120 % of available slots requested University Of Maryland 33 Random Pattern (S10) 120 100 80 p(a) 60 d-avg 40 20 0 0 20 40 60 80 100 120 % of available slots requested University Of Maryland 34 Random Pattern (S11) 120 100 80 p(a) 60 d-avg 40 20 0 0 20 40 60 80 100 120 % of available slots requested University Of Maryland 35 Multiple Nodes • • Multiplied probability End-to-end delay is added University Of Maryland 36 Summary Of Performance Issues • • • • • A couple of millisecond per node connection establishment overhead Close to 100% loading for identical, regularly spaced traffic Above 90% loading for regularly spaced traffic Above 80% loading for arbitrary pattern traffic, requesting 10% of bandwidth More than 50% of acceptance when links are 80% loaded, requesting 10% of bandwidth University Of Maryland 37 Summary • • Time-based resource management approach in networking All aspects of a computer network required to support time-based resource management – – – – – • both scheduled and on-demand traffic end-to-end resource usage scheduling in time calendar-based data movements existing applications and communications with non-Cyclone network fault condition handling The feasibility of Cyclone technology – end-to-end delay – connection establishment overhead – the probability of connection acceptance University Of Maryland 38 Advantages • • • • • • Temporal determinacy Loss free and jitter free end-to-end data delivery with minimal latency, without sustaining significant delays in connection establishment Nearly all of the bandwidth available for the actual transmission of data High loading without having any adverse impact on performance Well-suited for hardware implementation Highly scalable University Of Maryland 39 Limitations • Temporal determinacy – temporal profile of a connection be known ahead – not current practice in networking • • Handling applications with significant variability Synchronous system University Of Maryland 40 Open Issues • • • • • • • Alternative designs and policies Optimization of many system parameters Design tradeoff and optimization for specific applications Dynamic monitoring of performance Support existing internetworking protocols other than TCP/IP Extensions to point-to-point links and point-to-point connections Hardware design University Of Maryland 41 Value Added • • Time-based resource management Alternate way of managing resources in networking – without requiring very accurate and highly synchronized clocks – without consuming significant amount of bandwidth for handling timing variability • • Current applications with stringent timing requirement will perform better Lead to development of new classes of applications that are possible only when tight timing guarantee can be given University Of Maryland 42 Pathfinder 12 4 7 2 S 1 4 2 15 2 12 7 6 15 D 4 15 6 4 marker S D 43210 43210 4 2 7 12 15 4 15 6 University Of Maryland 3 15 padding checksum 43 Connection Establishment/Termination C 2 1 B A D 3 5 4 E 6 7 University Of Maryland 44