1 / 27

March 5, 2008 Kangho Kim System Software Team Internet Server Group VEE ‘08

Inter-domain Socket Communications Supporting High Performance and Full Binary Compatibility on Xen. March 5, 2008 Kangho Kim System Software Team Internet Server Group VEE ‘08. Outline. Motivation Design & Implementation Socket creation Connect Accept Send/recv Close

yanni
Télécharger la présentation

March 5, 2008 Kangho Kim System Software Team Internet Server Group VEE ‘08

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. Inter-domain Socket Communications Supporting High Performance and Full Binary Compatibility on Xen March 5, 2008 Kangho Kim System Software Team Internet Server Group VEE ‘08

  2. Outline • Motivation • Design & Implementation • Socket creation • Connect • Accept • Send/recv • Close • Live migration • Evaluation results • Conclusion

  3. Motivation • Low bandwidth (Xen 3.0.3) We need XWAY!!

  4. Motivation(cont’d) • Low latency (Xen 3.0.3) • Existing socket applications

  5. Design & Implementation

  6. Shared memory Domain 0 Domain U Domain U • Direct communication • TCP/IP bypass • Direct data copy User • Shared memory TCP Kernel VM VM VM Hardware Shared memory XWAY

  7. XWAY channel Domain A Domain B Event channel SQ SQ Head Tail Head Tail RQ RQ Head Tail Head Tail Shared memory for one XWAY channel

  8. XWAY architecture socket application library user kernel VFS BSD socket INET UNIX X25 XWAY switch UDP … XWAY protocol TCP IP XWAY driver Network device driver

  9. Dual channel • XWAY channel for data • TCP/IP channel for socket options and socket state socket application socket application XWAY socket XWAY socket TCP/IP channel XWAY channel

  10. Socket data structure for XWAY llseek: no_llseek poll: sock_poll open: sock_no_open release: sock_close readv: sock_readv writev: sock_writev sendpage: sock_sendpage release: inet_release bind: inet_bind connect: xsw_stream_connect accept: xsw_accept poll: xsw_poll listen: inet_listen shutdown: inet_shutdown sendmsg: inet_sendmsg recvmsg: sock_common_recvmsg sendpage: inet_sendpage inode socket close: xsw_close connect: xsw_v4_connect disconnect: xsw_disconnect accept: xsw_csk_accept ioctl: tcp_ioctl init: xsw_v4_init_sock shutdown: xsw_shutdown setsockopt: tcp_setsockopt getsockopt: tcp_getsockopt remote_dom_id eventchn_port eventchn_irq xring_send xring_recv xring_send_h xring_send_t xring_recv_h xring_recv_t … xway_sock sock

  11. Create Sock

  12. TCP channel Connect Sock XWAY channel Sock SQ SQ RQ RQ Connection helper

  13. Accept TCP channel Sock Sock XWAY channel XWAY channel XWAY channel XWAY channel

  14. TCP channel Send/Recv Sock Sock XWAY channel SQ SQ RQ RQ

  15. TCP channel TCP channel Close XWAY channel Sock Sock SQ SQ XWAY channel RQ RQ

  16. Poll TCP session Sock Sock XWAY session

  17. Live migration • Cut XWAY channels underneath XWAY socket • Redirect all data send/receive calls to TCP channels • Ready to live migration Domain 0 Domain 0 Domain U Domain U User Kernel TCP/IP VM VM VM VM Hardware Hardware

  18. TCP channel Live migration (cont’d) Sock Sock XWAY channel SQ SQ RQ RQ

  19. Evaluation

  20. Bandwidth • Netperf TCP_STREAM

  21. Latency • Netperf (TCP_RR)

  22. Application performance

  23. DBT-1 performance

  24. Execution time of API

  25. Binary compatibility • Scp • Ssh • Apache – TCP_DEFER_ACCEPT • Vsftpd – connect, accept, MSG_PEEK • Proftpd – shutdown, connect, SO_LINGER • Telnet • MySQL • Netperf

  26. Conclusion • XWAY design and implementation • Full binary compatibility for socket interface • High performance • Live migration support • Remaining work • UDP, … • Domain crash resiliency • Reducing CPU usage • Code release • April 20, 2007: xway ver 0.6 • June 4, 2007: xway ver 0.6.1 • By the end of March, 2008: xway ver 0.7 (live migration included) • Download • http://sourceforge.net/projects/xway

  27. Questions or Comments • Kangho Kim • khk@etri.re.kr • Cheiyol Kim • gauri@etri.re.kr • Hyun-Sup Shin • superstarsup@etri.re.kr

More Related