{"title":"Java RPC框架中的可预测性复制","authors":"Jianwei Tu, Christopher Stewart","doi":"10.1109/ICAC.2015.49","DOIUrl":null,"url":null,"abstract":"We propose a transport mechanism using replication for predictability to achieve low FCT for short flows. For each short TCP flow, we replicate it and send the identical packets for both flows by creating two connections to the receiver. The application uses the first flow that finishes the transfer. We observe that the congestion levels of different paths in data center networks are statistically independent. The original flow and replicated flow are highly likely to traverse different paths, reducing the probability of queuing delay. We implement flow replication in Apache Thrift transport layer. Apache Thrift is a RPC framework that supports multiple languages, especially Java. It can be used as a middleware at the application layer that means these is no need to modify the switches and operating systems. We conduct the experiments on our private cloud and Amazon EC2 data center. The latest EC2 data center is known to have multiple equal cost paths between two virtual machines. Our experiment results show that replication for predictability can reduce the Flow Completion Time of short TCP flows over 20%. When integrated with Cassandra, we can also improve the performance of Read operation with flow replication.","PeriodicalId":6643,"journal":{"name":"2015 IEEE International Conference on Autonomic Computing","volume":"97 1","pages":"163-164"},"PeriodicalIF":0.0000,"publicationDate":"2015-07-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":"{\"title\":\"Replication for Predictability in a Java RPC Framework\",\"authors\":\"Jianwei Tu, Christopher Stewart\",\"doi\":\"10.1109/ICAC.2015.49\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"We propose a transport mechanism using replication for predictability to achieve low FCT for short flows. For each short TCP flow, we replicate it and send the identical packets for both flows by creating two connections to the receiver. The application uses the first flow that finishes the transfer. We observe that the congestion levels of different paths in data center networks are statistically independent. The original flow and replicated flow are highly likely to traverse different paths, reducing the probability of queuing delay. We implement flow replication in Apache Thrift transport layer. Apache Thrift is a RPC framework that supports multiple languages, especially Java. It can be used as a middleware at the application layer that means these is no need to modify the switches and operating systems. We conduct the experiments on our private cloud and Amazon EC2 data center. The latest EC2 data center is known to have multiple equal cost paths between two virtual machines. Our experiment results show that replication for predictability can reduce the Flow Completion Time of short TCP flows over 20%. When integrated with Cassandra, we can also improve the performance of Read operation with flow replication.\",\"PeriodicalId\":6643,\"journal\":{\"name\":\"2015 IEEE International Conference on Autonomic Computing\",\"volume\":\"97 1\",\"pages\":\"163-164\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2015-07-07\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"1\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2015 IEEE International Conference on Autonomic Computing\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ICAC.2015.49\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2015 IEEE International Conference on Autonomic Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICAC.2015.49","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Replication for Predictability in a Java RPC Framework
We propose a transport mechanism using replication for predictability to achieve low FCT for short flows. For each short TCP flow, we replicate it and send the identical packets for both flows by creating two connections to the receiver. The application uses the first flow that finishes the transfer. We observe that the congestion levels of different paths in data center networks are statistically independent. The original flow and replicated flow are highly likely to traverse different paths, reducing the probability of queuing delay. We implement flow replication in Apache Thrift transport layer. Apache Thrift is a RPC framework that supports multiple languages, especially Java. It can be used as a middleware at the application layer that means these is no need to modify the switches and operating systems. We conduct the experiments on our private cloud and Amazon EC2 data center. The latest EC2 data center is known to have multiple equal cost paths between two virtual machines. Our experiment results show that replication for predictability can reduce the Flow Completion Time of short TCP flows over 20%. When integrated with Cassandra, we can also improve the performance of Read operation with flow replication.