TCP, UDP, Budgeting & Related Concepts Assignment Help
No Plagiarism Policy – Order New TCP,UDP,Budgeting & Related Concepts Assignment Help solution & Get Well Written Solutions Documents with Free Turnitin Report!
1. A station running TCP/IP needs to transfer a file to a host. The file contains 1024 bytes. How many bytes, including all of the TCP/IP overhead, would be sent, assuming a payload size of 128 bytes and both systems are running IPv4? (Also assume that the three-way handshake and window size negotiation have been completed and that no errors occur during transmission.)
i) what is the protocol overhead (stated as a percentage)
ii) perform the same calculation, this time assuming that both clients are using IPv6.
Given that a station needs to send a file of size 1024 bytes to a host. Both the sender and host are running on the TCP/IP protocol suite. Also, the payload is of 128 bytes.
a) To calculate the protocol overhead involved in the data transmission due to the various protocols.
We know the header size of TCP is 20 bytes and IP is 20 bytes. So the total overhead involved due to TCP and IP is 40 bytes. Based on the given payload and file size, the total 8 segments will be formed.
Hence, including the overhead total number of bytes transmitted will be calculated as below-
(128 + 40)*8 = 1334 bytes.
Now, due to three-way handshake more protocol overhead will be incurred. The acknowledgement packets will also have 40 bytes size. In addition to acknowledgement, a window update is also transmitted which is also having a protocol overhead of 40 bytes.
For echoing the file on the receiver side another 1334 bytes will be transmitted.
On the basis of the above, explanation and analysis the total protocol overhead is 720 bytes.
Hence, the percentage of protocol overhead = (720/2048)*100 = 35.1
b. If IPv6 is used at the internet layer, the calculation will be as follows-
All the analysis will remain the same as in case of IPv4, with only one difference in terms of the size of IPv6 protocol, which is 40 bytes.
Total protocol overhead involved including the acknowledgement and window update is 1080 bytes.
Therefore, the percentage of overhead due to protocol is (1080/2048)*100 = 52.7
2. IP is a connection-less protocol, whereas TCP is connection-oriented. How can these two protocols coexist in the same protocol stack?
Internet protocol operates at the internet layer. It is one of the most important protocols to transfer the packets from client to destination. It allows the host to host delivery of packets. It also finds out the best possible route that exists from the source node to destination node. And on the best selected route the data packets are transmitted considering the best effort delivery. Transmission control protocol is a connection oriented protocol which operates on the transport layer. Here, connection oriented means a virtual circuit is established between the sending and receiving devices, once the circuit is established the data packets are transmitted over that circuit. All the packets strictly follow the same path from source to destination. This makes TCP as a reliable protocol for data transmission. Both the TCP and IP are the protocols of same stack; however they have different services to be offered to the communication network. Each layer in the TCP/IP protocol stack has various protocols and every protocol has some specific task. Data coming from the higher layers encapsulate the header of each layer and reaches the destination network. On the destination network the packets are again de-capsulated to get back the actual data. Hence, the IP does only the task of data forwarding through to the best or shortest path whereas the TCP does the task of maintaining the connection between the source and destination and ensuring the reliability of data transferred.
3. Mention one advantage and one disadvantage of Agile method.
Agile methodology is a software development process model, in which the development of software product is done in a quick or rapid way. Advantages of using agile method are that it is a fast and efficient way of software development. In this the client requirements are taken care of in the best way. The key advantage is that in this the client remains in contact with the software development team continuously throughout the development life cycle. Sprints are planned in every 15 days where the working prototype f the software is discussed with the client where the client has opportunity to suggest changes if any. This is one of the most key advantages of Agile Method.
The disadvantage of agile method is its ineffectiveness in case of handling a large project. It really becomes difficult to plan the small sprints for a large project. Also, it is a challenging way to track the record of every minute change the customer is suggesting for duration of large project. This however leads to the failure in calculating the work efforts need to be applied by the team in the initial stage.
4. Compare and contrast the Agile method and Evolutionary software development process. Explain with an example.
Following is the comparison between Agile Methodology and Evolutionary Method of software development.
Example:
Here is the case study of a product development for a travel agency, who has given the responsibility of software development for maintaining their car rental data to a software firm. Let us one by one consider the use of both development models for the development of this product. The first phase of development in both the agile and evolutionary method is requirement analysis. In both the methods, the client meeting will be schedules in which the client will brief on the requirements of the software, and the company will perform the task of converting those requirements into the functional requirements including various modeling diagrams. This phase is flexible in both the methods, so the client can change the requirements any time if required. In the next step, in case of agile method a scrum master will be appointed who will schedule the sprint meetings with the client and development team after every 15 days. During this sprint the first working prototype of the system will be discussed. Whereas in case of evolutionary method directly the incremental process of software development will start and the team will start implementing the entire product at once. In this case, a working prototype of the system will be developed and then client will suggest some modifications or change in the requirements if any. So the travel agency in case of agile method at the end of first sprint will get the fully functional and tested module whereas in case of evolutionary method they will only get the prototype of the system. The same process will continue for multiple days and a complete product is delivered. Also, in case of agile method multiple team members can work together using following the concept of pair programming, so development and testing both function at the same time. This reduces the time required for development to a great extent.
5. Analyse the uniqueness of Apple design process.
Apple design is the software development process adopted by the apple team for development of their products. They basically focus on the creativeness and innovation of their product. The apple design is unique because it majorly focuses on how creativity can be involved in the design which could lead to development of innovative product. The different phases involved in apple design process are as follows:
a) The first phase is about visualizing the final product and the team of senior people discuss about the feasibility of the product in terms of different innovative ideas.
b) In the next, phase all the teams start working in parallel on the same product. Because of this the different teams will come up with innovative products for the same problem statement.
c) Next, all the teams discuss their innovative product design with all the other teams and senior people. Here, they decide which design is the most innovative among all and can be taken up for the development of final product.
d) Further, all the teams start developing the prototype for the selected design.
e) In this design, all the prototypes designed go through numerous review meetings where the features of the product are discussed.
f) Finally, the product is tested.
6. Describe three reasons for a project failure.
The key reasons for failure of any project are as follows-
a) If the scope of project is not defined properly by the client and some misunderstanding is caused in the initial phase of the project, it may lead to a big failure in the final product. The client must know what features and functionalities he is expecting in the final product, this will allow the development team to understand the requirements properly and the product development will be a smooth process. Hence, improper understanding of requirements is the biggest reason for project failure.
b) Failure in the identification of key assumptions those are essential for developing the product can also lead to the failure of the product. Many times few parameters should be assumed to develop the project and keep the progress on track. If any assumption is incorrectly identified then it will mislead the development team.
c) Lack of communication among the team's members and the management can also become the reason for project failure. The people at all the levels in the organization must have effective communication among each other. All the project related policies must be properly disseminated to all the stakeholders working on the project.
7. Your company owns several software and asked you to manage them within company budget constraints. What will be your goals?
Following are the goals which you must keep in mind while managing various software owned by your company.
a) My very first goal will be to list out all the key expenses done by the company in the last few months and analyze the expenditure. From the analysis find out from where the budget can be managed for the managing the various software.
b) Another goal would be to make projections. In this the core management team will make projections of their business and allocate the budget for various software maintenance purposes.
c) Conducting a meeting with the various software development teams who are the core users of the softwares under maintenance. Discuss with them the implication of all the software and ask them question related to the importance of those software in the development process. Based on the results of discussion, budget must be allocated to them for software maintenance.
Most reliable and trustworthy TCP,UDP,Budgeting & Related Concepts Assignment Help solution & Homework Writing Services at your doorsteps!