Subscribe by Email


Showing posts with label Problem. Show all posts
Showing posts with label Problem. Show all posts

Wednesday, September 4, 2013

What is a choke packet?

- The networks often experience problems with congestion and flow of the traffic. 
- While implementing flow control a special type of packet is used throughout the network. 
- This packet is known as the choke packet. 
- The congestion in the network is detected by the router when it measures the percentage of the buffers that are actually being used. 
- It also measures the utilization of the lines and average length of the queues. 
When the congestion is detected, the router transmits choke packets throughout the network. 
- These choke packets are meant for the data sources that are spread across the network and which have an association with the problem of congestion. 
These data sources in turn respond by cutting down on the amount of the data that they are transmitting. 
A choke packet has been found to be very useful in the maintenance tasks of the network. 
- It also helps in maintaining the quality to some extent. 
- In both of these tasks, it is used for informing the specific transmitters or the nodes that the traffic they are sending is resulting in congestion in the network. 
Thus, the transmitters or the nodes are forced to decrease the rate at which they are generating traffic. 
- The main purpose of the choke packets is controlling the congestion and maintaining flow control throughout the network. 
- The router directly addresses the source node, thus causing it to cut down its data transmission rate. 
- This is acknowledged by the source node by making reductions by some percentage in the transmission rates. 
- An example of the choke packet commonly used by the most of the routers is the source quench packet by ICMP (internet control message protocol).  
- The technique of using the choke packets for congestion control and recovery of the network involves the use of the routers. 
- The whole network is continuously monitored over by the routers for any abnormal activity.
- Factors such as the space in the buffers, queue lengths and the line utilization are checked by the routers. 
- In case the congestion occurs in the network, the choke packets are sent by the routers to the corresponding parts of the network instructing them to reduce the throughput. 
- The node that is the source of the congestion has to reduce its throughput rate by a certain percentage that depends on the size of the buffer, bandwidth that is available and the extent of the congestion. 
- Sending the choke packets is the way of routers telling the nodes to slow down so that the traffic can be fairly distributed over the nodes. 
- The advantage of using this technique is that it is dynamic in nature. 
The source node might send as much data as required while the network might inform that it is sending large amounts of traffic.
- The disadvantage is that it is difficult to know by what factor the node should reduce its throughput.
- The amount of the congestion being caused by this node and the capacity of the region in which congestion has occurred is responsible for deciding this. 
- In practical, this information is not instantly available. 
- Another disadvantage is that after the node has received the choke packet, it should be capable of rejecting the other choke packets for some time. 
- This is so because many additional choke packets might be generated during the transmission of the other packets. 

The question is for how long the node is supposed to ignore these packets? 
- This depends up on some dynamic factors such as the delay time. 
- Not all congestion problems are same, they vary over the network depending up on its topology and number of nodes it has. 


Sunday, December 16, 2012

What are Six Best Practices in Rational Unified Process?


The IBM Rational Unified Process is a means of commercial deployment of the approaches and practices which have been proven for the development of the software systems and applications. It is based up on the following six best practices:
  1. Iterative development of the software systems and applications
  2. Management of the requirements
  3. Use of architecture based up on the components.
  4. Visual modeling of the software system
  5. Verification of the software system.
  6. Controlling the changes to the software system or application.
The above mentioned practices are called the best practices not because their value can be precisely quantified but because they are quite common in the software industry by most of the organizations which are successful and reputable.
In the rational unified process each and every member of the team gets templates, guidelines as well as the tools which are found necessary for the whole of the team in order to reap the full advantage.

Basic Practices In Rational Unified Process in Detail

Iterative development of the software systems or applications:  
Software systems and applications are quite sophisticated and therefore they make it impossible to define the problem first in sequence.
- By sequence we mean, first defining the whole problem, designing a solution of the problem, building the software system or application and then finally testing the software system. 
- In order to deal with such software systems and applications there is a requirement of an iterative approach so that an increase in the understanding of the problem can be made in a series of successive refinements. 
- This also helps in developing an effective solution in increments done over multiple iterations.

Management of the Requirements: 
The rational unified process gives a description:
- On how the elicitation, organization and documentation of the constraints as well as the functionality is to be done, 
- how the trade-offs and decisions have to be tracked and documented and 
how the business requirements are to be captured and communicated.

Use of architecture based up on the components: 
- The focus of the development process is on the base-lining and early development of an architecture that is robust and executable as well. 
- It gives a description of how a resilient architecture can be built with more flexibility that can accommodate the changes easily, can be easily understood and effectively promotes the reuse of the existing software artifacts. 
- The rational unified process provides a great support to the component based development. 
- By components we mean, the sub systems and non – trivial elements for a clear function.

Visual modeling of the software system: 
- The rational unified shows you exactly how a software system or application can be visually modeled and can be used for capturing the behavior and structure of its architectural components. 
- This further enables you to hide the details and develop the code with the help of the graphical building blocks. 
- With such visual abstractions, communication can be established between the different aspects of the software system or application.

Verification of the software system: 
- Poor reliability dramatically cuts down the chances of a software system or application from being accepted.
- Therefore it is important to review the quality concerning the factors namely functionality, reliability, system performance and application performance etc.

Controlling the changes to the software system or application: 
- The management and ability to track the changes are critical to the success of any software system or application. 
- However, the rational unified process helps you to cope with these issues also.




Facebook activity