Sunday, November 28, 2010

TCP – Transmission Control Protocol

හදිස්සියෙන් උනත් පොඩි දෙයක් ගැන ලියල යන්න හිතුන. හෙට mid exam එකකුත් තියනවනෙ. හරි හරි ඔන්න එහෙනම්,

Subject : CST 341-3 Data Communication And Networking

Chapter : OSI Model

Title : TCP

TCP කියන්නෙ Network එකක් හරහා data packet යැවීමට භාවිතා කරන වාඩාත් විශ්වාසදායි protocol එකක්. අහල ඇතිනෙ UDP ඒක මේ තරම් විශ්වාස කරන්න පුළුවන් කෙනෙක් නෙමේ. කොහෙන්ද පටන් ගන්නෙ,

මුලින්ම අපි හිතමු A හා B කියල පරිගණක දෙකක් දත්ත පැකට් හුවමාරු කරගන්න උත්සහ කරගන්නව කියල. A ට ඕන වෙනව Bට දත්ත පැකට් යවන්න. දැන් A මුලින්ම Bට යවනව Synchronize Packet එකක්. ඒකෙන් කියන්නෙ මම ලග(A) දත්ත පැකට් ටිකක් තියනව ඔයාට එවන්න ඔයා දන් ඒකට ලෑස්තිත කියල. ඉතින් ඒකට පිළිතුරු විදියට B යවනව Acknowledgment Packet එකක් සහ Synchronize Packet එකක්. ඒ කෙන් කියන්නෙ හරි මම ලෑස්තියි, ඔයා ලෑසිතිද කියල. ඉතින් A කොහොමත් ලෑස්ති පිටනෙ හිටියෙ, ඒනිසා එයා යවනව Acknowledgment Packet එකක් Bට. දැන් වැඩේ හරි. ඒ කියන්නෙ දෙන්න සෙට්. Connection Establish. ඔන්න ඔය පොඩි වැඩේට තමයි Three Way Shakes-hand කියල සුද්ද කිවුවෙ.

දැන් දෙන්නම රෙඩි. මුලින්ම A පළවෙනි පැකට් එක B ට යවනව. එතකොට B ඒක අරගෙන, හරි මට 1 ලැබුන දැන් 2 එවන්න කියනව. ඉතින් ඒක අහපු A 2,3 කියන පැකටි දෙකම B ට යවනව. දැන් B ඒ පැකටි දෙකම අරගෙන හරි මට දැන් 4 එවන්න කියනව. ඉතින් A 4,5,6,7 පැකටි ටික ඔක්කොම යවනව. ඒ ටික ගන්න B උත්තර දෙන්නෙ මට 8 එවන්න කියල. පේන්නෙ නැද්ද නිකන් කූඩාරමට ඔටුවෙක් රිංගනව වගේ. මුලින් එවුවෙ පැකටි එකයි. ඊට පස්සෙ 2යි. දැන් 4යි. ඔව් ඔව් මේ TCP එහෙම තමයි. ටික ටික පැකටි ගාන වැඩි කරනව. ඔන්න ඔය එක පාරකට යවන පැකටි ගානට තමයි Window size කියන්නෙ.

හරි. මම මුලින් කිවුව නේද මේත විශ්වාස දායක විදියක් කියල. ඒ ඇයි?? අපි හිතමු A යවනව පැකටි 11,12,13,14,15,16,17 ඔක්කොම Bට. හැබැයි Bට ලැබෙන්නෙ 12 වෙනකන් විතරයි. මොකක් හරි අවුලක් වෙලා අනිත් ඒව නැති වෙනව. දැන් B මොකද කියන්නෙ? එයා කියනව මට 13 එවන්න කියල. අනේ පවු Aට ආපහු 13,14,15,16,17,18,19 පැකටි ටික යවන්න වෙනව. ඒකින්නෙ 13 ඉදන් ඉදිරියට. ඔන්න ඔහොම තමයි එයාල දත්ත පැකටි මග හලා ගන්නෙ නැතුව යවන්නෙ. හැබැයි මේකට ටිකක් කාලය යනව. ඒක නිසා මේ TCP කියන Protocol එක යොදගෙන්නෙ වේගයට වඩා නිවරදිබව වැදගත් වන තැන්වලදි තමයි. උදාහරණයක් විදියට e-mail එකක් යවන එක. එතනදි භාවිතා කරන්නෙ TCP. මොකද, විශ්වාසදායක ලෙස දත්ත යැවීම වැදගත්. හැබැයි අපි හිතමු අපි කාත් එක්ක හරි Voice Chat කරනව කියල. එතකොට මේත හරියන්නෙ නෑ. මොකද ඒක Real time වෙන්න ඕන දෙයක්. එතකොට භාවිතා කරන්නෙ UDP - User Datagram Protocol කියල එකක්. ඒක මේ වගේ වෙලාව කන්නෙ නෑ. හැබැයි නැති වෙච්ච පැකටි හොයන්න යන්නෙත් නෑ. දැන් තේරෙනව නේද Chat කරන කොට සමහර ඒව ඇහෙන්නෙ නැතිව යන්නෙ කොහොමද කියල..

ආ... තවත් දෙයක් අමතක වුනානෙ. මම කිවුවනෙ දැන් A තමන් යවන පැකටි ගාන ටික ටික වැඩි කරනව කියල. මුලින් 1යි ඊලගට 2යි 3යි 5යි 10යි 20යි........ ඉතින් ඔහොම වැඩි වෙනකොට එක වෙලාවක් එනව B ට ටිකක් තරහ යන.(අපිටත් ඔය වැඩ ටිකක් වැඩි වුනාම තරහ යන්නෙ.) එතකොට B, A ට කියනව ටිකක් හිමින් එවනවද? අනේ මගේ Buffer එකේ ඉඩ නෑ කියල. ඉතින් A කරන්නෙ අර එක වරකට යවන පැකට් ගාන ටිකක් අඩු කරනව. ඒ කියන්නෙ Window Size එක ටිකක් අඩු වුනා. දැන් ඒ වේගෙත් වැඩ්නම් A ඒක තවත් අඩු කරනව. ඔහොම ටික වෙලාවක් යනකොට B කියනව "A තව පැකට් ටිකක් වැඩිපුර එවුවට කමක් නෑ" කියල. ඉතින් A ආපහු පැකටි ගාන වැඩි කරනව. ඒකියන්නෙ Window Size එක වැඩි කරනව. ඔන්න ඔය සෙල්ලමට තමයි Windowing කියන්නෙ. (ඕක ලගදිත් මගෙන් කවුරරු හරි ඇහුව. මට මතක නෑ කවුද කියල)

හරි එහෙනම්, අදට ඈති නේද?? හෙට exam නෙ. ආ.. මේකෙ PDF එකක් දාන්නනම් වෙලාවක් නෑ. තරහ නැතුව මේක කොපි කරගෙන pdf එකක් හදා ගන්නවද?හැම දාම වගේ ඔන්න අදත් ඔබේ අදහස් මට වටිනව. බුදු සරණයි.



ටිකක් ඡනප්‍රිය ඒව