1 / 14

ConEx Abstract Protocol What’s the Credit marking for? draft-mathis-conex-abstract-mech-00.txt

ConEx Abstract Protocol What’s the Credit marking for? draft-mathis-conex-abstract-mech-00.txt. apologies from Bob Briscoe , BT presented instead by Andrea Soppera, BT IETF-79 ConEx Nov 2010

neci
Download Presentation

ConEx Abstract Protocol What’s the Credit marking for? draft-mathis-conex-abstract-mech-00.txt

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ConEx Abstract ProtocolWhat’s the Credit marking for?draft-mathis-conex-abstract-mech-00.txt apologies from Bob Briscoe, BT presented instead by Andrea Soppera, BT IETF-79 ConEx Nov 2010 This work is partly funded by Trilogy, a research project supported by the European Community www.trilogy-project.org

  2. recap: audit function • ConEx signal from sender (black) can be checked against actual congestion signal (red) • auditor checks flow ‘balance’ • Balance= black – red transportsender transportreceiver SACK ECE congestednetworkelement policy audit ECN loss if black < red drop Re-Echo-ECN Re-Echo-Loss

  3. how does audit handle inherent delay? • how long to wait from congestion to re-echo? • 1RTT? ~20RTT? RTT? (TCP, RTCP,FEC) • how does a network node know the transport’s RTT anyway? audit must not depend on unauditable metric transportsender transportreceiver SACK ECE congestednetworkelement policy audit ECN ≥1 RTT loss Re-Echo-ECN Re-Echo-Loss

  4. solutionhold transport responsible for delay • transport must pre-load Credit (green)into loop • sufficient Credit (green)marks for expected congestion during delay • makes transport accountable for risk of causing congestion before it can react transportsender transportreceiver Balance= green + black - red SACK ECE congestednetworkelement policy audit ECN loss Re-Echo-ECN Credit Re-Echo-Loss

  5. ConEx balance of a TCP connection at a audit device What would a ConEx signal look like? ConEx balance= green + black - red Re-Echo-ECN ConExbalance[marks] 4 2 0 Credit CWNDsize[segments] ECN 160 120 80 40 0 10000 20000 30000 40000 50000 time [ms]

  6. auditor needs flow state in network  …but don’t forget • ConEx only needs flow state to check correctness of information • ConExdoes not embed rules in the network on how flows behave unlike many other traffic management approaches such as: • flow-state aware routers • deep packet inspection (DPI) • and other like this…

  7. Summary What is a credit signal? • expectation of the worst congestion that a sender is going to contribute to before it can re-echo • credit is speculative congestion exposure while re-echo reflects actual • the number of credit that a sender is going to signal will depend on the aggressiveness of the congestion control it uses • create correct incentives not to be aggressive • This presentation is focused on credit signals for auditing - the signal is also useful in other cases but out of scope here

  8. status & plans • rationale for Credit signal to be added to draft-01 • normative text on design constraints for audit devices • Mathis & Briscoe close to agreeing text to add to draft-01 • informational, but we don’t have a better charter milestone for this • an audit device design has been implemented • resisted various simulated attacks proposed by research community • can never prove anything is secure until its broken • plan to prepare I-D as a ConEx ‘experience report’

  9. ConEx Abstract ProtocolWhat’s the Credit marking for?draft-mathis-conex-abstract-mech-00.txt Q&A

  10. define ‘flow’? • auditor checks flow ‘balance’ • should be non-negative at any granularity of identifiers • microflow granularity may not be visible to auditor • due to NATs, tunnelling, etc • can audit at any level of granularity • tunnel, src-dst pair, etc • if negative balance, go finer if possible • finer (and closer to destination) always better

  11. egressdropper = policer dropper = NB NA R1 ND S1 egress dropper (sketch) cheating sender or receiverunderstates black code-pointrate • drop enough traffic (black immune) to make fraction of red = black • goodput best if rcvr & sender honest about feedback & re-feedback 2% 2% x2/3 98% 95% 3% 0 …i… n

  12. at least onegreen packet(s) at start of flow or after >1sec idle means “feedback not established” ‘credit’ for safety due to lack of feedback a green byte is ‘worth’ same as a black byte a different colour from black distinguishes expected congestion based on experience from based on conservatism gives deterministic flow state mgmt (policers, droppers, firewalls, servers) rate limiting of state set-up congestion control of memory exhaustion green also serves as state setup bit [Clark, Handley & Greenhalgh] protocol-independent identification of flow state set-up for servers, firewalls, tag switching, etc don’t create state if not set may drop packet if not set but matching state not found firewalls can permit protocol evolution without knowing semantics some validation of encrypted traffic, independent of transport can limit outgoing rate of state setup to be precisegreen is ‘idempotent soft-state set-up codepoint’ flow bootstrap

  13. flow state in network? three separate reasons for avoiding network flow state • pins flow to path not an issue • state attacks  not an issue • memory cost auditingcannot avoid this  • auditor’s flow state is soft • if flow moves, ConEx markings recreate state in another auditor • auditor requires credit marking before allocating flow state • ingress policers can then limit influx of credit markings • flow state exhaustion attacks (incl. SYN attacks) thwarted at source • servers/firewalls under stress can also prefer new flows with credit marking • cannot avoid memory cost • only need full per-flow auditing once, at egress of internetwork • clever hardware implementers may design better scaling

  14. discussionis Credit / Re-Echo distinction worth 2 codepoints? • for w-g to discuss/decide • depends how much space we find for encoding • more benefits than mentioned so far • distinguishes actual vs. speculative congestion exposure • useful for bulk monitoring as well as per-flow mechanisms • benefits of Credit as a flow state set-up flag • hook for e2e session congestion control • hook for link layer cut-through optimisations (cf. tag switching) • etc

More Related