Transtracer: Socket-Based Tracing of Network Dependencies Among Processes in Distributed Applications

Yuuki Tsubouchi, Masahiro Furukawa, Ryosuke Matsumoto
{"title":"Transtracer: Socket-Based Tracing of Network Dependencies Among Processes in Distributed Applications","authors":"Yuuki Tsubouchi, Masahiro Furukawa, Ryosuke Matsumoto","doi":"10.1109/COMPSAC48688.2020.00-92","DOIUrl":null,"url":null,"abstract":"Distributed applications in web services have become increasingly complex in response to various user demands. Consequently, system administrators have difficulty understanding inter-process dependencies in distributed applications. When parts of the system are changed or augmented, they cannot identify the area of influence by the change, which might engender a more damaging outage than expected. Therefore, they must trace dependencies automatically among unknown processes. An earlier method discovered the dependency by detecting the transport connection using the Linux packet filter on the hosts at ends of the network connection. However, the extra delay to the application traffic increases because of the additional processing inherent in the packet processing in the Linux kernel. As described herein, we propose an architecture of monitoring network sockets, which are endpoints of TCP connections, to trace the dependency. As long as applications use the TCP protocol stack in the Linux kernel, the dependencies are discovered by our architecture. Therefore, monitoring processing only reads the connection information from network sockets. The processing is independent of the application communication. Therefore, the monitoring does not affect the network delay of the applications. Our experiments confirmed that our architecture reduced the delay overhead by 13–20 % and the resource load by 43.5 % compared to earlier reported methods.","PeriodicalId":430098,"journal":{"name":"2020 IEEE 44th Annual Computers, Software, and Applications Conference (COMPSAC)","volume":"4 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2020 IEEE 44th Annual Computers, Software, and Applications Conference (COMPSAC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/COMPSAC48688.2020.00-92","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

Abstract

Distributed applications in web services have become increasingly complex in response to various user demands. Consequently, system administrators have difficulty understanding inter-process dependencies in distributed applications. When parts of the system are changed or augmented, they cannot identify the area of influence by the change, which might engender a more damaging outage than expected. Therefore, they must trace dependencies automatically among unknown processes. An earlier method discovered the dependency by detecting the transport connection using the Linux packet filter on the hosts at ends of the network connection. However, the extra delay to the application traffic increases because of the additional processing inherent in the packet processing in the Linux kernel. As described herein, we propose an architecture of monitoring network sockets, which are endpoints of TCP connections, to trace the dependency. As long as applications use the TCP protocol stack in the Linux kernel, the dependencies are discovered by our architecture. Therefore, monitoring processing only reads the connection information from network sockets. The processing is independent of the application communication. Therefore, the monitoring does not affect the network delay of the applications. Our experiments confirmed that our architecture reduced the delay overhead by 13–20 % and the resource load by 43.5 % compared to earlier reported methods.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
Transtracer:基于套接字的分布式应用程序进程之间的网络依赖跟踪
为了响应各种用户需求,web服务中的分布式应用程序变得越来越复杂。因此,系统管理员很难理解分布式应用程序中的进程间依赖关系。当系统的某些部分被更改或扩展时,他们无法识别受更改影响的区域,这可能会导致比预期更具破坏性的中断。因此,它们必须自动跟踪未知进程之间的依赖关系。早期的一种方法是通过在网络连接末端的主机上使用Linux包过滤器检测传输连接来发现依赖关系。但是,由于Linux内核中数据包处理中固有的额外处理,应用程序流量的额外延迟会增加。如本文所述,我们提出了一种监控网络套接字(TCP连接的端点)的体系结构,以跟踪依赖关系。只要应用程序使用Linux内核中的TCP协议栈,我们的体系结构就会发现依赖关系。因此,监控处理只从网络套接字读取连接信息。处理独立于应用程序通信。因此,监控不会影响应用程序的网络延迟。我们的实验证实,与之前报道的方法相比,我们的架构减少了13 - 20%的延迟开销和43.5%的资源负载。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
The European Concept of Smart City: A Taxonomic Analysis An Early Warning System for Hemodialysis Complications Utilizing Transfer Learning from HD IoT Dataset A Systematic Literature Review of Practical Virtual and Augmented Reality Solutions in Surgery Optimization of Parallel Applications Under CPU Overcommitment A Blockchain Token Economy Model for Financing a Decentralized Electric Vehicle Charging Platform
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1