Protocols Testing of DCCP at the Application Level - PowerPoint PPT Presentation

1 / 11
About This Presentation
Title:

Protocols Testing of DCCP at the Application Level

Description:

Can detect congestion and take avoiding action. Different algorithms can be selected ccid ... Had problems with Fedora Core 6 using kernel 2.6.19-rc1 ... – PowerPoint PPT presentation

Number of Views:39
Avg rating:3.0/5.0
Slides: 12
Provided by: rhu99
Category:

less

Transcript and Presenter's Notes

Title: Protocols Testing of DCCP at the Application Level


1
ProtocolsTesting of DCCP at the Application
Level
Richard Hughes-Jones Stephen Kershaw The
University of Manchester www.hep.man.ac.uk/ric
h/ then Talks
2
DCCP Datagram Congestion Control Protocol
  • Unreliable
  • No re-transmissions
  • Has modular congestion control
  • Can detect congestion and take avoiding action
  • Different algorithms can be selected ccid
  • TCP-like
  • TCP Friendly Rate Control
  • Others possible
  • DCCP is like UDP with congestion control
  • DCCP is like TCP without reliability
  • Application uses
  • Multi-media send new data instead of re-sending
    useless old data
  • Applications that can choose data encoding
    transmission rate
  • VLBI discussing a special ccid

3
DCCP The Application View
  • Stephen Richard with help from Andrea
  • Ported udpmon to dccpmon
  • Some system calls dont work getsockopt(soc,
    SOL_DCCP, DCCP_SOCKOPT_CHANGE_L, dccp_features,
    len)
  • Had problems with Fedora Core 6 using kernel
    2.6.19-rc1
  • DCCP data packets never reached the receiving
    TSAP !
  • Verify with tcpdump
  • Using development patches kernel
    2.6.19-rc5-g73fd2531-dirty
  • dccpmon tests
  • Plateau 990 Mbit/s wire rate
  • No packet Loss
  • Receive system crashed!
  • Iperf tests
  • 940Mbps, back-to-back
  • Need more instrumentation in DCCP
  • Eg a line in /proc/sys/snmp

4
DCCP Latest Kernel
  • Kernel 2.6.19_pktd-plus - 2 weeks old then
  • dccpmon tests
  • Receive system crashed even faster !
  • Just 1 or 2 1000,000 packet tests
  • Iperf tests
  • OK short runs 940Mbps, back-to-back
  • Hangs, but runs for longer !
  • Contact with linux-foundation via PFLDnet2007

5
Porting dccpmon to 2.6.20
  • DCCP defines not in the userland include files
  • Use own include files
  • Values have changed since 2.6.19
  • Some API calls changed as well
  • Still no SNMP information
  • Process cannot be removed reboot needed
  • dccpmon being tested

6
Iperf with CCID2
  • Kernel 2.6.20-web100_pktd-plus (64 bit)
  • Intel e1000 1 Gigabit NIC
  • Back-2-back
  • MTU 1500 bytes
  • Constant throughput of 940 Mbit/s
  • Moved 788 GBytes
  • 2 Hrs. CRASH FREE
  • But had increased kernel parameter
    min_free_kbytes to 65535 in receiving host
    (default 5741)
  • Min_free_kbytes is the amount of memory
    available for atomic allocations by the network
    driver at interrupt level .
  • kswapd daemon swaps kernel data around to keep
    this amount of free memory available.

7
Iperf with CCID3
  • Kernel 2.6.20-web100_pktd-plus (64 bit)
  • Intel e1000 1 Gigabit NIC
  • Back-2-back
  • MTU 1500 bytes
  • min_free_kbytes 65535 inreceiving host
  • 300 kbit/s for 40 min !
  • Then constant throughput of 940 Mbit/s

8
Variation with min_free_kbytes
  • Kernel 2.6.20-web100_pktd-plus (64 bit)
  • min_free_kbytes 5471 default in receiving
    host
  • Iperf can run for about 5mins usually crashes
    in a few sec
  • min_free_kbytes 65535 in receiving host
  • Iperf can run for about 2 Hrs

9
DCCP CCIDSafeUDP 20
  • VLBI has a clear requirement to move CBR data
  • UDP seems ideal
  • Other applications NEED this form of delivery
  • RTP / RTSP
  • Lots of streaming applications available now
  • Discussed at recent meetings
  • EXPReS EVN-NREN meeting in Zaandan, NL
  • PFLDnet 2007 / IRTF workshop in Marina Del Rey,
    US
  • Concern expressed about UDP overloading the
    Academic Network
  • Input from Kees Neggers, SURFnet Glen Turner,
    AARNET Aaron Falk, IRTF Chair

10
DCCP CCIDSafeUDP 2
  • Propose a CCID that is UDP like but with
    Network protection
  • Use the DCCP ACK mechanism to detect congestion
  • Note detection of congestion alone is not
    sufficient
  • Evaluate congestion
  • Ensure congestion is in the network not the end
    hosts.
  • Test if the congestion is transient.
  • Inform the application RTP / RTSP of the
    congestion
  • Use of new return codes to existing API sendto(),
    recvfrom(), etc
  • If, after some time interval, the application
    takes no actiondrop the input from the
    application.
  • Use of new return code to indicate this.
  • Working with partners with the aim of a draft RFC

11
  • Any Questions?
Write a Comment
User Comments (0)
About PowerShow.com