SlideShare uma empresa Scribd logo
1 de 51
Baixar para ler offline
Fastsocket 
Speed up your socket 
SINA 
Xiaofeng Lin 
jerrylin.lxf@gmail.com
Contributor 
SINA: 
Xiaofeng Lin 
Xiaodong Li 
Tsinghua: 
Yu Chen 
Junjie Mao 
Jiaquan He
Socket API Problem 
Socket API is fundamental for most network applications 
• Kernel eats too much CPU cycles 
• Less CPU cycles left to Application 
• Call for more efficient kernel socket API
Performance on Multicore System 
Theoretical Overall Performance: 
Single core performance * Available CPU cores 
How close can we reach the limit: Scalability.
Outline 
• Scalability Performance 
• Single Core Performance 
• Production System Feasibility 
• Future Work
Fastsocket 
• Scalability Performance 
• Single Core Performance 
• Production System Feasibility 
• Future Work
Testing Environment 
• HAProxy: Open source TCP/HTTP loadbalancer. 
• OS: CentOS-6.2 (Kernel : 2.6.32-220.23.1.el6) 
• CPU: Intel Ivy-Bridge E5-2697-v2 (12 core) * 2 
• NIC: Intel X520 (Support Flow-Director) 
• Scenario: short TCP connections 
Server 
http_̲l oad 
HAproxy 
(Ivy bri dge E5-‐‑‒2697 v2) 
http_̲l oad 
http_̲l oad
Kernel Inefficiency 
More than 90% CPU is consumed by Kernel
Synchronization Overhead 
Almost 80% CPU time is spent on locking.
Scalability Problem 
HTTP CPS (Connection Per Second) throughput with 
different number of CPU cores. 
Scalability is KEY to multicore system capacity.
Dilemma 
How to update single machine capacity? 
• Spend more for more CPU cores 
• Capacity dose not improve but get worse 
• Just awkward
What to do 
• Hardware Assistance 
Limited effects. (NIC offload feature) 
• Data Plane Mode 
You need to implement your own TCP/IP stack. (DPDK) 
Lacks of kernel generality and full features. 
Other production limits. 
• Change Linux kernel 
Keep improving but not enough. (Linux upstream) 
Need to modify application code. (Megapipe OSDI)
Fastsocket Scalability 
Great! CPU is doing more for haproxy.
Fastsocket Scalability 
Scalability is key for multicore performance. 
Fastsocket: 5.8X Base and 2.3X Lastest.
Production System Evaluation 
Two 8-core HAProxy (HTTP proxy) servers handling same 
amount of traffic, with and without Fastsocket.
Kernel Bottleneck 
• Non Local Process of Connections 
• Global TCP Control Block (TCB) Management 
• Synchronization Overhead from VFS
Non Local Process of Connections 
A given connection is processed in two phases: 
• Net-RX SoftIRQ in interrupt context 
• Application and System Call in process context. 
Two phases are often handles by different CPU cores: 
• Introduces lock contentions. 
• Causes CPU cache bouncing.
Non Local Process of Connections 
Scenario that server actively connects out: 
Haproxy Haproxy 
CPU  CPU0 1 
Network Kernel 
Stack 
Network 
Stack 
Queue-0 Queue-1 
RSS
Global TCB Management 
TCB is represented as socket in Linux kernel: 
• Listen Socket: 
– A single listen socket is used for connection setup 
• Established Socket: 
– A global hash table is used for connection management
Global TCB Management 
Single listen socket HOTSPOT: 
CPU  CPU0 1 
Listen Socket 
Kernel 
Haproxy 
NIC 
Haproxy 
Queue-0 Queue-1
VFS Overhead 
• Socket is abstracted under VFS 
• Intensive synchronization for Inode and Dentry in VFS 
• These overhead are inherited by socket
Methodology 
• Resources Partition 
• Local Processing
Design Component 
• Receive Flow Deliver 
• Local Listen Table & Local Established Table 
• Fastsocket-aware VFS
Fastsocket Architecture 
Application Process 
Local 
Established 
Table 
Faassttssoocckkeett--aawaarree VFSS 
Local 
Listen 
Table 
TCP Layer 
... 
Application Process 
User Kernel 
NIC 
... 
Local 
Established 
Table 
Local 
Listen 
Table 
Receive Flow Dilever 
PerCore Process Zone 
NET-RX 
SoftIRQ 
RSS 
TCP Layer 
NET-RX 
SoftIRQ 
PerCore Process Zone 
Outgoing packets to NIC Incoming packets from NIC
Receive Flow Deliver (RFD) 
RFD delivers packets to the CPU core where application will 
further process them. 
Haproxy Haproxy 
CPU  CPU0 1 
Kernel 
Network 
Stack 
Network 
Stack 
Receive Flow Deliver(RFD) 
Queue-0 Queue-1 
RSS 
Good Path 
Bad Path 
RFD can leverage advanced NIC features (Flow-Director)
Local Listen Table 
Clone the listen socket for each CPU core in LOCAL table. 
Kernel 
Haproxy 
Local 
Listen Socket 
Local Listen Table 
Local 
Listen Socket 
Local Listen Table 
CPU  CPU0 1 
NIC 
Haproxy 
Queue-0 Queue-1
Local Established Table 
Established sockets are managed in LOCAL table. 
CPU1 
CPU0 
Kernel 
Haproxy 
Local 
Establish Table 
NIC 
Haproxy 
Local 
Establish Table 
Queue-0 Queue-1
Fastsocket-aware VFS 
Provide a FAST path for socket in VFS: 
• Inode and Dentry are useless for socket 
• Bypass the unnecessary lock-intensive routines 
• Retain enough to be compatible
Fastsocket Architecture 
Application Process 
Local 
Established 
Table 
Faassttssoocckkeett--aawaarree VFSS 
Local 
Listen 
Table 
TCP Layer 
... 
Application Process 
User Kernel 
NIC 
... 
Local 
Established 
Table 
Local 
Listen 
Table 
Receive Flow Dilever 
PerCore Process Zone 
NET-RX 
SoftIRQ 
RSS 
TCP Layer 
NET-RX 
SoftIRQ 
PerCore Process Zone 
Outgoing packets to NIC Incoming packets from NIC
Optimization Effects
Intel Hyper-Threading 
Further boot performance 20% with Intel HT. 
E5-2697-v2 
Fastsocket 406632 
Fastsocket-HT 476331(117.2%) 
Fastsocket-HT:476.3k cps, 3.87m pps, 3.1G bps (short connection)
Fastsocket 
• Scalability Performance 
• Single Core Performance 
• Production System Feasibility 
• Future Work
Methodology 
• Network Specialization 
• Cross-Layer Design
Network Specialization 
General service provided inside Linux kernel: 
• Slab 
• Epoll 
• VFS 
• Timer etc. 
Customize these general services for Network
Fastsocket Skb-Pool 
• Percore skb pool 
• Combine skb header and data 
• Local Pool and Recycle Pool (Flow-Director)
Fastsocket Fast-Epoll 
Motivation: 
• Epoll entries are managed in RB-Tree 
• Search the RB-Tree each time when calling epoll_ctl() 
• Memory access is a killer for performance 
Solution: 
• TCP Connection rarely shared across processes 
• Cache Epoll entry in file structure to save the search
Cross-Layer Optimization 
• What is cross-layer optimization? 
• Overall optimization with Cross-Layer design 
– Direct-TCP 
– Receive-CPU-Selection
Fastsocket Direct-TCP 
• Record input route information in TCP socket 
• Lookup socket directly before network stack 
• Read input route information from socket 
• Mark the packet as routed
Fastsocket Receive-CPU-Selection 
Similar to Google RFS 
• Application marks current CPU id in the socket 
• Lookup socket directly before network stack 
• Read CPU id from socket and deliver accordingly 
Lighter, more accurate and thus faster than Google RFS
Redis Benchmark 
Testing Environment: 
• Redis: Key-value cache and store 
• CPU: Intel E5 2640 v2 (6 core) * 2 
• NIC: Intel X520 
Configuration: 
• Persist TCP connections 
• 8 redis instances serving on difference ports 
• Only 8 CPU cores are used
Redis Benchmark 
Disable Flow-Director: 
20% throughput increase 
Enable Flow-Director: 
45% throughput increase
Fastsocket 
• Scalability Performance 
• Single Core Performance 
• Production System Feasibility 
• Future Work
Compatibility & Generality 
• Full BSD-Socket API compatible 
• Full kernel network feature support 
• Require no change of application code 
• Nginx, HAProxy, Lighttpd, Redis, Memcached, etc.
Deployment 
• Install RPM (Kernel, fastsocket.ko and libfsocket.so) 
• Load fastsocket.ko 
• Start application with PRELOAD libfsocket.so 
LD_PRELOAD=./libfsocket.so haproxy
Maintainability 
• Flexible Control 
– Selectively enable Fastsocket to certain applications (nginx) 
– Compatible with regular socket (ssh) 
• Quick Rollback 
– Restart the application without libfsocket.so 
• Easy Updating 
– Most of codes are in fastsocket.ko 
– Updating fastsocket.ko and libfsocket.so is enough
SINA Deployment 
• Adopted in HTTP load balance service (HAProxy) 
• Deployed in half of the major IDCs 
• Stable running for 8 months 
• Fastsocket will update all HAPoxy by the end of year
Fastsocket 
• Scalability Performance 
• Single Core Performance 
• Production System Feasibility 
• Future Work
Future Work 
• Make it faster 
– Improving Interrupt Mechanism 
– System-Call Batching 
– Zero Copy 
– Further Customization and Cross-Layer Optimization 
• Linux Mainstream
Open Source 
https://github.com/fastos/fastsocket
Recruitment 
Join us ! 
xiaodong2@staff.sina.com
Fastsocket 
Thank you! 
Q & A

Mais conteúdo relacionado

Mais procurados

ONIE / Cumulus Networks Webinar
ONIE / Cumulus Networks WebinarONIE / Cumulus Networks Webinar
ONIE / Cumulus Networks WebinarCumulus Networks
 
Opensource approach to design and deployment of Microservices based VNF
Opensource approach to design and deployment of Microservices based VNFOpensource approach to design and deployment of Microservices based VNF
Opensource approach to design and deployment of Microservices based VNFMichelle Holley
 
Advanced Traffic Engineering (TE++)
Advanced Traffic Engineering (TE++)Advanced Traffic Engineering (TE++)
Advanced Traffic Engineering (TE++)Pravin Bhandarkar
 
DevopsItalia2015 - DHCP at Facebook - Evolution of an infrastructure
DevopsItalia2015 - DHCP at Facebook - Evolution of an infrastructureDevopsItalia2015 - DHCP at Facebook - Evolution of an infrastructure
DevopsItalia2015 - DHCP at Facebook - Evolution of an infrastructureAngelo Failla
 
Automating with NX-OS: Let's Get Started!
Automating with NX-OS: Let's Get Started!Automating with NX-OS: Let's Get Started!
Automating with NX-OS: Let's Get Started!Cisco DevNet
 
Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...
Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...
Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...Cloud Native Day Tel Aviv
 
Hannes end-of-the-router-tnc17
Hannes end-of-the-router-tnc17Hannes end-of-the-router-tnc17
Hannes end-of-the-router-tnc17Hannes Gredler
 
DEVNET-1175 OpenDaylight Service Function Chaining
DEVNET-1175	OpenDaylight Service Function ChainingDEVNET-1175	OpenDaylight Service Function Chaining
DEVNET-1175 OpenDaylight Service Function ChainingCisco DevNet
 
Integrating Active Networking and Commercial-Grade Routing Platforms
Integrating Active Networking and Commercial-Grade Routing PlatformsIntegrating Active Networking and Commercial-Grade Routing Platforms
Integrating Active Networking and Commercial-Grade Routing PlatformsTal Lavian Ph.D.
 
Open Networking for Your OpenStack
Open Networking for Your OpenStackOpen Networking for Your OpenStack
Open Networking for Your OpenStackCumulus Networks
 
OVS and DPDK - T.F. Herbert, K. Traynor, M. Gray
OVS and DPDK - T.F. Herbert, K. Traynor, M. GrayOVS and DPDK - T.F. Herbert, K. Traynor, M. Gray
OVS and DPDK - T.F. Herbert, K. Traynor, M. Grayharryvanhaaren
 
Возможности интерпретатора Python в NX-OS
Возможности интерпретатора Python в NX-OSВозможности интерпретатора Python в NX-OS
Возможности интерпретатора Python в NX-OSCisco Russia
 
Ovn vancouver
Ovn vancouverOvn vancouver
Ovn vancouverMason Mei
 
KVM Enhancements for OPNFV
KVM Enhancements for OPNFVKVM Enhancements for OPNFV
KVM Enhancements for OPNFVOPNFV
 
Improving Network Application Performance using Load Aware Libeventdev
Improving Network Application Performance using Load Aware LibeventdevImproving Network Application Performance using Load Aware Libeventdev
Improving Network Application Performance using Load Aware LibeventdevMichelle Holley
 

Mais procurados (20)

ONIE / Cumulus Networks Webinar
ONIE / Cumulus Networks WebinarONIE / Cumulus Networks Webinar
ONIE / Cumulus Networks Webinar
 
L2 and L3 agent restructure
L2 and L3 agent restructureL2 and L3 agent restructure
L2 and L3 agent restructure
 
Cumulus Linux 2.5.3
Cumulus Linux 2.5.3Cumulus Linux 2.5.3
Cumulus Linux 2.5.3
 
Opensource approach to design and deployment of Microservices based VNF
Opensource approach to design and deployment of Microservices based VNFOpensource approach to design and deployment of Microservices based VNF
Opensource approach to design and deployment of Microservices based VNF
 
Cumulus Linux 2.5.4
Cumulus Linux 2.5.4Cumulus Linux 2.5.4
Cumulus Linux 2.5.4
 
Advanced Traffic Engineering (TE++)
Advanced Traffic Engineering (TE++)Advanced Traffic Engineering (TE++)
Advanced Traffic Engineering (TE++)
 
FD.io - The Universal Dataplane
FD.io - The Universal DataplaneFD.io - The Universal Dataplane
FD.io - The Universal Dataplane
 
DevopsItalia2015 - DHCP at Facebook - Evolution of an infrastructure
DevopsItalia2015 - DHCP at Facebook - Evolution of an infrastructureDevopsItalia2015 - DHCP at Facebook - Evolution of an infrastructure
DevopsItalia2015 - DHCP at Facebook - Evolution of an infrastructure
 
Automating with NX-OS: Let's Get Started!
Automating with NX-OS: Let's Get Started!Automating with NX-OS: Let's Get Started!
Automating with NX-OS: Let's Get Started!
 
Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...
Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...
Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...
 
Hannes end-of-the-router-tnc17
Hannes end-of-the-router-tnc17Hannes end-of-the-router-tnc17
Hannes end-of-the-router-tnc17
 
DEVNET-1175 OpenDaylight Service Function Chaining
DEVNET-1175	OpenDaylight Service Function ChainingDEVNET-1175	OpenDaylight Service Function Chaining
DEVNET-1175 OpenDaylight Service Function Chaining
 
Integrating Active Networking and Commercial-Grade Routing Platforms
Integrating Active Networking and Commercial-Grade Routing PlatformsIntegrating Active Networking and Commercial-Grade Routing Platforms
Integrating Active Networking and Commercial-Grade Routing Platforms
 
Open Networking for Your OpenStack
Open Networking for Your OpenStackOpen Networking for Your OpenStack
Open Networking for Your OpenStack
 
OVS and DPDK - T.F. Herbert, K. Traynor, M. Gray
OVS and DPDK - T.F. Herbert, K. Traynor, M. GrayOVS and DPDK - T.F. Herbert, K. Traynor, M. Gray
OVS and DPDK - T.F. Herbert, K. Traynor, M. Gray
 
SDN Project PPT
SDN Project PPTSDN Project PPT
SDN Project PPT
 
Возможности интерпретатора Python в NX-OS
Возможности интерпретатора Python в NX-OSВозможности интерпретатора Python в NX-OS
Возможности интерпретатора Python в NX-OS
 
Ovn vancouver
Ovn vancouverOvn vancouver
Ovn vancouver
 
KVM Enhancements for OPNFV
KVM Enhancements for OPNFVKVM Enhancements for OPNFV
KVM Enhancements for OPNFV
 
Improving Network Application Performance using Load Aware Libeventdev
Improving Network Application Performance using Load Aware LibeventdevImproving Network Application Performance using Load Aware Libeventdev
Improving Network Application Performance using Load Aware Libeventdev
 

Destaque

A review on toxicity effects on Aconitum carmichaelii Debx (Chuan wu and Fuzi...
A review on toxicity effects on Aconitum carmichaelii Debx (Chuan wu and Fuzi...A review on toxicity effects on Aconitum carmichaelii Debx (Chuan wu and Fuzi...
A review on toxicity effects on Aconitum carmichaelii Debx (Chuan wu and Fuzi...Palmer Imbenzi
 
What's a Core Image? An Image-Processing Framework on iOS and OS X
What's a Core Image? An Image-Processing Framework on iOS and OS XWhat's a Core Image? An Image-Processing Framework on iOS and OS X
What's a Core Image? An Image-Processing Framework on iOS and OS XFlatiron School
 
2011新年好
2011新年好2011新年好
2011新年好zengss
 
Bang gia quang cao bao phu nu viet nam
Bang gia quang cao bao phu nu viet namBang gia quang cao bao phu nu viet nam
Bang gia quang cao bao phu nu viet namHuyền Đỗ
 
UNDERSTANDING THE TECHNOLOGY OF THE DARAKI-CHATTAN CUPULES: THE CUPULE REPLIC...
UNDERSTANDING THE TECHNOLOGY OF THE DARAKI-CHATTAN CUPULES: THE CUPULE REPLIC...UNDERSTANDING THE TECHNOLOGY OF THE DARAKI-CHATTAN CUPULES: THE CUPULE REPLIC...
UNDERSTANDING THE TECHNOLOGY OF THE DARAKI-CHATTAN CUPULES: THE CUPULE REPLIC...Jai Lakshwani
 
Industrial Biotechnology China News-2010-Sample Issue
Industrial Biotechnology China News-2010-Sample IssueIndustrial Biotechnology China News-2010-Sample Issue
Industrial Biotechnology China News-2010-Sample IssueCCM International Limited
 
Session ii g3 overview epidemiology modeling mmc
Session ii g3 overview epidemiology modeling mmcSession ii g3 overview epidemiology modeling mmc
Session ii g3 overview epidemiology modeling mmcUSD Bioinformatics
 
Unit 6 integrating.ppt
 Unit 6 integrating.ppt Unit 6 integrating.ppt
Unit 6 integrating.pptwangqh2696122
 

Destaque (20)

Battery power systems
Battery power systemsBattery power systems
Battery power systems
 
[Format] spec. soal ujian
[Format] spec. soal ujian[Format] spec. soal ujian
[Format] spec. soal ujian
 
A review on toxicity effects on Aconitum carmichaelii Debx (Chuan wu and Fuzi...
A review on toxicity effects on Aconitum carmichaelii Debx (Chuan wu and Fuzi...A review on toxicity effects on Aconitum carmichaelii Debx (Chuan wu and Fuzi...
A review on toxicity effects on Aconitum carmichaelii Debx (Chuan wu and Fuzi...
 
INGLES A1
INGLES A1INGLES A1
INGLES A1
 
What's a Core Image? An Image-Processing Framework on iOS and OS X
What's a Core Image? An Image-Processing Framework on iOS and OS XWhat's a Core Image? An Image-Processing Framework on iOS and OS X
What's a Core Image? An Image-Processing Framework on iOS and OS X
 
Manual crea
Manual creaManual crea
Manual crea
 
2011新年好
2011新年好2011新年好
2011新年好
 
Bang gia quang cao bao phu nu viet nam
Bang gia quang cao bao phu nu viet namBang gia quang cao bao phu nu viet nam
Bang gia quang cao bao phu nu viet nam
 
UNDERSTANDING THE TECHNOLOGY OF THE DARAKI-CHATTAN CUPULES: THE CUPULE REPLIC...
UNDERSTANDING THE TECHNOLOGY OF THE DARAKI-CHATTAN CUPULES: THE CUPULE REPLIC...UNDERSTANDING THE TECHNOLOGY OF THE DARAKI-CHATTAN CUPULES: THE CUPULE REPLIC...
UNDERSTANDING THE TECHNOLOGY OF THE DARAKI-CHATTAN CUPULES: THE CUPULE REPLIC...
 
Jhfkf
JhfkfJhfkf
Jhfkf
 
UC_29_Dossier _Evento _RM
UC_29_Dossier _Evento _RMUC_29_Dossier _Evento _RM
UC_29_Dossier _Evento _RM
 
Industrial Biotechnology China News-2010-Sample Issue
Industrial Biotechnology China News-2010-Sample IssueIndustrial Biotechnology China News-2010-Sample Issue
Industrial Biotechnology China News-2010-Sample Issue
 
Tet=dsl;fjds
Tet=dsl;fjdsTet=dsl;fjds
Tet=dsl;fjds
 
TELE-satellite-1201
TELE-satellite-1201TELE-satellite-1201
TELE-satellite-1201
 
Session ii g3 overview epidemiology modeling mmc
Session ii g3 overview epidemiology modeling mmcSession ii g3 overview epidemiology modeling mmc
Session ii g3 overview epidemiology modeling mmc
 
Santa claus is a woman
Santa claus is a womanSanta claus is a woman
Santa claus is a woman
 
Unit 6 integrating.ppt
 Unit 6 integrating.ppt Unit 6 integrating.ppt
Unit 6 integrating.ppt
 
Visão apresentação
Visão   apresentaçãoVisão   apresentação
Visão apresentação
 
Growing Food In Cities: Benefits of Urban Agriculture in the United Kingdom
Growing Food In Cities: Benefits of Urban Agriculture in the United KingdomGrowing Food In Cities: Benefits of Urban Agriculture in the United Kingdom
Growing Food In Cities: Benefits of Urban Agriculture in the United Kingdom
 
Do'a ba'da sholat
Do'a ba'da sholatDo'a ba'da sholat
Do'a ba'da sholat
 

Semelhante a Fastsocket Linxiaofeng

PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...PROIDEA
 
[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community)
[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community) [발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community)
[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community) 동현 김
 
PFQ@ 9th Italian Networking Workshop (Courmayeur)
PFQ@ 9th Italian Networking Workshop (Courmayeur)PFQ@ 9th Italian Networking Workshop (Courmayeur)
PFQ@ 9th Italian Networking Workshop (Courmayeur)Nicola Bonelli
 
Install FD.IO VPP On Intel(r) Architecture & Test with Trex*
Install FD.IO VPP On Intel(r) Architecture & Test with Trex*Install FD.IO VPP On Intel(r) Architecture & Test with Trex*
Install FD.IO VPP On Intel(r) Architecture & Test with Trex*Michelle Holley
 
Sharing High-Performance Interconnects Across Multiple Virtual Machines
Sharing High-Performance Interconnects Across Multiple Virtual MachinesSharing High-Performance Interconnects Across Multiple Virtual Machines
Sharing High-Performance Interconnects Across Multiple Virtual Machinesinside-BigData.com
 
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxSamsung Open Source Group
 
Sparc t4 1 system technical overview
Sparc t4 1 system technical overviewSparc t4 1 system technical overview
Sparc t4 1 system technical overviewsolarisyougood
 
Shak larry-jeder-perf-and-tuning-summit14-part2-final
Shak larry-jeder-perf-and-tuning-summit14-part2-finalShak larry-jeder-perf-and-tuning-summit14-part2-final
Shak larry-jeder-perf-and-tuning-summit14-part2-finalTommy Lee
 
Implementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernelImplementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernelOlivier Bonaventure
 
OpenStack Scale-out Networking Architecture
OpenStack Scale-out Networking ArchitectureOpenStack Scale-out Networking Architecture
OpenStack Scale-out Networking ArchitectureRandy Bias
 
Recent Developments in Donard
Recent Developments in DonardRecent Developments in Donard
Recent Developments in DonardPMC-Sierra Inc.
 
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdfJunZhao68
 
Fast datastacks - fast and flexible nfv solution stacks leveraging fd.io
Fast datastacks - fast and flexible nfv solution stacks leveraging fd.ioFast datastacks - fast and flexible nfv solution stacks leveraging fd.io
Fast datastacks - fast and flexible nfv solution stacks leveraging fd.ioOPNFV
 
FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)Kirill Tsym
 
FD.IO Vector Packet Processing
FD.IO Vector Packet ProcessingFD.IO Vector Packet Processing
FD.IO Vector Packet ProcessingKernel TLV
 
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...Haidee McMahon
 
High performace network of Cloud Native Taiwan User Group
High performace network of Cloud Native Taiwan User GroupHigh performace network of Cloud Native Taiwan User Group
High performace network of Cloud Native Taiwan User GroupHungWei Chiu
 

Semelhante a Fastsocket Linxiaofeng (20)

PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...
 
[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community)
[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community) [발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community)
[발표자료] 오픈소스 Pacemaker 활용한 zabbix 이중화 방안(w/ Zabbix Korea Community)
 
PFQ@ 9th Italian Networking Workshop (Courmayeur)
PFQ@ 9th Italian Networking Workshop (Courmayeur)PFQ@ 9th Italian Networking Workshop (Courmayeur)
PFQ@ 9th Italian Networking Workshop (Courmayeur)
 
pps Matters
pps Matterspps Matters
pps Matters
 
Install FD.IO VPP On Intel(r) Architecture & Test with Trex*
Install FD.IO VPP On Intel(r) Architecture & Test with Trex*Install FD.IO VPP On Intel(r) Architecture & Test with Trex*
Install FD.IO VPP On Intel(r) Architecture & Test with Trex*
 
Building a Router
Building a RouterBuilding a Router
Building a Router
 
Sharing High-Performance Interconnects Across Multiple Virtual Machines
Sharing High-Performance Interconnects Across Multiple Virtual MachinesSharing High-Performance Interconnects Across Multiple Virtual Machines
Sharing High-Performance Interconnects Across Multiple Virtual Machines
 
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
 
Sparc t4 1 system technical overview
Sparc t4 1 system technical overviewSparc t4 1 system technical overview
Sparc t4 1 system technical overview
 
Shak larry-jeder-perf-and-tuning-summit14-part2-final
Shak larry-jeder-perf-and-tuning-summit14-part2-finalShak larry-jeder-perf-and-tuning-summit14-part2-final
Shak larry-jeder-perf-and-tuning-summit14-part2-final
 
Implementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernelImplementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernel
 
OpenStack Scale-out Networking Architecture
OpenStack Scale-out Networking ArchitectureOpenStack Scale-out Networking Architecture
OpenStack Scale-out Networking Architecture
 
Recent Developments in Donard
Recent Developments in DonardRecent Developments in Donard
Recent Developments in Donard
 
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf
20160927-tierney-improving-performance-40G-100G-data-transfer-nodes.pdf
 
Fast datastacks - fast and flexible nfv solution stacks leveraging fd.io
Fast datastacks - fast and flexible nfv solution stacks leveraging fd.ioFast datastacks - fast and flexible nfv solution stacks leveraging fd.io
Fast datastacks - fast and flexible nfv solution stacks leveraging fd.io
 
FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)
 
FD.IO Vector Packet Processing
FD.IO Vector Packet ProcessingFD.IO Vector Packet Processing
FD.IO Vector Packet Processing
 
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...
 
High performace network of Cloud Native Taiwan User Group
High performace network of Cloud Native Taiwan User GroupHigh performace network of Cloud Native Taiwan User Group
High performace network of Cloud Native Taiwan User Group
 
Run Your Own 6LoWPAN Based IoT Network
Run Your Own 6LoWPAN Based IoT NetworkRun Your Own 6LoWPAN Based IoT Network
Run Your Own 6LoWPAN Based IoT Network
 

Mais de Michael Zhang

廣告系統在Docker/Mesos上的可靠性實踐
廣告系統在Docker/Mesos上的可靠性實踐廣告系統在Docker/Mesos上的可靠性實踐
廣告系統在Docker/Mesos上的可靠性實踐Michael Zhang
 
HKIX Upgrade to 100Gbps-Based Two-Tier Architecture
HKIX Upgrade to 100Gbps-Based Two-Tier ArchitectureHKIX Upgrade to 100Gbps-Based Two-Tier Architecture
HKIX Upgrade to 100Gbps-Based Two-Tier ArchitectureMichael Zhang
 
2014 GITC 帶上數據去創業 talkingdata—高铎
 2014 GITC 帶上數據去創業 talkingdata—高铎 2014 GITC 帶上數據去創業 talkingdata—高铎
2014 GITC 帶上數據去創業 talkingdata—高铎Michael Zhang
 
2014 Hpocon 李志刚 1号店 - puppet在1号店的实践
2014 Hpocon 李志刚   1号店 - puppet在1号店的实践2014 Hpocon 李志刚   1号店 - puppet在1号店的实践
2014 Hpocon 李志刚 1号店 - puppet在1号店的实践Michael Zhang
 
2014 Hpocon 姚仁捷 唯品会 - data driven ops
2014 Hpocon 姚仁捷   唯品会 - data driven ops2014 Hpocon 姚仁捷   唯品会 - data driven ops
2014 Hpocon 姚仁捷 唯品会 - data driven opsMichael Zhang
 
2014 Hpocon 高驰涛 云智慧 - apm在高性能架构中的应用
2014 Hpocon 高驰涛   云智慧 - apm在高性能架构中的应用2014 Hpocon 高驰涛   云智慧 - apm在高性能架构中的应用
2014 Hpocon 高驰涛 云智慧 - apm在高性能架构中的应用Michael Zhang
 
2014 Hpocon 黄慧攀 upyun - 平台架构的服务监控
2014 Hpocon 黄慧攀   upyun - 平台架构的服务监控2014 Hpocon 黄慧攀   upyun - 平台架构的服务监控
2014 Hpocon 黄慧攀 upyun - 平台架构的服务监控Michael Zhang
 
2014 Hpocon 吴磊 ucloud - 由点到面 提升公有云服务可用性
2014 Hpocon 吴磊   ucloud - 由点到面 提升公有云服务可用性2014 Hpocon 吴磊   ucloud - 由点到面 提升公有云服务可用性
2014 Hpocon 吴磊 ucloud - 由点到面 提升公有云服务可用性Michael Zhang
 
2014 Hpocon 周辉 大众点评 - 大众点评混合开发模式下的加速尝试
2014 Hpocon 周辉   大众点评 - 大众点评混合开发模式下的加速尝试2014 Hpocon 周辉   大众点评 - 大众点评混合开发模式下的加速尝试
2014 Hpocon 周辉 大众点评 - 大众点评混合开发模式下的加速尝试Michael Zhang
 
Cuda 6 performance_report
Cuda 6 performance_reportCuda 6 performance_report
Cuda 6 performance_reportMichael Zhang
 
The Data Center and Hadoop
The Data Center and HadoopThe Data Center and Hadoop
The Data Center and HadoopMichael Zhang
 
Hadoop Hardware @Twitter: Size does matter.
Hadoop Hardware @Twitter: Size does matter.Hadoop Hardware @Twitter: Size does matter.
Hadoop Hardware @Twitter: Size does matter.Michael Zhang
 
Q con shanghai2013-[ben lavender]-[long-distance relationships with robots]
Q con shanghai2013-[ben lavender]-[long-distance relationships with robots]Q con shanghai2013-[ben lavender]-[long-distance relationships with robots]
Q con shanghai2013-[ben lavender]-[long-distance relationships with robots]Michael Zhang
 
Q con shanghai2013-[刘海锋]-[京东文件系统简介]
Q con shanghai2013-[刘海锋]-[京东文件系统简介]Q con shanghai2013-[刘海锋]-[京东文件系统简介]
Q con shanghai2013-[刘海锋]-[京东文件系统简介]Michael Zhang
 
Q con shanghai2013-[韩军]-[超大型电商系统架构解密]
Q con shanghai2013-[韩军]-[超大型电商系统架构解密]Q con shanghai2013-[韩军]-[超大型电商系统架构解密]
Q con shanghai2013-[韩军]-[超大型电商系统架构解密]Michael Zhang
 
Q con shanghai2013-[jains krums]-[real-time-delivery-archiecture]
Q con shanghai2013-[jains krums]-[real-time-delivery-archiecture]Q con shanghai2013-[jains krums]-[real-time-delivery-archiecture]
Q con shanghai2013-[jains krums]-[real-time-delivery-archiecture]Michael Zhang
 
Q con shanghai2013-[黄舒泉]-[intel it openstack practice]
Q con shanghai2013-[黄舒泉]-[intel it openstack practice]Q con shanghai2013-[黄舒泉]-[intel it openstack practice]
Q con shanghai2013-[黄舒泉]-[intel it openstack practice]Michael Zhang
 
Q con shanghai2013-罗婷-performance methodology
Q con shanghai2013-罗婷-performance methodologyQ con shanghai2013-罗婷-performance methodology
Q con shanghai2013-罗婷-performance methodologyMichael Zhang
 
Q con shanghai2013-赵永明-ats与cdn实践
Q con shanghai2013-赵永明-ats与cdn实践Q con shanghai2013-赵永明-ats与cdn实践
Q con shanghai2013-赵永明-ats与cdn实践Michael Zhang
 

Mais de Michael Zhang (20)

廣告系統在Docker/Mesos上的可靠性實踐
廣告系統在Docker/Mesos上的可靠性實踐廣告系統在Docker/Mesos上的可靠性實踐
廣告系統在Docker/Mesos上的可靠性實踐
 
HKIX Upgrade to 100Gbps-Based Two-Tier Architecture
HKIX Upgrade to 100Gbps-Based Two-Tier ArchitectureHKIX Upgrade to 100Gbps-Based Two-Tier Architecture
HKIX Upgrade to 100Gbps-Based Two-Tier Architecture
 
2014 GITC 帶上數據去創業 talkingdata—高铎
 2014 GITC 帶上數據去創業 talkingdata—高铎 2014 GITC 帶上數據去創業 talkingdata—高铎
2014 GITC 帶上數據去創業 talkingdata—高铎
 
Spark sql meetup
Spark sql meetupSpark sql meetup
Spark sql meetup
 
2014 Hpocon 李志刚 1号店 - puppet在1号店的实践
2014 Hpocon 李志刚   1号店 - puppet在1号店的实践2014 Hpocon 李志刚   1号店 - puppet在1号店的实践
2014 Hpocon 李志刚 1号店 - puppet在1号店的实践
 
2014 Hpocon 姚仁捷 唯品会 - data driven ops
2014 Hpocon 姚仁捷   唯品会 - data driven ops2014 Hpocon 姚仁捷   唯品会 - data driven ops
2014 Hpocon 姚仁捷 唯品会 - data driven ops
 
2014 Hpocon 高驰涛 云智慧 - apm在高性能架构中的应用
2014 Hpocon 高驰涛   云智慧 - apm在高性能架构中的应用2014 Hpocon 高驰涛   云智慧 - apm在高性能架构中的应用
2014 Hpocon 高驰涛 云智慧 - apm在高性能架构中的应用
 
2014 Hpocon 黄慧攀 upyun - 平台架构的服务监控
2014 Hpocon 黄慧攀   upyun - 平台架构的服务监控2014 Hpocon 黄慧攀   upyun - 平台架构的服务监控
2014 Hpocon 黄慧攀 upyun - 平台架构的服务监控
 
2014 Hpocon 吴磊 ucloud - 由点到面 提升公有云服务可用性
2014 Hpocon 吴磊   ucloud - 由点到面 提升公有云服务可用性2014 Hpocon 吴磊   ucloud - 由点到面 提升公有云服务可用性
2014 Hpocon 吴磊 ucloud - 由点到面 提升公有云服务可用性
 
2014 Hpocon 周辉 大众点评 - 大众点评混合开发模式下的加速尝试
2014 Hpocon 周辉   大众点评 - 大众点评混合开发模式下的加速尝试2014 Hpocon 周辉   大众点评 - 大众点评混合开发模式下的加速尝试
2014 Hpocon 周辉 大众点评 - 大众点评混合开发模式下的加速尝试
 
Cuda 6 performance_report
Cuda 6 performance_reportCuda 6 performance_report
Cuda 6 performance_report
 
The Data Center and Hadoop
The Data Center and HadoopThe Data Center and Hadoop
The Data Center and Hadoop
 
Hadoop Hardware @Twitter: Size does matter.
Hadoop Hardware @Twitter: Size does matter.Hadoop Hardware @Twitter: Size does matter.
Hadoop Hardware @Twitter: Size does matter.
 
Q con shanghai2013-[ben lavender]-[long-distance relationships with robots]
Q con shanghai2013-[ben lavender]-[long-distance relationships with robots]Q con shanghai2013-[ben lavender]-[long-distance relationships with robots]
Q con shanghai2013-[ben lavender]-[long-distance relationships with robots]
 
Q con shanghai2013-[刘海锋]-[京东文件系统简介]
Q con shanghai2013-[刘海锋]-[京东文件系统简介]Q con shanghai2013-[刘海锋]-[京东文件系统简介]
Q con shanghai2013-[刘海锋]-[京东文件系统简介]
 
Q con shanghai2013-[韩军]-[超大型电商系统架构解密]
Q con shanghai2013-[韩军]-[超大型电商系统架构解密]Q con shanghai2013-[韩军]-[超大型电商系统架构解密]
Q con shanghai2013-[韩军]-[超大型电商系统架构解密]
 
Q con shanghai2013-[jains krums]-[real-time-delivery-archiecture]
Q con shanghai2013-[jains krums]-[real-time-delivery-archiecture]Q con shanghai2013-[jains krums]-[real-time-delivery-archiecture]
Q con shanghai2013-[jains krums]-[real-time-delivery-archiecture]
 
Q con shanghai2013-[黄舒泉]-[intel it openstack practice]
Q con shanghai2013-[黄舒泉]-[intel it openstack practice]Q con shanghai2013-[黄舒泉]-[intel it openstack practice]
Q con shanghai2013-[黄舒泉]-[intel it openstack practice]
 
Q con shanghai2013-罗婷-performance methodology
Q con shanghai2013-罗婷-performance methodologyQ con shanghai2013-罗婷-performance methodology
Q con shanghai2013-罗婷-performance methodology
 
Q con shanghai2013-赵永明-ats与cdn实践
Q con shanghai2013-赵永明-ats与cdn实践Q con shanghai2013-赵永明-ats与cdn实践
Q con shanghai2013-赵永明-ats与cdn实践
 

Último

Film cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasaFilm cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasa494f574xmv
 
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书rnrncn29
 
SCM Symposium PPT Format Customer loyalty is predi
SCM Symposium PPT Format Customer loyalty is prediSCM Symposium PPT Format Customer loyalty is predi
SCM Symposium PPT Format Customer loyalty is predieusebiomeyer
 
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书rnrncn29
 
Top 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxTop 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxDyna Gilbert
 
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作ys8omjxb
 
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Sonam Pathan
 
Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Sonam Pathan
 
NSX-T and Service Interfaces presentation
NSX-T and Service Interfaces presentationNSX-T and Service Interfaces presentation
NSX-T and Service Interfaces presentationMarko4394
 
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一z xss
 
PHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationPHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationLinaWolf1
 
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书zdzoqco
 
Q4-1-Illustrating-Hypothesis-Testing.pptx
Q4-1-Illustrating-Hypothesis-Testing.pptxQ4-1-Illustrating-Hypothesis-Testing.pptx
Q4-1-Illustrating-Hypothesis-Testing.pptxeditsforyah
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Paul Calvano
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhimiss dipika
 

Último (17)

Film cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasaFilm cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasa
 
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
 
SCM Symposium PPT Format Customer loyalty is predi
SCM Symposium PPT Format Customer loyalty is prediSCM Symposium PPT Format Customer loyalty is predi
SCM Symposium PPT Format Customer loyalty is predi
 
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
 
Top 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxTop 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptx
 
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
 
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
Call Girls In The Ocean Pearl Retreat Hotel New Delhi 9873777170
 
Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170
 
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
 
NSX-T and Service Interfaces presentation
NSX-T and Service Interfaces presentationNSX-T and Service Interfaces presentation
NSX-T and Service Interfaces presentation
 
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
办理(UofR毕业证书)罗切斯特大学毕业证成绩单原版一比一
 
PHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationPHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 Documentation
 
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
 
Q4-1-Illustrating-Hypothesis-Testing.pptx
Q4-1-Illustrating-Hypothesis-Testing.pptxQ4-1-Illustrating-Hypothesis-Testing.pptx
Q4-1-Illustrating-Hypothesis-Testing.pptx
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24
 
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhi
 

Fastsocket Linxiaofeng

  • 1. Fastsocket Speed up your socket SINA Xiaofeng Lin jerrylin.lxf@gmail.com
  • 2. Contributor SINA: Xiaofeng Lin Xiaodong Li Tsinghua: Yu Chen Junjie Mao Jiaquan He
  • 3. Socket API Problem Socket API is fundamental for most network applications • Kernel eats too much CPU cycles • Less CPU cycles left to Application • Call for more efficient kernel socket API
  • 4. Performance on Multicore System Theoretical Overall Performance: Single core performance * Available CPU cores How close can we reach the limit: Scalability.
  • 5. Outline • Scalability Performance • Single Core Performance • Production System Feasibility • Future Work
  • 6. Fastsocket • Scalability Performance • Single Core Performance • Production System Feasibility • Future Work
  • 7. Testing Environment • HAProxy: Open source TCP/HTTP loadbalancer. • OS: CentOS-6.2 (Kernel : 2.6.32-220.23.1.el6) • CPU: Intel Ivy-Bridge E5-2697-v2 (12 core) * 2 • NIC: Intel X520 (Support Flow-Director) • Scenario: short TCP connections Server http_̲l oad HAproxy (Ivy bri dge E5-‐‑‒2697 v2) http_̲l oad http_̲l oad
  • 8. Kernel Inefficiency More than 90% CPU is consumed by Kernel
  • 9. Synchronization Overhead Almost 80% CPU time is spent on locking.
  • 10. Scalability Problem HTTP CPS (Connection Per Second) throughput with different number of CPU cores. Scalability is KEY to multicore system capacity.
  • 11. Dilemma How to update single machine capacity? • Spend more for more CPU cores • Capacity dose not improve but get worse • Just awkward
  • 12. What to do • Hardware Assistance Limited effects. (NIC offload feature) • Data Plane Mode You need to implement your own TCP/IP stack. (DPDK) Lacks of kernel generality and full features. Other production limits. • Change Linux kernel Keep improving but not enough. (Linux upstream) Need to modify application code. (Megapipe OSDI)
  • 13. Fastsocket Scalability Great! CPU is doing more for haproxy.
  • 14. Fastsocket Scalability Scalability is key for multicore performance. Fastsocket: 5.8X Base and 2.3X Lastest.
  • 15. Production System Evaluation Two 8-core HAProxy (HTTP proxy) servers handling same amount of traffic, with and without Fastsocket.
  • 16. Kernel Bottleneck • Non Local Process of Connections • Global TCP Control Block (TCB) Management • Synchronization Overhead from VFS
  • 17. Non Local Process of Connections A given connection is processed in two phases: • Net-RX SoftIRQ in interrupt context • Application and System Call in process context. Two phases are often handles by different CPU cores: • Introduces lock contentions. • Causes CPU cache bouncing.
  • 18. Non Local Process of Connections Scenario that server actively connects out: Haproxy Haproxy CPU CPU0 1 Network Kernel Stack Network Stack Queue-0 Queue-1 RSS
  • 19. Global TCB Management TCB is represented as socket in Linux kernel: • Listen Socket: – A single listen socket is used for connection setup • Established Socket: – A global hash table is used for connection management
  • 20. Global TCB Management Single listen socket HOTSPOT: CPU CPU0 1 Listen Socket Kernel Haproxy NIC Haproxy Queue-0 Queue-1
  • 21. VFS Overhead • Socket is abstracted under VFS • Intensive synchronization for Inode and Dentry in VFS • These overhead are inherited by socket
  • 22. Methodology • Resources Partition • Local Processing
  • 23. Design Component • Receive Flow Deliver • Local Listen Table & Local Established Table • Fastsocket-aware VFS
  • 24. Fastsocket Architecture Application Process Local Established Table Faassttssoocckkeett--aawaarree VFSS Local Listen Table TCP Layer ... Application Process User Kernel NIC ... Local Established Table Local Listen Table Receive Flow Dilever PerCore Process Zone NET-RX SoftIRQ RSS TCP Layer NET-RX SoftIRQ PerCore Process Zone Outgoing packets to NIC Incoming packets from NIC
  • 25. Receive Flow Deliver (RFD) RFD delivers packets to the CPU core where application will further process them. Haproxy Haproxy CPU CPU0 1 Kernel Network Stack Network Stack Receive Flow Deliver(RFD) Queue-0 Queue-1 RSS Good Path Bad Path RFD can leverage advanced NIC features (Flow-Director)
  • 26. Local Listen Table Clone the listen socket for each CPU core in LOCAL table. Kernel Haproxy Local Listen Socket Local Listen Table Local Listen Socket Local Listen Table CPU CPU0 1 NIC Haproxy Queue-0 Queue-1
  • 27. Local Established Table Established sockets are managed in LOCAL table. CPU1 CPU0 Kernel Haproxy Local Establish Table NIC Haproxy Local Establish Table Queue-0 Queue-1
  • 28. Fastsocket-aware VFS Provide a FAST path for socket in VFS: • Inode and Dentry are useless for socket • Bypass the unnecessary lock-intensive routines • Retain enough to be compatible
  • 29. Fastsocket Architecture Application Process Local Established Table Faassttssoocckkeett--aawaarree VFSS Local Listen Table TCP Layer ... Application Process User Kernel NIC ... Local Established Table Local Listen Table Receive Flow Dilever PerCore Process Zone NET-RX SoftIRQ RSS TCP Layer NET-RX SoftIRQ PerCore Process Zone Outgoing packets to NIC Incoming packets from NIC
  • 31. Intel Hyper-Threading Further boot performance 20% with Intel HT. E5-2697-v2 Fastsocket 406632 Fastsocket-HT 476331(117.2%) Fastsocket-HT:476.3k cps, 3.87m pps, 3.1G bps (short connection)
  • 32. Fastsocket • Scalability Performance • Single Core Performance • Production System Feasibility • Future Work
  • 33. Methodology • Network Specialization • Cross-Layer Design
  • 34. Network Specialization General service provided inside Linux kernel: • Slab • Epoll • VFS • Timer etc. Customize these general services for Network
  • 35. Fastsocket Skb-Pool • Percore skb pool • Combine skb header and data • Local Pool and Recycle Pool (Flow-Director)
  • 36. Fastsocket Fast-Epoll Motivation: • Epoll entries are managed in RB-Tree • Search the RB-Tree each time when calling epoll_ctl() • Memory access is a killer for performance Solution: • TCP Connection rarely shared across processes • Cache Epoll entry in file structure to save the search
  • 37. Cross-Layer Optimization • What is cross-layer optimization? • Overall optimization with Cross-Layer design – Direct-TCP – Receive-CPU-Selection
  • 38. Fastsocket Direct-TCP • Record input route information in TCP socket • Lookup socket directly before network stack • Read input route information from socket • Mark the packet as routed
  • 39. Fastsocket Receive-CPU-Selection Similar to Google RFS • Application marks current CPU id in the socket • Lookup socket directly before network stack • Read CPU id from socket and deliver accordingly Lighter, more accurate and thus faster than Google RFS
  • 40. Redis Benchmark Testing Environment: • Redis: Key-value cache and store • CPU: Intel E5 2640 v2 (6 core) * 2 • NIC: Intel X520 Configuration: • Persist TCP connections • 8 redis instances serving on difference ports • Only 8 CPU cores are used
  • 41. Redis Benchmark Disable Flow-Director: 20% throughput increase Enable Flow-Director: 45% throughput increase
  • 42. Fastsocket • Scalability Performance • Single Core Performance • Production System Feasibility • Future Work
  • 43. Compatibility & Generality • Full BSD-Socket API compatible • Full kernel network feature support • Require no change of application code • Nginx, HAProxy, Lighttpd, Redis, Memcached, etc.
  • 44. Deployment • Install RPM (Kernel, fastsocket.ko and libfsocket.so) • Load fastsocket.ko • Start application with PRELOAD libfsocket.so LD_PRELOAD=./libfsocket.so haproxy
  • 45. Maintainability • Flexible Control – Selectively enable Fastsocket to certain applications (nginx) – Compatible with regular socket (ssh) • Quick Rollback – Restart the application without libfsocket.so • Easy Updating – Most of codes are in fastsocket.ko – Updating fastsocket.ko and libfsocket.so is enough
  • 46. SINA Deployment • Adopted in HTTP load balance service (HAProxy) • Deployed in half of the major IDCs • Stable running for 8 months • Fastsocket will update all HAPoxy by the end of year
  • 47. Fastsocket • Scalability Performance • Single Core Performance • Production System Feasibility • Future Work
  • 48. Future Work • Make it faster – Improving Interrupt Mechanism – System-Call Batching – Zero Copy – Further Customization and Cross-Layer Optimization • Linux Mainstream
  • 50. Recruitment Join us ! xiaodong2@staff.sina.com