Font Size: a A A

Design And Implementation Of Efficient File Transfer Protocol (EFTP)

Posted on:2011-12-28Degree:MasterType:Thesis
Country:ChinaCandidate:J JiangFull Text:PDF
GTID:2178360305454862Subject:Software engineering
Abstract/Summary:PDF Full Text Request
Computer networks as the most important 20th century invention, not only intechnology lead to a series of innovations, but also led directly to the humaninteraction, the ways of thinking, lifestyles and even to reconstruct the social structure.Digital, networked, global change processes for technology frontier; the internet issuch a revolutionary technology. The internet was able to so much change people'slives, in essence, the internet provides a conventional method can not satisfy thedemand for information sharing, and file transfer is very important element ofinformation sharing is one of File Transfer Protocol (FTP) thus was born. FTP (FileTransfer Protocol) the main function is to allow users to log on to the remote host;download the files they interested in. After several years of development, the users ofmost popular transfer protocol (FTP) becomes less and powerless ,for it has a highlatency, which means that there usually has a long time between the request and thebeginning to receive data ; FTP services are generally run on two ports 20 and 21.Port 20 is used between the client and server to transfer data streams, and port 21 fortransmission control flow, and is the leading FTP server client commands the entrance.Dual-port mode of service vulnerability affecting the client configuration.In this paper, we will create an agreement -- Efficient File Transfer Protocol(EFTP) by analysis and comparison the questions which FTP protocol has , andsummarizing the advantages and disadvantages of such software .the achievement wewant to get is highlight simple, rapid, practical, and functional adaptation to the user,file resources to achieve rapid transfer within the network to share, make full use ofvaluable network bandwidth and server resources, the final purpose is :1. Promote the sharing of resources.2. Make a reliable and efficient way of data transmission.3. Control flow and data flow using a single port.Modern society is a ubiquitous network society, no matter in which networkenvironment; the development is far beyond the traditional estimate of the past. Andcustomer demand for service quality and efficiency standards more stringent than ever. But simply rely on the resources of a single server, no matter how well the server'sconfiguration, can hardly meet the ever-growing customer needs.Accordingly, the distributed system provides tremendous processing power, agroup of loosely connected, independent of the server network with each other in theapplication of the external services with a single performance, and management with asingle system also has the same mode. The external manifestations of this singlesystem can provide highly reliable and secure service. However, to realize and takefull advantage of this capability, the need for good load distribution program toachieve a more rational distribution of traffic, so without incurring a deviceoverloaded, while other devices have not been the situation of full capacity . It mustbe explained: the network load balancing device is not based equipment, butperformance optimization equipment. For network applications, not needing to loadbalancing, application traffic when the network is growing, a single processing unitcan not meet the load demand, the network application traffic will be a bottleneck, theload balancing will play a role.This paper mainly studied the pros and cons EFTP agreement, and it's on how tobe more reasonable and efficient application in the server cluster load balancing howto effectively conduct a detailed study. For a host of load Linux cluster computing, ingeneral, any assessment of the total load on the host is none other than the followingaspects, be considered is the current host has been assigned a maximum number oftasks, CPU utilization, memory usage percentage , disk IO performance, networkbandwidth, and has been assigned to the current host of the proportion of all themission mode (in this case is the task be divided according to traditional concepts,namely, computational tasks and IO-type tasks, the tasks assigned if the host's IO typetask more, you can calculate the appropriate type will be assigned to the host peoplein order to achieve rational use of the hardware within the host). Expensivecomputationally host some of the various parameters of the load is relatively easy toobtain, but that decisions of weight of each parameter is the key in the key, the right toa reasonable value can make the individual system to complete more tasks, theoutcome would be the performance of the whole cluster system upgrade. Thecharacteristics of its own for this agreement, the calculation of the weight more toconsider the current process has been assigned the number, the system is more of asystem for IO, more precise to say what is for IO, the number of tasks how muchmore pressure to decide the size of the host; and network IO is the ability to hold the weight ratio of host load is relatively high, followed by consideration of a hostmemory usage, disk IO capacity of the Home under the CPU use rate for the impact ofweight is relatively low, comprehensive analysis is given weight (Weight) formula:Weigh (Si) = (10000 * (Bandwidth (Si) * k1 + Memory (Si) * k2 + Disk (Si) * k3+ Cpu (Si) * k4) * Ct / TBesides the good load balancing algorithms, load balancing is only part of thesystem is more important is the input data (in this case the user requests to downloadfiles) for a reasonable split, making the task more evenly spread to the currentenvironment, host. Client requests sent to the server will be carriers of the user needsto download the file information, the server receives a user request, to retrieve fromthe information received from all of the downloaded file name, and then get the nameaccording to the use of casual column function to verify the file hash table in thepresence of, if not present, the client will return file not found error; if availabledocuments, then remove the file's actual size, use the above body of information toinitialize a task structure Put the current task corresponding to the array, when the userall the documents requested after pretreatment, the array sorted according to size ofthe file (descending order). Iteration sorted array, each iteration will read theminimum heap stack top element, which save the address and other informationsummarized in the mission structure, and finally, the key is part of the body in the taskstructure initialize a timer, so, within a certain period of time can not be taken awayby other host processing tasks, timer logic resources to take away the last time thecurrent master list of tasks take away time and time difference between the last 3times prevention as the host and network load balancing between servers delay (whichmay be distributed in different regions), resulting in instability. Put the task into thecorresponding IP of the host task list, task list waiting for the host removed. If after acertain time, the task waiting for timeout, then the timer in the callback function willbe moved to its own load balancing serverstack awaiting processing tasks, the re-processing.Finally, in a real environment, the appropriate testing laboratories built and buildmore test platform, under the common comparison platform to use Linux Ftp serversoftware vsFtp.We both use vsFtp and EFTP to do a test, you can find traditional Ftp serversoftware for the independent operation mode (a host a server), so when the userrequests the number of peak hours, the response rate decreased very clearly designed to load balancing in this article - cache mode, you can quickly respondhigh-pressure client request, the memory pool mechanism and hashing techniquesensure stability as the server, effectively under high pressure buffer server softwarefor resource consumption, and reasonable to avoid the risk of server crash.
Keywords/Search Tags:Hash table, Memory pool, Mult-threaded, MVC pattern, Load Balancing
PDF Full Text Request
Related items