r revisiting a soft state approach to i iti s ft st t a h
play

R Revisiting a Soft-State Approach to i iti S ft St t A h t - PowerPoint PPT Presentation

R Revisiting a Soft-State Approach to i iti S ft St t A h t Managing Reliable Transport Connections Gonca Gursun, Ibrahim Matta , Karim Mattar Computer Science Boston U. 1 Ad-Hoc Wireless Network Whats wrong with Laptop today s


  1. R Revisiting a Soft-State Approach to i iti S ft St t A h t Managing Reliable Transport Connections Gonca Gursun, Ibrahim Matta , Karim Mattar Computer Science Boston U. 1

  2. Ad-Hoc Wireless Network What’s wrong with Laptop today s Transport? today’s Transport? PDA PDA Cell phone Wireless Mesh Backbone Internet Mesh router with Cellular Data Network gateway Wireless Sensor Network Sensor Event Laptop Sensor Sensor VoIP + video/TV VoIP + video/TV streaming Cell phone Sink PDA Base Station � The new brave world � Larger scale, more diverse technologies � New services: content-driven, context-aware, mobile, socially-driven, secure, profitable, … � Custom point-solutions: No or little “science” � Lots of problems: bad performance, hard to manage, hard to adopt, … 2

  3. Internet’s view: one big, flat, open net Web, email, ftp, … Application Application TCP, UDP, … TCP, UDP, … Transport Transport Transport Transport IP IP protocol t l Network Network Network Data Link Data Link Data Link Data Link DL DL DL DL Physical Physical PHY PHY www.cs.bu.edu www.cs.bu.edu 128.197.0.0 128 197 0 0 128.10.0.0 128 10 0 0 128.197.15.10 � There’s no building block Th ’ b ildi bl k � The “hour-glass” model imposed a least common denominator 3

  4. Recursive InterNet Architecture (RINA) Recursive InterNet Architecture (RINA) Base Case Repeat 2-DIF 1-DIF 0 DIF 0-DIF 0-DIF 0-DIF node 4 node 4 node 3 node 3 node 2 node 2 node 1 node 1 DIF = Distributed IPC Facility (locus of shared state=scope) 4 Policies are tailored to scope of DIF

  5. RINA allows scoping of services Web, email, ftp, … Application Application Transport Transport TCP, UDP, … TCP UDP Transport Transport DIF Network Network IP Network Data Link Data Link Data Link Data Link DL DL DL DL DIF DIF Physical Physical PHY PHY � The DIF is the building block and can be composed g p � Good we split TCP, but we split TCP in the wrong direction! � E2E (end-to-end principle) is not relevant � Each DIF layer provides (transport) service / QoS over its scope 5

  6. What Goes into a DIF? What Goes into a DIF? IPC IPC Control IPC Management Transfer D li Delimiting iti Applications, e.g., routing, resource allocation, Transfer access control, etc. Relaying/ Muxing Common Application Common Application PDU Protection PDU P t ti Protocol DTSV RIB � Processing at 3 timescales, decoupled by either a Data P i t 3 ti l d l d b ith D t Transfer State Vector or a Resource Information Base � IPC Transfer actually moves the data y � IPC Control (optional) for error, flow control, etc. � IPC Management for routing, resource allocation, locating applications access control monitoring lower layer etc applications, access control, monitoring lower layer, etc. 6

  7. Only one Data Transfer Protocol Only one Data Transfer Protocol IAP � RINA decouples port allocation and access control from data transfer � Allocating conn ID (ports) is done by management IPC Access � Allocating conn ID (ports) is done by management, IPC Access Protocol (IAP), in a hard-state (HS) fashion � Once allocated, Data Transfer can start, ala Delta-t [Watson’81] � Flows without data transfer control are UDP-like. Flows without reliability requirement do not ACK. Different policies support different requirements � Delta-t is a soft-state (SS) protocol � Delta t is a soft state (SS) protocol � If there is a long idle period, conn state is discarded, but ports 7 remain

  8. Why not TCP? y � Hard-state must be explicitly discarded p y � But we don’t need it to be [Watson ’81] � Watson proves that if 3 timers are bounded: p • Maximum Packet Lifetime (MPL) • Maximum time for retries (G) • Maximum time before ACK (UAT) a u t e be o e C (U ) � That no explicit state synchronization, i.e., hard- state, is necessary • SYNs FINs are unnecessary • SYNs, FINs are unnecessary � In fact, TCP uses all these timers and more � TCP is really hybrid HS+SS � TCP is really hybrid HS SS 8

  9. This paper … This paper … � Revisit connection management for reliability, i.e. to ensure no data loss and no data duplication ensure no data loss and no data duplication � Previous studies focused on correctness � Here we focus on performance and robustness � Here we focus on performance and robustness � We consider worst-case single-message conversation � No flow / congestion control � No flow / congestion control � We compare four approaches: � Two-packet exchange (DATA + ACK) � Two packet exchange (DATA + ACK) � Three-packet ( … + CLOSE) � Five-packet (ala TCP) p ( ) � Delta-t 9

  10. Reliable One-Message Delivery using five packet handshaking using five-packet handshaking Host A Host B sync, accept data A->B closed knows B accepted data p A->B closed 10

  11. Five-Packet Protocol (ala TCP) ( ) � Explicit handshaking: SYN and SYN+ACK messages 11 � For single-message communication, TCP uses five- g g , packet protocol + timers (HS+SS) � Vulnerability: Aborted connections � 4 * channel-delay 11

  12. Two-packet exchange [Belsnes 76] Two packet exchange [Belsnes 76] Host A Host A Host B Host B A->B closed A->B closed A B closed • Premature timeout results in duplicate • Duplicate ACK may ACK a lost “new Data 0” 12

  13. Two-packet exchange [Belsnes 76] p g [ ] Host A Host B A->B closed A->B closed discard, old seq # •Solution to lost data: •Solution to lost data: use a new seq # that does NOT wrap around for at least 2 * MPL (Max Packet Lifetime) • Duplicates still possible if ACK is lost, even with RTO > 2 * MPL 13

  14. Delta-t [Watson 78] Delta t [Watson 78] � Two-packet exchange suffices if we can leave � Two packet exchange suffices if we can leave it to applications to detect duplicates � Delta-t solves the duplicate problem of two- packet using appropriate timers for keeping p g pp p p g conn. state 14

  15. Delta-t: Conn. Open [Watson 78] Host A Host B First Pi ACKs lost R MPL • Delta-t receiver does not delete state for at least Rtime = R+MPL enough for duplicates to die out • R = max time for retransmission attempts p • Rtime reset at every reception of new in-seq packet 15

  16. Delta-t: Conn. Close [Watson 78] Host A Host B MPL MPL Rtime • Delta-t sender does not delete state for at least D lt t d d t d l t t t f t l t Stime = Rtime+MPL enough to ensure sender does not delete state before receiver g • Stime reset at every transmission 16

  17. Delta-t: Timers [Watson 78] Host A Host B - G for Pi expires p Recv timer set to Rtime Recv timer set to Rtime First Pi+1 - suspend G for Pi+1 ACK(Pi+1) lost MPL R R resume G for Pi+1 resume G for Pi+1 Pi+1 attempts lost G = n*RTO = n*RTT MPL Worst-case pattern First Pi+2 Recv timer set to Rtime repeats • Rtime >= R + MPL = (MPL + G) + MPL ~ 2MPL, if MPL>>G Rti > R + MPL (MPL + G) + MPL 2MPL if MPL>>G • Stime >= Rtime+MPL ~ 3MPL * Figure ignores UAT 17

  18. Moral of the Story � We need timers anyway � We need to know something about MPL anyway � We may need to reliably send a single message, or a stream of messages � We should just use Delta-t anyway ☺ � No need to worry about init seq # since conn. ID / state is not released (re-used) until all its packets have died out 18

  19. Delta-t Protocol (Watson 81) 19 � A pure SS approach � Two-Packet Protocol (Belsnes ’76) with timers (Belsnes 76) with timers � Assumes all connections exist all the time � TCBs are simply caches of state of ones with recent activity � G = n x RTO � Rtime = 2MPL + G + UAT � Stime � Stime = 3MPL + G + UAT 3MPL + G + UAT Rtime ~ 2 MPL > 4 channel-delay � Memory requirement is not a concern o only few MB needed at Delta-t receiver (server) in a typical setting � We should revisit MPL: should be seconds rather than minutes! 19

  20. Simulation Results: Correctness 20 � Two-state channel-delay model, random initial sequence numbers numbers � SS (Delta-t) is more robust to bad net conditions 20

  21. Simulation Results: Performance Si l ti R lt P f 21 � SS (Delta-t) has higher goodput and lower message overhead than HS+SS (TCP) 21

  22. Conclusion � SS is more robust to high packet losses and channel delay variations channel delay variations � No explicit handshaking messages for opening and closing connections � SS can more easily establish its connections while delivering data reliably � In our RINA architecture, port allocation and access control is decoupled from data transfer � Data transfer is done in an SS fashion � Port allocation and access control is HS � More @ http://csr bu edu/rina � More @ http://csr.bu.edu/rina 22

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend