Topics to be Discussed relating TCP
1. Maximum Segment Size : It refers to the maximum size of segment ( MSS ) that is acceptable to both ends of the link. TCP negotiates for MSS using OPTION field. In Internet area MSS is to be selected efficiently. An arbitrarily tiny segment size will result in poor bandwith utilization since Data to Overhead ratio remains low. On the other side extremely big segment size will necessitate big IP Datagrams which require fragmentation. As there are limited chances of a fragment getting missing, segment size above "fragmentation threshold " reduce the Throughput. in theory an optimum segment size is the size that results in biggest IP Datagram, which do not require fragmentation anywhere enroute from source to destination end. But it is very hard to find such an optimum segmet size. In system V a easy technique is used to recognize MSS. If H1 and H2 are on the same network use MSS=1024. If on dissimilar networks then MSS=5000.
2. Flow Control : TCP uses Sliding Window mechanism at octet level. Now, the window size can be variable over time. This is achieved by utilizing the concept of "Window Advertisement" based on :
1. Buffer availabilty at the receiver
2. Network conditions (traffic load etc.)
In the previous case receiver varies its window size depending upon the space available in its buffers. The window can be taken as RECEIVE WINDOW (Recv_Win). When receiver buffer begin to fill it advertises a small Recv_Win so that the sender does'nt send more data than it can accept. If each and every one buffers are full receiver sends a "0" size announcement. It stops all transmission. When buffers become available receiver advertises a Non Zero widow to resume retransmission. The sender side also from time to time probes the "Zero" window to avoid any deadlock if the Non Zero Window advertisement from receiver is lost. The Variable size Recv_Win provides efficient end to end flow control.
The second case arises when some intermediate node ( e.g. a router ) controls the source to reduce transmission rate. At this point another window referred as COGESTION WINDOW (C_Win) is utilized. announcement of C_Win helps to check and avoid congestion.
3. Congestion Control: Congestion is a condition of severe delay caused by an overload of datagrams at any intermediate node on the Internet. If unchecked it possibly will feed on itself and finally the node may start dropping incoming datagrams. This could further aggravate congestion in the network resulting in congestion collapse. TCP uses 2 methods to check congestion.
1. Slow Start : At the time of start of a connection no information about network
conditios is available. A Recv_Win size can be agreed upon however C_Win size is not known. Any random C_Win size cannot be used because it may lead to jamming. TCP acts as if the window size is equal to the minimum of ( Recv_Win and C_Win). So following algorithm is used.
1. Recv_Win=X
2. SET C_Win=1
3. for every ACK received C_Win++
3. Multiplicative decrease: This scheme is used when congestion is encountered ( ie. when a segment is lost ). It works as follows. Decrease the congestion window by half if a segment is lost and exponentially backoff the timer ( double it ) for the segments within the reduced window. If the subsequently segment also gets lost continue the above process. For consecutive losses this scheme decreases traffic into the connection exponentially thus allowing the intermediate nodes to clear their queues. Once congestion stops SLOW START is used to scale up the transmission.
4. Congestion Avoidance: This procedure is used at the onset of congestion to minimize its effect on the network. When the transmission is to be scaled up it should be done in such a way that it does'nt lead to congestion again then following algorithm is used.
1. At loss of a segment SET C_Win=1
2. SET SLOW START THRESHOLD (SST) = Send_Win / 2
3. Send segment
4. If ACK Received, C_Win++ till C_Win <= SST
5. else for each ACK C_Win += 1 / C_Win
5. Time out and Retransmission : Following two schemes are used :
1. Fast Retransmit
2. Fast Recovery
When ever a source sends a segment TCP sets a timer. If this value is set too short it will result in many unnecessary retransmissions. If set too high it will generate outcome in wastage of bandwidth and hence lesser throughput. In Fast Retransmit scheme the timer value is set fairly higher than the RTT. The sender end could therefore detect segment loss before the timer ends. This scheme presumes that the sender will get repeated ACK for a lost packet.
6. Round Trip Time (RTT) : In Internet environment the segments may travel across different intermediate networks and through multiple routers. The networks and routers possibly will have various delays, which may vary over time. The RTT as a result is also variable. It makes tricky to set timers. TCP allows changeable timers by using an adaptive retransmission algorithm. It works as shown.
1. Note the time (t1) when a segment is sent and the time (t2) when its ACK is received.
2. Compute RTT(sample) = (t 2 - t 1 )
3. Again Compute RTT(new) for next segment.
4. Compute Average RTT by weighted average of old and new values of RTT
5. RTT(est) = a *RTT(old) + (1-a) * RTT (new) where 0 < a < 1
A high value of 'a' makes the estimated RTT insensitive to changes that last for a short time and RTT relies on the history of the network. A small value makes it sensitive to current state of the network. A classic value of 'a' is 0.75
6. Compute Time Out = b * RTT(est) where b> 1
A low value of 'b' will ensure quick detection of a packet loss. Any short delay will however cause pointless retransmission. A typical value of 'b' is reserved at .2
Email based Computer Science assignment help - homework help at Expertsmind
Are you searching Computer Science expert for help with Important Topics in TCP questions? Important Topics in TCP topic is not easier to learn without external help? We at www.expertsmind.com offer finest service of Computer Science assignment help and computer science homework help. Live tutors are available for 24x7 hours helping students in their Important Topics in TCP related problems. We provide step by step Important Topics in TCP question's answers with 100% plagiarism free content. We prepare quality content and notes for Important Topics in TCP topic under computer science theory and study material. These are avail for subscribed users and they can get advantages anytime.
Why Expertsmind for assignment help
- Higher degree holder and experienced experts network
- Punctuality and responsibility of work
- Quality solution with 100% plagiarism free answers
- Time on Delivery
- Privacy of information and details
- Excellence in solving computer science questions in excels and word format.
- Best tutoring assistance 24x7 hours