End to End Homework

Published on February 2017 | Categories: Documents | Downloads: 44 | Comments: 0 | Views: 476
of 1
Download PDF   Embed   Report

Comments

Content

END-TO-END ARGUMENTS IN SYSTEM DESIGN J.H. Saltzer, D.P. Reed and D.D. Clark M.I.T. Laboratory for Computer Science Report by Sushanth Kumar Reddy
This paper provides guidelines for system design on where to place the functionalities in the distributed computer system. These functions can be implemented only with the knowledge of the application standing at the end points of the communication. So providing these functions at the communication system would not be a great solution. So the paper argues that putting the functionalities at the application level is often the best approach of system design. A comparison between low level implementation and end to end argument is made using an example function “reliable data transmission” and claimed that this argument can be applied to wide range of functions like encryption, duplicate message detection, message sequencing, guaranteed message delivery, detecting host crashes and delivery receipts and many such functions of a computer operating systems. It takes a specific example of file transfer system and shows why an end to end would be a better solution than low level implementation. The paper says that it doesn’t conclude that the low level implementations shouldn’t take care of the network reliability. It says that it need not provide the perfect reliability at the low level. Some effort at the low level will significantly improve the application performance. So the low level implementations are necessary for improving performance and should not be a requirement for correctness. Implementing some functions at low level will cost all those application which wouldn’t require using those functions. And also since it doesn’t have all the information required the implementation might not be efficient. The paper provides some more examples to strengthen his claims such as delivery guarantees secure transmission of data, duplicate message delivery, guaranteeing FIFO message delivery and transaction management. The paper also talks about variation where in you can provide functions at low level and allow applications to replace it with its own. The strong point of this paper is that it provides a useful guide for system design. I agree that the end to end system is necessary to correctness of the implementation. Implementation at the end points would reduce the amount of processing in the network and hence allowing the network to operate at higher speed. Keeping the network simple makes it easier to design and change. This design philosophy supports the decentralization of the network. But according to the paper, the application should take care of lot of things which would be burden on the programmers. It seems to say that the application layer and not the transport layer which does the integrity check which burdens the application programmer. Functions such as routing and congestion control cannot be implemented completely at the end points. I feel that the designing the system strictly on end to end argument would not be the best one. The design should be such that there should be enough flexibility in the system where in you can either use the functions in low levels and also be able to replace those functions with application specific ones.

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close