178 ÌÜèçìá 5.2: Ëåéôïõñãßåò ðñùôïêëëùí ¼ðùò óçìåéþèçêå óôï ðñïçãïýìåíï ìüèçìá, ç åðéêïéíùíßá óôá äßêôõá õðïëïãéóôþí êáèïñßæåôáé êáé åëýã åôáé áð êáííåò ïé ïðïßïé åíåñ ãïðïéïýíôáé êáôü ôç óýíäåóç. Áí êáé êüèå ðñùôêïëëï åðéêïéíùíßáò äéáèýôåé ôï äéê ôïõ óýíïëï êáííùí, ïé âáóéêýò ëåéôïõñãßåò ðïõ áíáðôýóóåé Ý ïõí ïìáäïðïéçèåß ê áé óáöþò êáèïñéóôåß ùò áêïëïýèùò: ÊáôÜôìçóç ìçíõìüôùí Åðáíáóýíèåóç ÅíèõëÜêùóç ëåã ïò óýíäåóçò ëåã ïò ñïþò ëåã ïò óöáëìüôùí Ôìçìáôïðïßçóç Äéåõèõíóéïäôçóç Ðñïôåñáéôçôá äéåêðåñáßùóçò ÁóöÜëåéá Ïé äéáêñéôýò áõôýò ëåéôïõñãßåò èá áíáðôõ èïýí óôç óõíý å éá ëåðôïìåñýóôåñá, þóôå íá ãßíåé áíôéëçðôò ï ôñðïò ìå ôïí ïðïßï åîáóöáëßæå ôáé ç åðéêïéíùíßá. 5.2.1 ÊáôÜôìçóç ìçíõìüôùí ¼ðùò Þäç Ý åé áíáöåñèåß, ïé ðëçñïöïñßåò ðïõ óôýëíïíôáé áð Ýíáí õðïëïãéóôþ óå êüðïéïí Üëëï ùñßæïíôáé óå ìéêñôåñåò ïìüäåò äåäïìýíùí, ô ï ìýãåèïò ôùí ïðïßùí ðïéêßëëåé. ÁõôÝò ïé ôåìá éóìýíåò ðëçñïöïñßåò ïíïìüæïíôá é ìïíüäåò äåäïìýíùí ðñùôïêëëïõ (PDUs: Protocol Data Units), åíþ ç ëåéôïõñãßá ôåìá éóìïý ïíïìüæåôáé êáôüôìçóç (segmentation Þ fragmentation) ìçíõìüôùí. Ôï ìýãåèïò ôùí PDUs ìðïñåß íá ðïéêßëëåé áíüëïãá ìå ôï äßêôõï, ôï ðñùôêïëëï åðéêïéíù íßáò Þ êáé ôçí åðéìýñïõò óõìöùíßá ôùí ñçóôþí. Ãéá ðáñüäåéãìá, Ýíá ðñùôêïëëï ìðïñ åß íá ïñßæåé ôï ìýãåèïò ôçò PDU óå 8.000 áñáêôþñåò, ìùò Ýíáò ñþóôçò ìðïñåß íá ôï ðåñéïñßóåé óôï ìýãåèïò åíò ôõðéêïý ðáêýôïõ, äçëáäþ óå 1.000 ðåñßðïõ áñáêôþ ñåò. Ç êáôüôìçóç ðñáãìáôïðïéåßôáé ãéá äéüöïñïõò ëãïõò, ðùò åßíáé: Ï åõêïëôåñïò Ýëåã ïò ôçò ìåôüäïóçò ôùí äåäïìýíùí. Ç óáöþò êáëýôåñç óõíïëéêþ áðäïóç ôïõ äéêôýïõ, åéäéêôåñá óôéò ðåñéðôþóåéò äéêôýùí ðïëëáðëþò ðñóâáóçò ìå ìéêñ ìýãåèïò PDU. Ç óõìâáôôçôá ìå ôï õëéê, ôá ðïéêßëá ëåéôïõñãéêü óõóôþìá ôá êáé ôá äéåèíþ ðñôõðá. Ç åõêïëôåñç äéñèùóç ôõ í óöáëìüôùí ðïõ ðáñïõóéüæïíôáé êáôü ôç ìåôü-
179 Êåöáëáéï 5: Áñ éôåêôïíéêç Äéêôõùí äïóç ôùí äåäïìýíùí Þ êáôü ôçí åðáíáìåôüäïóç ôùí ëáíèáóìýí ùí PDUs. Ç áíüãêç ãéá ìéêñþ ðáñïõóßá ôùí PDUs óôï êáíüëé åðéêïéíùíßáò. Óçìåéþíåôáé ôé ôï ìýãåèïò ôùí PDUs ðáßæåé óçìáíôéê ñëï óôçí áðäïóç ôïõ êáíáëéïý åðéêïéíùíßáò, åíþ ï áêñéâþò êáèïñéóìò ôïõ áðïôåëåß áíôéêåßìåíï éäéáßôåñçò ìåëýôçò. 5.2.2 Åðáíáóýíèåóç Ç åðáíáóýíèåóç (re-assembly) åßíáé ç áíôßèåôç ëåéôïõñãßá ôçò êáôüôìçóçò. Ïé PDUs ôïõ ßäéïõ ìçíýìáôïò, ìýóù åéäéêþí ëåéôïõñãéþí, åðáíáóõíôß èåíôáé, ôáí öèüóïõí óôïí ðñïïñéóì ôïõò, ðñïêåéìýíïõ íá äçìéïõñãþóïõí ôï áñ éê ìþíõìá. 5.2.3 ÅíèõëÜêùóç Ìéá ðñóèåôç ëåéôïõñãßá ôùí ðñùôïêëëùí áöïñü ôçí åíèõëüêùóç (encapsulation), äçëáäþ ôçí ðñïóèþêç äéüöïñùí ðëçñïöïñéþí åëýã ïõ óôéò PDUs (ó Þìá 5.8). Ïé ðëçñïöïñßåò åëýã ïõ åßíáé óõíþèùò ôñéþí êáôçãïñéþí êáé á öïñïýí: Äéåõèýíóåéò, äçëáäþ ôç äéåýèõíóç ôïõ áðïóôïëýá êáé / Þ ôç äéåýèõíóç ôïõ ðáñáëþðôç. áñáêôþñåò áíß íåõóçò ëáèþí. ÌÝóá óôéò PDUs õðüñ åé óõíþèùò ôï ðåäßï FCS (Frame Check Sequence) ðïõ áêïëïõèåß ôï ðåäßï ôùí äåäïìýíùí (ÌÜèçìá 2.5). ¼ôáí ïé PDUs öèüóïõí óôï äýêôç, ãßíïíôáé äéüöïñïé õðïëïãéóìïß êáé ôï áðïôýëåóìá óõãêñßíåôáé ìå ôï FCS. Áí êüðïéá äõáäéêü øçößá áð ôï ðåäßï FCS Ý ïõí áèåß Þ êáôáóôñáöåß, ôï áðïôýëåóìá èá åßíáé äéáöïñåôéê, ìå óõíýðåéá ï äýêôçò íá áðïññßøåé ôï ðáêýôï êáé íá óôåßëåé ìþíõìá åðáíåêðïìðþò óôïí ðïìð. Ðñóèåôïõò áñáêôþñåò óõã ñïíéóìïý êáé åëýã ïõ. Ïé áñáêôþñåò ðïõ ðñïóôßèåíôáé óôéò PDUs áöïñïýí ôéò åðáíåêðïìðýò, ôï óõã ñïíéóì êáé ôïõò åëýã ïõò. Ó Þìá 5.8: ÅíèõëÜêùóç äåäïìýíùí
180 5.2.4 ëåã ïò óýíäåóçò Ç ëåéôïõñãßá åëýã ïõ óýíäåóçò (connection control) ôùí ðñùôïêëëùí ðåñéëáìâüíåé ëåò ôéò áðáñáßôçôåò äéáäéêáóßåò ðñïêåéìýíïõ íá åð éôåõ èåß ç óýíäåóç ìåôáîý äýï õðïëïãéóôþí. Ãéá ôçí ðñáãìáôïðïßçóç ôçò óýíäåóçò áêïë ïõèïýíôáé ôá åîþò âþìáôá: åãêáôüóôáóç óýíäåóçò, áíôáëëáãþ ðëçñïöïñéþí, áðïêáôüóôáóç óýíäåóçò óå ðåñéðôþóåéò óöáëìüôùí Þ Üëëùí ä éáêïðþí, ôåñìáôéóìò êáé áðåíåñãïðïßçóç ôçò óýíäåóçò. 5.2.5 ëåã ïò ñïþò Ìå ôç ëåéôïõñãßá ôïõ åëýã ïõ ñïþò (flow control) êáèïñßæåôáé ï áíþôáôïò ñõèìò ìåôáöïñüò ôùí äåäïìýíùí óôïí ðáñáëþðôç. Áíáëõôéêôåñá, ç ëåéôïõñãßá áõôþ ðåñéëáìâüíåé ôéò äéáäéêáóßåò åêåßíåò óýìöùíá ìå ôéò ïðïßåò ç ñïþ ôùí PDUs óôáìáôü Þ ðåñéïñßæåôáé, ôáí ï äýêôçò Ý åé ãåìßóåé áð ðáêýôá êáé ä åí åßíáé óå èýóç íá äå ôåß Üëëá. Ïé óõíçèýóôåñåò ôå íéêýò åëýã ïõ ñïþò (ÌÜèçìá 2.5) åßíá é ïé áêëïõèåò: Ç ôå íéêþ óýìöùíá ìå ôçí ïðïßá ï äýêôçò ðñýðåé ðñþôá íá åðéâåâáéþóåé ôçí ïñèþ ëþøç åíò ðáêýôïõ, ðñéí ï ðïìðò óôåßëåé ôï åðìåíï ðá êýôï (stop and wait ARQ). Ç ôå íéêþ ôïõ ðáñáèýñïõ, óýìöùíá ìå ôçí ïðïßá ï ðïìðò áðïó ôýëëåé Ýíáí ïñéóìýíï áñéèì ðáêýôùí ùñßò íá ðåñéìýíåé åðéâåâáßùóç ó ùóôþò ëþøçò áð ôï äýêôç. Ç ôå íéêþ óýìöùíá ìå ôçí ïðïßá ï äýêôçò óôýëíåé áñíçôéêþ á ðüíôçóç Þ äåí áðáíôü óôçí êëþóç ôïõ ðïìðïý. 5.2.6 ëåã ïò óöáëìüôùí Ç ðéï âáóéêþ ßóùò ëåéôïõñãßá ôùí ðñùôïêëëùí åßíáé áõôþ ô çò ðñïóôáóßáò ôùí PDUs áð ëáíèáóìýíåò áðïóôïëýò. Ôï óýóôçìá ðñýðåé íá áíé íåýå é ôéò äéáêïðýò óôç ìåôüäïóç ôùí äåäïìýíùí, íá åíôïðßæåé ôõ í áðþëåéåò Þ, óå ìåñéêýò ðåñéðôþóåéò, íá åíôïðßæåé äåäïìýíá ðïõ óôüëèçêáí ðåñéóóôåñåò áð ìßá öïñýò êáé ôýëïò, áí åßíáé äõíáôí, íá äéïñèþíåé ôá ëüèç. ÕðÜñ ïõí äýï ìýèïäï é äéñèùóçò (ÌÜèçìá 2.5): Ç ìýèïäïò ôçò åðáíåêðïìðþò ìçíõìüôùí, êáôü ôçí ïðïßá, áöïý åíôïðéóè åß ôï óöüëìá, æçôåßôáé áð ôïí ðïìð íá åðáíáìåôáäþóåé ôçí åóöáëìýíç PDU (ARQ). Ç ìýèïäïò ôçò äéñèùóçò, óýìöùíá ìå ôçí ïðïßá ï äýêôçò Ý åé ôçí éêáíôçôá íá äéïñèþóåé ìíïò ôïõ ôçí åóöáëìýíç PDU, ùñßò íá æçôþóåé áð ôïí ðïìð íá ôçí îáíáóôåßëåé (AEC).
181 Êåöáëáéï 5: Áñ éôåêôïíéêç Äéêôõùí 5.2.7 Ôìçìáôïðïßçóç Óôç ëåéôïõñãßá áõôþ ãßíåôáé ç áñéèìïäôçóç ôùí PDUs, þóôå áõôýò íá ëçöèïýí óùóôü áð ôï äýêôç. ÁñêåôÜ äßêôõá Ý ïõí ðïëëýò åðéëïãýò äé áäñïìþí ôéò ïðïßåò ìðïñïýí íá áêïëïõèþóïõí ïé PDUs ðñïêåéìýíïõ íá öèüóïõí óôï äýêôç, áöïý áõôýò öôüíïõí óôï äýêôç ìå äéáöïñåôéêþ óåéñü áð áõôþí ðïõ Ýöõãáí áð ôïí ðïìð. ÅðïìÝíùò åßíáé åõèýíç ôùí ðñùôïêëëùí ôïõ äýêôç íá åðáíáóõíáñìïëïãþóïõí ôï áñ éê ìþíõìá, ôïðïèåôþíôáò ôéò PDUs óôç óùóôþ óåéñü. 5.2.8 Äéåõèõíóéïäôçóç ÊÜèå õðïëïãéóôþò, ãéá íá åðéêïéíùíþóåé, ðñýðåé íá åßíáé åö ïäéáóìýíïò ìå ìßá ìïíáäéêþ äéåýèõíóç. Ç äéåýèõíóç áõôþ ôïí îå ùñßæåé áð ôïõò Üëëïõò õðïëïãéóôýò, êáèþò äåß íåé ðïéïò óôýëíåé êáé ðïéïò ëáìâüíåé ôéò PDUs. Ç ðéï ãíùóôþ ìýèïäïò äéåõèõíóéïäôçóçò åßíáé ç IP, ðïõ ñçóéìïðïéåßôáé áð ôï Äéáäßêôõï êáé ãéá ôçí ïðïßá èá ãßíåé áíáëõôéêþ áíáöïñü óôï ÌÜèçìá 5.6. Ç äéåýèõíóç áõôþ ä ßíåé ôç äõíáôôçôá óôï Äéáäßêôõï íá ðáñáäþóåé óùóôü ôéò PDUs ðïõ áíôéóôïé ïýí óå êüèå çëåêôñïíéê õðïëïãéóôþ. Ç äéåýèõíóç IP áðïôåëåß ôçí ôá õäñïìéêþ äéåýèõíóç åíò õðïëïãéóôþ ðïõ óõíäýåôáé óôï Äéáäßêôõï. Ïé ÉÑ äéåõèýíóåéò ôïõ Äéáäéêôýïõ Ý ïõí ìþêïò 4 bytes, ð.. 150. 140.187.51. 5.2.9 Ðñïôåñáéôçôá äéåêðåñáßùóçò Åßíáé äõíáôí ïé PDUs ðïõ ìåôáäßäïíôáé íá Ý ïõí äéáöïñåôéêþ ðñïôåñáéôçôá ìåôüäïóçò. Áí êüðïéåò PDUs óõìâáßíåé íá Ý ïõí õøçëôåñç ðñïôåñáéôçôá äéåêðåñáßùóçò áð êüðïéåò Üëëåò, ôï äßêôõï åßíáé õðï ñåùìýíï íá åîõðçñåôþóåé ðñþôá áõôýò êáé óå äåýôåñç öüóç óåò Ý ïõí áìçëôåñç ðñïôåñáé ôçôá. ÔÝôïéá ðåñßðôùóç åßíáé ç ðñïôåñáéôçôá ôùí ìçíõìüôùí ôïõ çëåêôñïíéêïý ô á õäñïìåßïõ, äçëáäþ ç áðïóôïëþ êüðïéïõ çëåêôñïíéêïý ìçíýìáôïò ìå êáíïíéêþ (normal), ðïëý õøçëþ (higher) Þ ðüñá ðïëý õøçëþ (highest) ðñïôåñáéôçôá. 5.2.10 ÁóöÜëåéá Ôá ðñùôêïëëá åðéêïéíùíßáò åßíáé õðï ñåùìýíá íá åîáóöáë ßóïõí ôç ìýãéóôç áóöüëåéá ôùí ìçíõìüôùí áð ðáñåìâïëýò, áëëïéþóåéò, õðïêëïðýò êáé ãåíéêü áð ïôéäþðïôå ìðïñåß íá åðçñåüóåé ôçí ïñèôçôü ôïõò. ÐïëëÝò ôå íéêýò Ý ïõí áíáðôõ èåß, Ýôóé þóôå íá äéáóöáëßæåôáé ç ìåôáöïñü ôùí äåäïìýíùí. Ôá ôå ëåõôáßá ñíéá ç Ýñåõíá ó áõô ôïí ôïìýá Ý åé åíôáèåß, éäéáßôåñá ìå ôçí áíüðôõî ç ôïõ çëåêôñïíéêïý åìðïñßïõ (e-commerce).
182 5.2.11 Óõã ñïíéóìò Óå ìéá óõíå Þ ñïþ äõáäéêþí øçößùí ïé äýêôåò ðñýðåé íá åßíá é óå èýóç íá êáèïñßæïõí ôç èýóç ôïõ ðñþôïõ äõáäéêïý øçößïõ, ôïõ ðñþôïõ áñáêô Þñá, ôïõ ðñþôïõ ðáêýôïõ, êáèþò êáé ôïõ ðëáéóßïõ (PDUs), Ýôóé þóôå íá ìðïñïýí íá äéáãñüöïõí ôçí ðñóèåôç ðëçñïöïñßá (overhead) åëýã ïõ ìå ôçí ïðïßá åðéâáñýíïíôáé ôá äåäïìýíá êáôü ôç äçìéïõñãßá ôïõ áñ éêïý ìçíýìáôïò. ËÝîåéò ðïõ ðñýðåé íá èõìüìáé ÊáôÜôìçóç ìçíõìüôùí, åðáíáóýíèåóç, åíèõëüêùóç, ôìçìáôïðïßçóç, äéåõèõíóéïäôçóç, ðñïôåñáéôçôá äéåêðåñáßùóçò, Ýëåã ïò óýíäåóçò, Ýëåã ïò ñïþò, Ýëåã ïò óöáëìüôùí, áóöüëåéá, óõã ñïíéóìò.