Steering connections to sockets with BPF socket lookup hook## Steering connections to sockets with BPF socket lookup hook Jakub Sitnicki, Cloudflare @jkbs0 @cloudflare eBPF Summit ## Who am I? - Software Engineer at Cloudflare Spectrum TCP/UDP reverse proxy scan first 1000 ports 7, 77, 777 are closed ## What is socket lookup? Application Receive path for local delivery  Protocol ## Driver ## Service dispatch with BPF socket lookup packet metadata struct bpf_sk_lookup { __u32 family; __u32 protocol; __u32 remote_ip4; __u32 remote_port; __u320 码力 | 23 页 | 441.22 KB | 1 年前3
curvefs client删除文件和目录功能设计• 遗留问题 • 工作量评估 ## 背景 目前curvefs client版本对删除unlink和rmdir的设计只有简单的删除inode和dentry结构,遗留了nlink和lookup count相关的内容还未实现,是不完备的。本文首先调研moosefs,chubaofs等分布式系统,参考并设计解决上述遗留问题。 当前删除接口代码如下: CURVEFS_ERROR FuseCli 段不同,目录的nlink字段初始值为2,并且在目录下,每创建一个新目录,nlink字段也会+1,删除目录nlink相应的减1。 目录不支持硬链接。 ## 二 是删除时lookup count未考虑: lookup count 指的是文件的访问计数。当文件/目录被打开时,即使文件/目录已经被另一个进程删除了(nlink=0),该文件/目录仍然可以被打开的进程访问,不会造成崩溃或报错,我们的curvefs也需要实现这样的语义。 about an inode * This function is called when the kernel removes an inode * The inode's lookup count increases by one for every call to * fuse reply entry and fuse reply create. The nlookup parameter0 码力 | 15 页 | 325.42 KB | 1 年前3
Lock-Free Atomic Shared Pointers Without a Split Reference Count? It Can Be Done!## +23 ## Lock-free Atomic Shared Pointers Without a Split Reference Count? It Can Be Done! DANIEL ANDERSON  Daniel Anderson and concurrency patterns • How existing atomicare implemented (the split reference count technique) • Deferred reclamation, i.e., garbage collection in C++ ## Some assumed knowledge • and concurrency patterns • How existing atomic are implemented (the split reference count technique) • Deferred reclamation, i.e., garbage collection in C++ ## Some assumed knowledge • 0 码力 | 45 页 | 5.12 MB | 1 年前3
Celery 2.0 Documentationsubtasks is not ready yet. ## • ready() Return True if all of the subtasks are ready. ## • completed_count() Returns the number of completed subtasks. ## • revoke() Revokes all of the subtasks. ## • iterate() 'delivery_info': {'delivery_tag': 1, 'exchange': u'testexchange', 'message_count': 0, 'redelivered': False, 'routing_key': u'testkey'}, 'properties': ClickManager implements the increment_clicks method, which takes a URL and by how much to increment its count by. clickmuncher/models.py: from Django.db import models from Django.utils.translation import ugettext_lazy0 码力 | 284 页 | 332.71 KB | 2 年前3
A New Dragon in the Den: Fast Conversion From Floating-Point Numbers0 码力 | 171 页 | 6.42 MB | 1 年前3
Compile-Time Compression and Resource Generation with C++20C++20's constexper features can: • Generate data from code at compile-time • Be used to construct: ☐ Lookup Tables Configuration Fuses ☐ Compressed Strings USB Descriptors ## Along the way • Introduce const int bar = 1; int main() { foo += 1; // bar += 1; // ERROR } ## Building Resources • Lookup Tables • Configuration Fuses • Compressed String Tables • USB Descriptor Code samples available  Lookup Tables Lets make a lookup table that does linear interpolation. - Warning: constexpris a gcc extension 0 码力 | 59 页 | 1.86 MB | 1 年前3
Django 2.2.x Documentationsubclass Writing a FileField subclass Custom Lookups A simple lookup example A simple transformer example Writing an efficient abs__lt lookup A bilateral transformer example Writing alternative implementations reference Model class reference Model Meta options Model instance reference QuerySet API reference Lookup API reference Query Expressions Conditional Expressions Database Functions Request and response types | Indexes | Meta options | Model class QuerySets: Making queries | QuerySet method reference | Lookup expressions Model instances: Instance methods | Accessing related objects Migrations: Introduction0 码力 | 2915 页 | 2.83 MB | 2 年前3
peewee Documentation Release 1.0.0select().where(user__in=editors) # how many active users are there? User.select().where(active=True).count() # paginate the user table and show me page 3 (users 41-60) User.select().order_by('username' annotate(Tweet).order_by('count', 'desc')) # another way of expressing the same User.select({ User: ['*'], Tweet: [Count('id', 'count')], }).group_by('id') group_by('id').join(Tweet).order_by('count', 'desc')) # do an atomic update TweetCount.update(count=F('count') + 1).where(user=charlie) You can use Django-style syntax to create select0 码力 | 101 页 | 163.20 KB | 1 年前3
Django 4.2.x Documentationsubclass Writing a FileField subclass How to write custom lookups A lookup example A transformer example Writing an efficient abs__lt lookup A bilateral transformer example Writing alternative implementations reference Model class reference Model Meta options Model instance reference QuerySet API reference Lookup API reference Query Expressions Conditional Expressions Database Functions Paginator Paginator class types | Indexes | Meta options | Model class QuerySets: Making queries | QuerySet method reference | Lookup expressions Model instances: Instance methods | Accessing related objects Migrations: Introduction0 码力 | 3305 页 | 3.16 MB | 2 年前3
Django 2.0.x Documentationsubclass Writing a FileField subclass Custom Lookups A simple lookup example A simple transformer example Writing an efficient abs__lt lookup A bilateral transformer example Writing alternative implementations reference Model class reference Model Meta options Model instance reference QuerySet API reference Lookup API reference Query Expressions Conditional Expressions Database Functions Request and response objects types | Indexes | Meta options | Model class QuerySets: Making queries | QuerySet method reference | Lookup expressions Model instances: Instance methods | Accessing related objects Migrations: Introduction0 码力 | 2746 页 | 2.67 MB | 2 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100
相关搜索词
BPF socket lookup hookeBPFBPF sk_lookupBPF mapssockmapTrash机制nlink字段lookup countSession机制inode原子共享指针锁-free拆分引用计数基准测试递延回收remote control commandperiodic tasksprefetch countresult backendconfiguration changesFloating-point numbersConversionLookup tableOptimizationPrecisionconstexprC++20lookup tablesconfiguration fusesUSB descriptorsCheckConstraintUniqueConstraintModel validationDjango ORMSessionMiddlewarepeewee ORMDatabaseQuerying APIModel APIFlask IntegrationDjango 4.2新功能弃用特性长期支持版本Python兼容性Djangorelease notesdocumentationPythonframework













