208 Tïìïò É, Åíïôçôá Â: Äéêôõá Åðéêïéíùíéáò Äåäïìåíùí ÌÜèçìá 5.6: ÌïíôÝëï áíáöïñüò TCP/IP 5.6.1 ÅéóáãùãÞ Ç äçìéïõñãßá ôïõ ìïíôýëïõ áíáöïñüò TCP/IP (Transmission Control Protocol / Internet Protocol), ìéáò åíáëëáêôéêþò ðñôáóçò ôïõ ìïíôýëïõ äéáóýíäåóçò áí ïéêôþí óõóôçìüôùí OSI, ïöåßëåôáé óôç ëåéôïõñãßá ôïõ ARPANET, åíò äéêôýïõ ðïõ ðñïçãþèçêå ôïõ Internet êáé ôï ïðïßï áñãôåñá ìåôåîåëß èçêå óôç ìïñöþ ðïõ ãíùñßæï õìå óþìåñá. Ôï ARPANET Þôáí Ýíá äßêôõï ðïõ äçìéïõñãþèçêå ãéá ëïãáñéáóì ôïõ Õðïõñãåßïõ ìõíáò ôùí Ç.Ð.Á. ôçí åðï Þ ôïõ øõ ñïý ðïëýìïõ, óôá ìýóá ôçò äåêáåôßáò ôïõ 1960. Ç éäýá Þôáí ôá äéüöïñá ðïëéôéêü êáé óôñáôéùôéêü êýíô ñá ôùí Ç.Ð.Á. íá Ý ïõí ôç äõíáôôçôá åðéêïéíùíßáò ïðïéáäþðïôå ñïíéêþ óô éãìþ, Ýóôù êáé áí Ýíá ìýñïò ôïõ äéêôýïõ åðéêïéíùíßáò åß å ôåèåß ãéá äéüöïñïõò ëã ïõò åêôò ëåéôïõñãßáò. Ó áõôþ ôçí ðåñßðôùóç ç åðéêïéíùíßá èá ãéíôáí ìýóù åíáëëáêô éêþí ïäåýóåùí êáé óôïé- åßùí ìåôáãùãþò, áñêåß ïé õðïëïãéóôýò ðïõ åðñêåéôï íá åð éêïéíùíþóïõí íá åßíáé óå ëåéôïõñãßá. ÁõôÞ ç áíüãêç áäéüëåéðôçò åðéêïéíùíßáò êüôù á ð ïðïéåóäþðïôå ðåñéóôüóåéò ïäþãçóå óôç äçìéïõñãßá åíò äéêôýïõ ìåôáãùãþò ðá êýôùí, èýìá ðïõ èá ðñïóåããßóïõìå áíáëõôéêü óôï åðìåíï êåöüëáéï. Óôá äßêôõá ìåôáãùãþò ïé ðëçñïöïñßåò, õð ìïñöþ ìçíõìüôùí, äéá ùñßæïíôáé óå ìéêñôåñá ðáêýôá, êáèýíá áð ôá ïðïßá ìðïñåß íá Ý åé óôáèå ñ Þ ìåôáâëçô ìþêïò (ðëþèïò áñáêôþñùí). Ôá ðáêýôá ìåôáäßäïíôáé óôïí ðñïïñéóì ôïõò áíåîüñôçôá ôï Ýíá áð ôï Üëëï, Ýóôù êáé áí ðñïýñ ïíôáé áð ôï ßäéï ìþíõìá, ìýóá áð ôá äéáèýóéìá êáíüëéá åðéêïéíùíßáò êáé ôá óôïé åßá ìåôáãùãþò. Ôá ðáê Ýôá áõôü ßóùò íá öôüóïõí óôïí ðñïïñéóì ôïõò ìå äéáöïñåôéêþ óåéñü áð áõôþí ð ïõ Ýöõãáí. Ó áõôþ ôçí ðåñßðôùóç ï ðáñáëþðôçò Ý åé ôçí åõèýíç íá ôá åðáíáôïðïèåô Þóåé óôç óùóôþ óåéñü, þóôå íá ó çìáôéóôåß ôï áñ éê ìþíõìá. ÐáñÜäåéãìá V Ç äéáäéêáóßá ôçò ìåôáãùãþò ðáêýôùí Ý åé ðïëëýò ïìïéôçôå ò ìå ôï ôá õäñïìéê äßêôõï. Áò õðïôåèåß ôé êüðïéïò ãñüöåé Ýíá ãñüììá ðýíôå óå ëßäùí êáé, áöïý ôïðïèåôþóåé áð ìßá óåëßäá ôïõ ãñüììáôïò ìýóá óå ðýíôå áñéè ìçìýíïõò öáêýëïõò ìå ôçí Ýíäåéîç 1/5, 2/5 5/5, ôïõò óôýëíåé óå Ýíá ößëï ôïõ óå ìáêñéíþ þñá. Áóöáëþò, óôçí ðëåéïíôçôá ôùí ðåñéðôþóåùí, ëïé ïé öüêåëïé èá ð ñýðåé íá öôüóïõí óôïí ðñïïñéóì ôïõò. ºóùò âýâáéá öôüóïõí ìå äéáöïñåôéêþ ó åéñü êáé óå äéáöïñåôéêþ ñïíéêþ óôéãìþ. ºóùò ðåñüóïõí áð äéáöïñåôéêýò þñ åò, ç êáèåìßá áð ôéò ïðïßåò Ý åé ôï äéê ôçò óýóôçìá ðñïþèçóçò êáé ôïõò äéê ïýò ôçò ôá õäñïìéêïýò êáííåò. ¼ìùò ôåëéêü ïé öüêåëïé èá öôüóïõí óôïí ðáñáë Þðôç, ùñßò íá åßíáé áðáñáßôçôï áõôò Þ ï áðïóôïëýáò íá ãíùñßæïõí ôç äéá äñïìþ Þ ôç äéáäéêáóßá ìå ôçí ïðïßá Ýãéíå áõô.
209 Êåöáëáéï 5: Áñ éôåêôïíéêç Äéêôõùí Ôï ìïíôýëï áíáöïñüò TCP/IP ðþñå ôï íïìü ôïõ áð ôá äýï êõñéôåñá ðñùôêïëëá ôïõ ìïíôýëïõ, ôï TCP êáé ôï IP. Óå áíôéóôïé ßá ìå ôçí áñ éôåêôïíéêþ ôïõ OSI, ôï ìïíôýëï áíáöïñüò TCP/IP áðïôåëåßôáé áð ôýóóåñá åðßðåäá Þ óôñþìáôá (layers), åíþ êüèå åðßðåäï, ðùò êáé óôçí ðåñßðôùóç ôïõ OSI, õëïðïéåß Ýíá óõãêåêñéìýíï ðñùôêïëëï. Óôï ó Þìá 5.22 áðåéêïíßæïíôáé ðáñáóôáôéêü áõôü ôá åðßðåäá, äçëáäþ ôï åðßðåäï ðñóâáóçò äéêôýïõ, ôï åðßðåäï Äéáäéêôýïõ, ôï åðßðåäï ìåôáöïñüò êáé ôï åðßðåäï åöáñìïãþò. ¼ðùò ãßíåôáé óå ëåò ôéò áñ éôåêôïíéêýò êáôü óôñþìáôá Þ åðßðåäá, êüèå åðßðåäï ñçóéìïðïéåß ôéò õðçñåóßåò ôïõ áìýóùò áìçëôåñïõ åðéðýäïõ, åíþ ðáñý åé õðçñåóßåò óôï áìýóùò õøçëôåñï áð áõô åðßðåäï. O áñéèìò ôùí åðéðýäùí åßíáé ï ðëýïí ðñóöïñïò, þóôå ç áñ éôåêôïíéêþ íá ðáñáìýíåé áðëþ êáé ôáõô ñïíá áõóôçñü ðñïóäéïñéóìýíåò ëåéôïõñãßåò íá ôïðïèåôïýíôáé óå äéáöïñåôéêü åðß- Ó Þìá.5.22: Ôá ôýóóåñá åðßðåäá ôïõ TCP/IP ðåäá. Ôï óýíïëï ôùí åðéðýäùí ðïõ õëïðïéïýíôáé óôï ìïíôýëï áíáöï ñüò TCP/IP, áñ ßæïíôáò áð ôï áìçëôåñï (åðßðåäï 1) êáé ðñï ùñþíôáò ðñïò ôï õ øçëôåñï (åðßðåäï 4), åßíáé ôï áêëïõèï: Åðßðåäï 1 Þ åðßðåäï ðñóâáóçò äéêôýïõ (L1: network access layer). AíáëáìâÜíåé ôç ìåôáöïñü ôùí óçìüôùí óôï ìýóï ìåôüäïóçò. Ôï åðßðåäï áõô êáèïñßæåé ôéò ëåéôïõñãßåò ôïõ ìýóïõ ìåôüäïóçò êáé åßíáé õðåýèõí ï ãéá ôçí åðéêïéíùíßá ìå ôï äßêôõï. Åðßðåäï 2 Þ åðßðåäï Äéáäéêôýïõ Þ äéêôýïõ (L2: Internet layer). Åßíáé õðåýèõíï ãéá ôéò ëåéôïõñãßåò äñïìïëãçóçò êáé äéåõèõíóéïäôçóçò. Åðßðåäï 3 Þ åðßðåäï ìåôáöïñüò (L3: transport layer). ÁíáëáìâÜíåé, ñçóéìïðïéþíôáò ôéò õðçñåóßåò ôùí áìçëôåñùí ðñïò áõô åðéðýäù í, ôç ìåôáöïñü äåäïìýíùí áð Üêñç ó Üêñç óôï äßêôõï. Eðßðåäï 4 Þ åðßðåäï åöáñìïãþò (L4: application layer). Ðñêåéôáé ãéá ôçí åöáñìïãþ ðïõ åìöáíßæåôáé óôï ñþóôç (ôï ðñãñáììá ðïõ ñçóéìï ðïéåß). Ôá L1 Ýùò L3 áöïñïýí ôéò õðçñåóßåò - ëåéôïõñãßåò ðïõ ðñïóöýñïíôáé áð ôï äßêôõï, åíþ ôo L4 åßíáé ðñïóáíáôïëéóìýío óôéò ëåéôïõñãßåò ôçò åöáñìïãþò ôïõ ñþóôç. 5.6.2 ÌåôÜäïóç äåäïìýíùí óôo TCP/IP Ãéá íá åðéêïéíùíþóïõí äýï Þ ðåñéóóôåñïé çëåêôñïíéêïß õð ïëïãéóôýò ðñýðåé, ðùò Þäç Ý åé áíáöåñèåß, íá äéáèýôïõí ôï ßäéï óýíïëï ðñùôïêëë ùí. ¼ôáí áõô åîáóöáëéóôåß, ïé õðïëïãéóôýò ìðïñïýí íá áíôáëëüîïõí äåäïìýíá. ¼ ðùò êáé óôçí ðåñßðôùóç ôïõ ìïíôýëïõ áíáöïñüò OSI, ôá äåäïìýíá ìåôáäßäïíôáé áð ôï Ýíá åðßðåäï óôï áìýóùò áìçëôåñ ôïõ êáé ðñïùèïýíôáé ìý ñé íá öèüóïõí óôï åðßðåäï ðñóâáóçò
210 Tïìïò É, Åíïôçôá Â: Äéêôõá Åðéêïéíùíéáò Äåäïìåíùí äéêôýïõ. Êáôðéí ðåñíïýí óôï Üëëï ìç Üíçìá, ãéá íá óõíå ßóïõí ôç ñïþ ôïõò ðñïò ôá åðüíù, öèüíïíôáò óôï áíôßóôïé ï ïìôéìï åðßðåäï åêåßíïõ áð ôï ïðïßï îåêßíçóáí. Óçìåéþíåôáé ôé êüèå åðßðåäï åðéêïéíùíåß ìíï ìå ôá ãåéôïíéêü ôïõ åðßðåäá ìýóù ìéáò äéåðáöþò, ç ïðïßá êáèïñßæåé ôéò ëåéôïõñãßåò ðïõ åðéôåëåß êáé ôéò õðçñåóßåò ðïõ ðñïóöýñåé ôï åðßðåäï. Ó Þìá 5.23: Åðéêïéíùíßá óôáèìþí óå äßêôõï ìïíôýëïõ áíáöïñüò TCP/IP Óôï ó Þìá 5.23 ðáñïõóéüæåôáé Ýíá ðáñüäåéãìá åðéêïéíùíßáò ìåôáîý äýï óôáèìþí óå Ýíá äßêôõï ðïõ åßíáé óõìâáô ìå ôï ìïíôýëï áíáöïñüò TCP/IP. Áò õðïèýóïõìå ôé ï óôáèìò Á ìåôáäßäåé óôï óôáèì Â. ÄçëáäÞ ôï L4 ôïõ óôáèìïý A áíôáëëüóóåé äåäïìýíá ìå ôï L4 ôïõ óôáèìïý B, ìå ôï ïðïßï åßíáé ïìôéìï, ñçóéìïðïéþíôáò ôéò õðçñåóßåò ôùí áìçëôåñùí ôñéþí åðéðýäùí. Ïìïßùò ôï L3 ôïõ óôáèìïý A åßíáé ïìôéìï ìå ôï L3 ôïõ óôáèìïý B êáé áíôáëëüóóïõí äåäïìýíá ñçóéìïðïéþíôáò ôéò õðçñåóßåò ôùí áìçëôåñùí äýï åðéðýäùí êôë. ÊáôÜ ôç äéåêðåñáßùóç áõôþò ôçò ëåéôïõñãßáò ôá äåäïìýíá õö ßóôáíôáé åðåîåñãáóßá ç ïðïßá âáóßæåôáé óôçí éåñáñ éêþ äïìþ ôïõ óõíëïõ ôùí ðñùôïêëëùí ôïõ TCP/ IP, ìå áðïôýëåóìá ç äïìþ êáé ôï ðåñéå ìåíï ôùí äåäïìýíùí íá á ëëüæïõí, êáèþò äéáðåñíïýí ôá åðßðåäá óå ëï ôï ìþêïò ôçò äéáäñïìþò áð ôïí áðïóôïëýá ìý ñé ôïí ðáñáëþðôç (ó Þìá 5.24). Óçìåéþíåôáé ôé ôá äåäïìýíá ðïõ äéáðåñíïýí êüðïéï åðßðåäï ðñïêåéìýíïõ íá öôüóïõí óôï åðßðåäï ðñóâáóçò äéêôýïõ õößóôáíôáé äéáöïñåôéêþ åðåîåñãáóßá. Ç åðéêïéíùíßá äýï õðïëïãéóôþí ðïõ ñçóéìïðïéïýí ôï ìïíôýëï áíáöïñüò TCP/IP ðñáãìáôïðïéåßôáé ìýóù ôùí áêëïõèùí äýï ìïñöþí äéåõèõíóéïäôçóçò: ÌÝóù ìßáò ìïíáäéêþò äéåýèõíóçò ãéá êüèå Ó Þìá 5.24: ÌïñöÞ äåäïìýíùí, êáèþò äéáðåñíïýí ôá åðßðåäá ôïõ õðïëïãéóôþ ðïõ óõíäýåôáé óôï äßêôõï. ÁõôÞ ìïíôýëïõ áíáöïñüò TCP/IP. åßíáé ãíùóôþ ùò äéåýèõíóç IP (IP address) êáé ìðïñåß íá ðáñïìïéáóôåß ìå ôï ìïíáäéê áñéèì êëþóçò ôçëåöþíïõ. Ç äéåýèõíóç áõôþ áðïôåëåßôáé áð 32 äõá äéêü øçößá, ùñéóìýíá áíü ïêôþ ìå ìéá ôåëåßá. Ìßá IP äéåýèõíóç åßíáé, ãéá ðáñüäåéãìá: 10000001.00010100.00010000.00001101. ÌÝóù ìßáò ìïíáäéêþò äéåýèõíóçò ãéá êüèå åöáñìïãþ ðïõ ëåéô ïõñãåß óôïí êüèå õðïëïãéóôþ. Áõô åðéôñýðåé óôï åðßðåäï ìåôáöïñüò íá ðáñáä ßäåé ôá äåäïìýíá óôç óùóôþ åöáñìïãþ. Ïé äéåõèýíóåéò áõôýò åßíáé ãíùóôýò ùò èýñåò (ports).
211 Êåöáëáéï 5: Áñ éôåêôïíéêç Äéêôõùí ¼ðùò öáßíåôáé êáé áð ôï ó Þìá 5.24, ï ðïìðò, ìýóù ôçò åöáñìïã Þò ðïõ ñçóéìïðïéåß, äßíåé ôá áñ éêü äåäïìýíá óôï åðßðåäï åöáñìïãþò, ô ï ïðïßï ðñïóèýôåé ó áõôü ðëçñïöïñßåò ðïõ èá ñçóéìïðïéçèïýí ìíï áð ôï ïìôé ìï åðßðåäï åöáñìïãþò ôïõ äýêôç. ÁõôÝò ïé ðëçñïöïñßåò ðåñéý ïíôáé óå ìéá åðé êåöáëßäá, ç ïðïßá åðéêïëëüôáé óôçí áñ Þ ôïõ áñ éêïý ðáêýôïõ ôùí äåäïìýíùí êáé ïíïìüæåôáé ðëçñïöïñßá åëýã ïõ ôïõ ðñùôïêëëïõ (PCI: Protocol Control Information). Ç åðéêåöáëßäá, ìáæß ìå ôá áñ éêü äåäïìýíá ôïõ ñþóôç, ó çìáôßæåé Ýíá íýï ð ëáßóéï äåäïìýíùí, ðïõ ïíïìüæåôáé ìïíüäá äåäïìýíùí ðñùôïêëëïõ åöáñìïãþò (APDU: Application Protocol Data Unit). Ç ìïíüäá äåäïìýíùí ðñùôïêëëïõ åöáñìïãþò áíôéóôïé åß íïçôü óôï ïìôéìï åðßðåäï åöáñìïãþò ôïõ äýêôç, óôçí ðñáãìáôéêôçôá ìùò ðåñíü óôï áìýóùò åðìåíï åðßðåäï ìåôáöïñüò. Ôï åðßðåäï ìåôáöïñüò, ìëéò ôçí ðáñáëüâåé, åðåîåñãüæåôáé ôá äåäïìýíá êáé ðñïóèýôåé ôç äéêþ ôïõ åðéêåöáëßäá, ðïõ ïíïìüæåôáé ðëçñïöïñßá åëýã ïõ ôïõ ðñùôïêëëïõ ìåôáöïñüò (ÔPCI: Transport Protocol Control Information), ó çìáôßæïíôáò ôç ìïíüäá äåäïìýíùí ôïõ ðñùôïêëëïõ ìåôáöïñüò (ÔPDU: Transport Protocol Data Unit). H ìïíüäá äåäïìýíùí ôïõ ðñùôïêëëïõ ìåôáöïñüò äéáðåñíü óôç óõíý åéá ôï åðßðåäï Äéáäéêôýïõ, ðïõ åðáíáëáìâüíåôáé ç ßäéá äéáäéêáóßá, ìý ñé ôá äåäïìýíá íá äéï åôåõèïýí óôï öõóéê êáíüëé åðéêïéíùíßáò, ãéá íá ïäåýóïõí ðñïò ôïí ðáñáëþðôç. Ôá åðßðåäá ìåôáöïñüò êáé Äéáäéêôýïõ ðñïêáëïýí êáôüôìçóç, äçëáäþ äéüóðáóç ôùí äåäïìýíùí óå ìéêñôåñåò ìïíüäåò ðëçñïöïñßáò, ôéò PDUs. Óå êáèåìéü áð áõôýò ôéò ìïíüäåò ðñïóôßèåôáé ç ðëçñïöïñßá åëýã ïõ ôïõ ðñ ùôïêëëïõ (PCI), ç ïðïßá åêôò ôùí Üëëùí ðåñéý åé ðëçñïöïñßåò ðñïêåéìýíïõ í á êáôáóôåß äõíáôþ ç óùóôþ óõíáñìïëãçóç ôùí ðáêýôùí óôï ïìôéìï åðßðåäï. ÁõôÞ ç êáôüôìçóç ôùí äåäïìýíùí óå ìéêñôåñá ðáêýôá Ý åé óêïð íá âåëôéþóåé ôçí áðïäïôéêôçôá ôùí êáíáëéþí åðéêïéíùíßáò. ÓõìðåñáóìáôéêÜ, óå êüèå åðßðåäï ðñïóôßèåôáé íýá ðëçñïöïñ ßá óôá äåäïìýíá ðïõ Ýñ ïíôáé áð ôï ðñïçãïýìåíï åðßðåäï, ç ðëçñïöïñßá åëýã ïõ ôïõ ðñùôïêëëïõ. Ôá íýá äåäïìýíá ðïõ ó çìáôßæïíôáé óå êüèå åðßðåäï ìåôü ôçí ð ñïóèþêç ôçò ðëçñïöïñßáò åëýã ïõ öýñïõí ôéò áêëïõèåò ïíïìáóßåò: ìïíüäá äåäïìýíùí ôïõ ðñùôïêëëïõ åöáñìïãþò (APDU: Application Protocol Data Unit), ìïíüäá äåäïìýíùí ôïõ ðñùôïêëëïõ ìåôáöïñüò (TPDU: Transport Protocol Data Unit), ìïíüäá äåäïìýíùí ôïõ ðñùôïêëëïõ Äéáäéêôýïõ Þ Äéêôýïõ (NPDU: Network/ Internet Protocol Data Unit), ìïíüäá äåäïìýíùí ôïõ ðñùôïêëëïõ ðñóâáóçò äéêôýïõ (PPDU: Physical Protocol Data Unit).
212 Tïìïò É, Åíïôçôá Â: Äéêôõá Åðéêïéíùíéáò Äåäïìåíùí ÐáñÜäåéãìá VI Óôï ó Þìá 5.25 ðáñïõóéüæåôáé ç äéáäñïìþ åíò ðáêýôïõ ðïõ óôý ëíåôáé áð ôïí õðïëïãéóôþ Á óôïí õðïëïãéóôþ  ìýóù åíò TCP/IP äéêôýïõ. Ï ñþóôçò ôïõ õðïëïãéóôþ Á èýëåé íá åðéêïéíùíþóåé, ìýóù êü ðïéáò åöáñìïãþò Á ðïõ ñçóéìïðïéåß ôç èýñá 1, ìå ôïí õðïëïãéóôþ Â, óôïí ïðïßï ç áíôßóôïé ç åöáñìïãþ  ñçóéìïðïéåß ôç èýñá 2. Ï ñþóôçò, ìýóù ôçò åöáñìïãþò Á, äßíåé ôá äåäïìýíá óôï åðßðåäï åöáñìïãþò, ðïõ ìå ôç óåéñü ôïõ ôá ðåñí Ü óôï åðìåíï åðßðåäï, êáé óõãêåêñéìýíá óôï ðñùôêïëëï TCP, ìå ïäçãßåò íá ôá ðáñáäþóåé óôïí õðïëïãéóôþ Â, èýñá 2. Ôï TCP êáôáêåñìáôßæåé ôá äåäïìýíá óå PDUs êáé äßíåé êáèåìßá áð áõôýò óôï åðìåíï åðßðåäï, ìå ôçí ïäçãßá íá ôçí ðáñáäþóåé óôïí õðïëïãéóôþ Â. Ôï IP ðñïóèýôåé óå êáèåìßá áð ôéò PDUs ôçí IP äéåýèõíóç ôïõ ðáñáëþðôç, ôïõ õðïëïãéóôþ  óôç óõãêåêñéìýíç ðåñßðôùó ç, êáé ôç äßíåé óôï åðßðåäï ðñóâáóçò äéêôýïõ, ìå ôçí ïäçãßá íá ôç óôåßëåé óôï äñïìïëïãçôþ 1, ðïõ åßíáé ï ðñþôïò óôáèìò óôç äéáäñïìþ ôùí ðáêýôùí ðñïò ôïí õ ðïëïãéóôþ Â. Ï äñïìïëïãçôþò 1 äéáâüæåé ôç äéåýèõíóç ôïõ ðáñáëþðôç êáé, áí ôç ãíùñßæåé, îýñåé ðþò íá óôåßëåé ôéò PDUs óôïí õðïëïãéóôþ Â, áí äåí ôç ãíùñßæåé, óõíïìéëåß ìå ôïõò ãåéôïíéêïýò äñïìïëïãçôýò, ãéá íá ðüñåé ðëçñïöïñßåò ó åôé êü ìå ôçí êáëýôåñç äñïìïëãçóç ôùí PDUs ðñïò ôïí ðáñáëþðôç. ÔåëéêÜ ïé PDUs öôüíïõí óôïí ðñïïñéóì ôïõò êáé ðáñáäßäïíôáé óôïí õðïëïãéóôþ Â. Áíåâáßíïíô áò ðñïò ôá õøçëôåñá åðßðåäá ïé PDUs öôüíïõí óôï åðßðåäï ìåôáöïñüò êáé óôï ðñùôêïëëï TCP ôïõ ðáñáëþðôç, åðáíáóõíáñìïëïãïýíôáé êáé ðáñáäßäïíôáé ó ôç èýñá 2 êáé óôçí áíôßóôïé ç åöáñìïãþ. Ó Þìá 5.25: Åðéêïéíùíßá äýï õðïëïãéóôþí ìå ôï ìïíôýëï áíáöïñ Üò TCP/IP
213 Êåöáëáéï 5: Áñ éôåêôïíéêç Äéêôõùí 5.6.3 Ôá åðßðåäá ôïõ TCP/IP 5.6.3.1 Åðßðåäï ðñóâáóçò äéêôýïõ Ôï åðßðåäï ðñóâáóçò äéêôýïõ (network access layer) åßíáé õðåýèõíï ãéá ôçí åðéêïéíùíßá ôïõ óôáèìïý ìå ôï äßêôõï. Áíé íåýåé ôçí áñ éôåêôïíéêþ ôïõ äéêôýïõ êáé áíüëïãá äéï åôåýåé ôá ðáêýôá óôï êáíüëé åðéêïéíùíßáò. Åðßóçò åßíá é õðåýèõíï ãéá ôçí ðáñï Þ ìéáò äéåðáöþò ðïõ èá ôïõ åðéôñýøåé ôçí åðéêïéíùíßá ìå ôï åðßðåäï Äéáäéêôýïõ. Ôï åðßðåäï áõô êáèïñßæåé ôï öõóéê ìýóï ðïõ ñçóéìïðïéåß ôáé ãéá ôç äéáóýíäåóç ôùí óõóêåõþí ìåôüäïóçò äåäïìýíùí (óôáèìþí åñãáóßáò Þ ðñï óùðéêþí õðïëïãéóôþí) ìå ôï äßêôõï. Ôï êýñéï ôìþìá ôïõ Äéáäéêôýïõ áðïôåëåßô áé áð Ýíáí áñéèì õðïëïãéóôþí åéäéêïý óêïðïý, ðïõ äéáóõíäýïíôáé ìåôáîý ôïõ ò ñçóéìïðïéþíôáò ãñáììýò åðéêïéíùíßáò ðáíôò ôýðïõ. ¼ëïé ïé õðëïéðïé õðïëïãéó ôýò êáé ôá ôïðéêü äßêôõá óõíäýïíôáé óôç óõíý åéá ó áõôïýò ôïõò åéäéêïý óêïðïý õðï ëïãéóôýò. Êáô áõô ôïí ôñðï äéáóõíäýïíôáé ìåôáîý ôïõò ïé õðïëïãéóôýò, ñçóéìïð ïéþíôáò ìéá ìåãüëç ðïéêéëßá öõóéêþí ìýóùí, áð ôçëåöùíéêýò ãñáììýò (êïéíýò Þ ìéó èùìýíåò) Ýùò äïñõöïñéêýò æåýîåéò, UHF êôë. Ôï ìïíôýëï áíáöïñüò TCP/IP äåí ðåñéãñüöåé áíáëõôéêü ôï óõãêåêñéìýíï åðßðåäï ïýôå ôá ðñùôêïëëá ðïõ ðñýðåé íá ñçóéìïðïéçèïýí, ãéá íá å ðéôåõ èåß ç ðñóâáóç óôï äßêôõï, ìå áðïôýëåóìá ôá ñçóéìïðïéïýìåíá ó áõô ôï å ðßðåäï ðñùôêïëëá íá ðïéêßëëïõí áíüëïãá ìå ôïí ôýðï ôïõ ìç áíþìáôïò Þ ôï åßäïò ôïõ äéêôýïõ. 5.6.3.2 Eðßðåäï Äéáäéêôýïõ Ôï åðßðåäï Äéáäéêôýïõ (Internet layer) åßíáé ôï æùôéê åðßðåäï ôïõ ìïíôýëïõ. Ï óêïðò ôïõ åßíáé ç äñïìïëãçóç êáé ç ðáñüäïóç ôùí PDUs óôïí ðáñáëþðôç. ÐñïóèÝôåé óôéò PDUs ôç äéåýèõíóç ôïõ ðáñáëþðôç êáé ôéò óôýëíåé óôï äßêôõï, ðñïêåéìýíïõ áõôýò íá öèüóïõí, áíåîüñôçôá ç ìßá áð ôçí Üëëç, óôïí ðñ ïïñéóì ôïõò, ðåñíþíôáò áð äéüöïñïõò åíäéüìåóïõò óôáèìïýò ïé ïðïßïé åßíá é åöïäéáóìýíïé ìå ôï áíôßóôïé ï ðñùôêïëëï. Óôéò ðåñéðôþóåéò ðïõ äýï óõóôþìáô á åßíáé óõíäåäåìýíá óå äéáöïñåôéêü äßêôõá, áðáéôïýíôáé äéáäéêáóßåò ïé ïðïßåò èá åðéôñýøïõí ôç ìåôüâáóç ôùí äåäïìýíùí óôïí ðñïïñéóì ôïõò äéáìýóïõ ðïëëáðëþí äéá óõíäåäåìýíùí äéêôýùí. Ôï ðñùôêïëëï ôçò ïéêïãýíåéáò TCP/IP ðïõ åßíáé õðåýèõíï ãéá ôçí ðáñï Þ õðçñåóéþí ó áõô ôï åðßðåäï åßíáé ôï Internet Protocol (IP). Ç ìïíüäá ìåôáöåñìåíùí äåäïìýíùí ó áõô ôï åðßðåäï åßíáé ôï ðáêýôï IP Þ, ðùò óõíþèùò ëýãåôáé, IP datagram, åìðåñéý ïíôáò Ýôóé ôçí Ýííïéá ôïõ áõôïäýíáìïõ ðáêýôïõ, á õôïý äçëáäþ ðïõ äéáíýåé áíåîüñôçôá êáé ìå äéêýò ôïõ äõíüìåéò ðñïò ôïí ðñïïñéóì ôïõ. Ôï ðáêýôï IP ðåñéý åé ôóï ôç äéåýèõíóç ôïõ áðïóôïëýá óï êáé ôç äéåýèõíóç ôïõ ðáñáëþðôç, Ýôóé þóôå íá ìðïñåß íá äéáíåìçèåß êáé íá äñïìïëïãçèåß áíåîüñôçôá áð ôá Üëëá. Êáèåìßá áð ôéò äéåõèýíóåéò IP Ý åé ìþêïò 32 äõáäéêü øçößá. ÅðåéäÞ ç áðïìíçìíåõóþ ôïõò åßíáé åîáéñåôéêü äýóêïëç, Ý åé åðéíïçèåß ç ðáñüóôáóç ôçò äéåýèõíóçò ìå
214 Tïìïò É, Åíïôçôá Â: Äéêôõá Åðéêïéíùíéáò Äåäïìåíùí Ýíáí ôñðï áðëïýóôåñï, ñçóéìïðïéþíôáò äåêáäéêïýò áñéèìïýò. Ìßá ÉÑ äéåýèõíóç 32 äõáäéêþí øçößùí ùñßæåôáé ìå ôåëåßåò óå ôýóóåñá ðåäßá ôù í 8 äõáäéêþí øçößùí. ÊÜèå ðåäßï ìåôáôñýðåôáé óôïí éóïäýíáìï äåêáäéê áñéèì, þóôå ôåëéêü ç ÉÑ äéåýèõíóç íá ðåñéãñüöåôáé áð ôýóóåñéò äåêáäéêïýò áñéèìïýò ùñéóìýíïõò ìå ôåëåßåò. Óôçí ðñüîç Ý åé åðéêñáôþóåé áõôò ï ôñðïò ðáñïõóßáóçò ôùí ÉÑ äéåõèýíóåùí, ï ïðïßïò åêôò áð ôçí åõêïëßá áðïìíçìíåõóçò Ý åé êáé ôï ðëåïíýêô çìá ôçò éåñüñ çóçò ôùí äéåõèýíóåùí áõôþí, ðùò èá äïýìå óôç óõíý åéá (ÌÜèçìá 15.3). Ãéá ðáñüäåéãìá, ç ÉP äéåýèõíóç: 10110011111001000100100100001011 ãßíåôáé 10110011.11100100.01001001.00001011 êáé óôç óõíý åéá 179.228.73.12 Ôá ðñùôêïëëá ðïõ óõíþèùò ñçóéìïðïéïýíôáé ó áõô ôï åðßðåäï, åêôò áð ôï IP, åßíáé ôï ICMP (Internet Control Messaging Protocol), ôï ARP (Address Resolution Protocol), ôï RARP (Reverse Address Resolution Protocol) êáé Üëëá ëéãôåñï ãíùóôü. 5.6.3.2.1 Ôï ðñùôêïëëï Äéáäéêôýïõ Ôï ðñùôêïëëï Äéáäéêôýïõ (IP: Internet Protocol) åßíáé ðñùôêïëëï ôïõ åðéðýäïõ Äéáäéêôýïõ, äçëáäþ ôïõ ôñßôïõ åðéðýäïõ êáôü ôçí ïñïëïãßá ðïõ Ý åé êáèéåñùèåß ãéá íá ðåñéãñüøåé ôï OSI, êáé ñçóéìïðïéåßôáé óôç äéáóýíäåóç çëåêôñïíéêþí õðïëïã é- óôþí ðïõ áíþêïõí óôï ßäéï Þ óå äéáöïñåôéêü äßêôõá. To IP õðïóôçñßæåé ôéò ðáñáêüôù ëåéôïõñãßåò: Káèïñßæåé ôç äéåõèõíóéïäôçóç, ôç äñïìïëãçóç, ôçí ôìçìáô ïðïßçóç êáé ôçí åðáíáóõíáñìïëãçóç ôùí äåäïìýíùí. Ãéá ðáñüäåéãìá, áí êüðï éïò åíäéüìåóïò õðïëïãéóôþò ðáñáëüâåé ìßá ìïíüäá äåäïìýíùí ðïõ åßíáé ðïëý ìåãüëç ãéá íá ìåôáäïèåß óôï åðìåíï äßêôõï, ôôå áõôþ ôìçìáôïðïéåßôá é óå ðáêýôá áð ôï ÉÑ, ôá ïðïßá ìåôáäßäïíôáé áíåîüñôçôá. Ïé PDUs åðáíáóõíáñìïëïãïýíôáé óå ìßá ìïíüäá, ìíï ôáí öôüóïõí óôïí ðáñáëþðôç. Áí êüðïéá PDU áèåß, ôôå áðïññßðôåôáé ëç ç ìïíüäá. ÐáñÝ åé Ýíá óôïé åéþäç ôñðï åëýã ïõ ñïþò, Ýôóé þóôå, ôáí ìéá ðçãþ äåäïìýíùí áðïóôýëëåé ìå ìåãáëýôåñïõò ñõèìïýò áð áõôïýò ðïõ ìðï ñåß íá äéá åéñéóôåß ï äýêôçò, áõô (IP) íá åíçìåñþíåôáé ìå êáôüëëçëá ìçíýìáôá ðñïêåéìýíïõ íá óõììïñöùèåß óôïí áðáéôïýìåíï ñõèì ìåôüäïóçò. ÐáñáëáìâÜíåé áð ôï åðßðåäï ìåôáöïñüò äåäïìýíá ìåãýèïõò 64 Kbytes ôï ðïëý, ôá ôåìá ßæåé óå ìéêñôåñá ôìþìáôá, áí ôï êñßíåé áðáñá ßôçôï, êáé ôá ìåôáäßäåé óôï äßêôõï. Ç ôìçìáôïðïßçóç ôùí ðáêýôùí ãßíåôáé óôé ò ðåñéðôþóåéò êáôü ôéò ïðïßåò áõôü ðñýðåé, ãéá íá öôüóïõí óôïí ðñïïñéóì ôïõò, íá ðåñüóïõí áð äßêôõá ðïõ äåí ìðïñïýí íá åéñéóôïýí ìåãüëá ðáêýôá. Ãé á ðáñüäåéãìá, Ýíá äßêôõï Ethernet ìðïñåß íá åéñéóôåß PDUs áð 64 Ýùò 1.500 Kbytes, ïðôå ó áõôþ ôçí ðåñßðôùóç ôï IP ìðïñåß ðáñåìâáßíïíôáò íá ôìçìáôïðïéþóåé ôéò PDUs ôùí 64 Kbytes ðïõ ðáßñíåé áð ôï åðßðåäï ìåôáöïñüò óå ìéêñôåñåò PDUs ôùí 1.500 bytes ôï ðïëý.
215 Êåöáëáéï 5: Áñ éôåêôïíéêç Äéêôõùí Ôï ÉÑ äåí åããõüôáé ôé ïé ìïíüäåò äåäïìýíùí èá äéáíåìçèïýí ïðùóäþðïôå Þ ôé èá äéáíåìçèïýí óùóôü. ÅðïìÝíùò, ôáí ìßá PDU áðïññßðôåôáé, äåí åßíáé äåäïìýíï ôé êüðïéï áíþôåñï ðñùôêïëëï èá öñïíôßóåé ãéá ôçí å ðáíáìåôüäïóþ ôçò. Óôï ó Þìá 5.26 ðáñïõóéüæåôáé ç äïìþ åíò ðáêýôïõ IP ðïõ Ý åé ìýãéóôï ìþêïò 64 Kbytes. Ôï IP Ý åé ìßá åðéêåöáëßäá (header) ôïõëü éóôïí 20 bytes êáé Ýíá ðåäßï ãéá ôá äåäïìýíá (data) ìåôáâëçôïý ìþêïõò. ÁíáëõôéêÜ, áðïôåëåßôáé áð ôá áêëïõè á ðåäßá: To ðåäßï Ýêäïóç (version). Åßíáé 4 äõáäéêü øçößá êáé äçëþíåé ôçí Ýêäïóç ôïõ ðñùôïêëëïõ ÉÑ. Ôï ðåäßï ìþêïò åðéêåöáëßäáò (header length). Åßíáé 4 äõáäéêü øçößá êáé ðñïóäéïñßæåé ôï ìþêïò ôçò åðéêåöáëßäáò, êáèþò êáé ôï ðåäßï ôùí åðéëïãþí (options). Ôï ìþêïò ôçò åðéêåöáëßäáò õðïëïãßæåôáé óå 32 äõáäéêü øçößá, ð.. ãéá ðáêýôá ÉÑ ùñßò åðéëïãþ ôï ðåäßï áõô Ý åé ôéìþ 5. Ôï ðåäßï ôýðïò õðçñåóßáò (type of service). Eßíáé 8 äõáäéêü øçößá êáé áñáêôçñßæåé ôçí ðïéôçôá ìåôüäïóçò ðïõ åðéäéþêåé Ýíá ðáêýôï. Åäþ åðéëýãåôáé áí ôï ðáêýôï ðñýðåé íá öèüóåé ãñþãïñá áíåîáñôþôùò ðïéôçôáò Þ áí ðñýðåé íá öèüóåé óùóôü áíåîáñôþôùò ñíïõ. áñáêôçñéóôéêü ðïõ ðñïó äéïñßæïõí áõôþ ôçí ðïéôçôá åßíáé: l l l ç áîéïðéóôßá, ç êáèõóôýñçóç ìåôüäïóçò, ï ñõèìò äéýëåõóçò (throughput) êôë. Ôï ðåäßï óõíïëéê ìþêïò (total length). Eßíáé 16 äõáäéêü øçößá êáé ðñïóäéïñßæåé ôï ìþêïò ëïõ ôïõ ðáêýôïõ, êáèþò êáé ôçò åðéêåöáëßäáò êáé ôùí äåäïìýíùí. Ôï ìýãéóôï ìþêïò ôïõ ðáêýôïõ ìðïñåß íá öèüóåé ôá 65.536 bytes. Ôï ðåäßï áñéèìò ôáõôôçôáò (identification number). Xñçóéìïðïéåßôáé óôéò ðåñéðôþóåéò êáôüôìçóçò åíò ðáêýôïõ óå ìéêñôåñá ôìþìáôá, þóôå ï õðïëïãéóôþò - ðáñáëþðôçò íá ìðïñåß óôç óõíý åéá íá ðñïóäéïñßæåé ãéá êüèå ôìþìá ðïõ öèüíåé óå ðïéï ðáêýôï áíþêåé. Íá óçìåéùèåß ôé ëá ôá ôìþìáôá åíò áõôïäýíáìïõ ðáêýôïõ (datagram) Ý ïõí ôïí ßäéï áñéèì ôáõôôçôáò. Ôï ðåäßï óþìáíóç (flags). Eßíáé 3 äõáäéêü øçößá, áð ôá ïðïßá ôï ðñþôï, ôï R, Ý åé ôéìþ 0 êáé õðüñ åé ãéá ìåëëïíôéêþ ñþóç. Ôï äõáäéê øçößï DF (Don t Fragment) ñçóéìïðïéåßôáé ùò åíôïëþ ôïõ áðïóôïëýá ôïõ IP ðáêýôïõ ðñïò ôï äßêôõï, þóôå áõô íá ìçí ôåìá éóôåß, äéôé ï ðáñáëþðôçò áäõíáôåß íá ôï åðáíáóõíäýóåé. Ó Þìá 5.26: ÄïìÞ ôïõ IP ðáêýôïõ
216 Tïìïò É, Åíïôçôá Â: Äéêôõá Åðéêïéíùíéáò Äåäïìåíùí l ¼ôáí ôï DF = 1, óçìáßíåé ôé åðéôñýðåôáé ï ôåìá éóìò, åíþ l ôáí ôï DF = 0, óçìáßíåé ôé äåí åðéôñýðåôáé. ¼ôáí ôï äõáäéê øçößï MF (More Fragments) Ý åé ôéìþ 1, äçëþíåé óôïí ðáñáëþðôç ôé áêïëïõèïýí êáé Üëëá ôìþìáôá ôïõ ßäéïõ êáôáêåñìá ôéóìýíïõ ðáêýôïõ. Ðñïöáíþò ôï ôåëåõôáßï ôìþìá ôïõ ðáêýôïõ Ý åé MF = 0. Óå êüèå êüñôá äéáóýíäåóçò äéêôýïõ (NIC: Network Interface Card) ðïõ Ý åé öôéá ôåß ìý ñé óþìåñá Ý åé áðïäïèåß áð ôïí êáôáóêåõáóôþ ôçò Ýíáò ìïíáäéêò áñéèìò 48 áñáêôþñùí. ÁõôÞ ç öõóéêþ äéåýèõíóç ïíïìüæåôáé äéåýèõíóç åëýã ïõ ðñóâáóçò ìýóïõ (Media Access Control Þ MAC address). Ôï ðåäßï èýóç ôìþìáôïò (fragment offset). Ðñïóäéïñßæåé ôç èýóç êüèå ôìþìáôïò óôï ðáêýôï, þóôå ï ðáñáëþðôçò íá ìðïñåß íá åðáíáóõíáñì ïëïãþóåé ôï ðáêýôï. Ôï ðåäßï áõô êáèïñßæåé ôçí áðóôáóç ðïõ Ý åé ç èýó ç ôïõ óõãêåêñéìýíïõ ôìþìáôïò áð ôçí áñ Þ ôïõ ÉÑ ðáêýôïõ êáé ìåôñéýôáé óå ðïëëáðëüóéá ôïõ 8 äõáäéêü øçößá. Ôï ðåäßï ñíïò æùþò (life time). Ðñïóäéïñßæåé ôï ñíï æùþò ôïõ IP ðáêýôïõ. Ï ñíïò æùþò ìåôñéýôáé óå äåõôåñëåðôá, áëëü ôï ðéï óõíçèéóìýíï åßíáé íá ìåôñéýôáé óå áñéèì æåýîåùí (hops), åðåéäþ ï ñíïò äéýëåõóçò áð Ýíáí åíäéüìåóï óôáèì óå Ýíáí Üëëï åßíáé êüôù ôïõ åíò äåõôåñïëýðôïõ. Ê Üèå öïñü ðïõ ôï ðáêýôï ðåñíü áð Ýíáí åíäéüìåóï óôáèì, áöáéñåßôáé ìßá ìïíüäá. Ç ôéìþ Ýíáñîçò ðñïóäéïñßæåôáé áð ôï ðñùôêïëëï ôïõ áíþôåñïõ åðéðýäïõ ðïõ äçìéïõñãåß ôï ðáêýôï, åíþ ç ìýãéóôç ôéìþ Ýíáñîçò åßíáé ôï 255. ¼ôáí ç ôéìþ áõôþ ãßíåé ìçäýí, ôï ðáêýôï êáôáóôñýöåôáé, åðåéäþ èåùñåßôáé ôé Ý åé ìðåé óå áôýñìïíá êõêëéêþ ðïñåßá ( loop) ìýóá óôï äßêôõï. Ôï ðåäßï ðñùôêïëëï (protocol). ÁíáöÝñåôáé óôï ðñùôêïëëï ôïõ åðéðýäïõ ìåôáöïñüò, ðïõ ñçóéìïðïéåßôáé (ð.. TCP, UDÑ) óôïí ôåëéê óôáèì ðñïïñéóìïý. ÔõðéêÝò ôéìýò ôïõ ðåäßïõ áõôïý åßíáé: l TCP = 6 l UDP = 17 Ôï ðåäßï Üèñïéóìá åëýã ïõ åðéêåöáëßäáò (header checksum). Xñçóéìïðïéåßôáé ãéá ôïí Ýëåã ï ïñèþò ìåôüäïóçò ìíï ãéá ôçí åðéêåöáëß äá êáé é ãéá ôá äåäïìýíá. ÅðåéäÞ õðüñ ïõí ðåäßá ðïõ áëëüæïõí êáôü ôçí ðïñ åßá ôïõ ìçíýìáôïò, ðùò åßíáé ï ñíïò æùþò, ôï Üèñïéóìá åëýã ïõ åðéêåöáë ßäáò åðáíõðïëïãßæåôáé óå êüèå åíäéüìåóï åðßðåäï ôïõ äéêôýïõ. Ôï ðåäßï äéåýèõíóç áðïóôïëýá (source address). Eßíáé 32 äõáäéêü øçößá êáé ðñïóäéïñßæåé ôçí ÉP äéåýèõíóç ôïõ áðïóôïëýá. Ôï ðåäßï äéåýèõíóç ðáñáëþðôç (destination address). Åßíáé 32 äõáäéêü øçößá êáé ðñïóäéïñßæåé ôçí ÉÑ äéåýèõíóç ôïõ ðáñáëþðôç. Ôï ðåäßï åðéëïãýò (ïptions). Åßíáé ìç õðï ñåùôéê ðåäßï ìåôáâëçôïý ìþêïõò, ðïõ ñçóéìïðïéåßôáé ãéá íá áíôéìåôùðßæåé èýìáôá áóöüëåé áò, êáôåõèõíìåíçò äñïìïëãçóçò, ñïíïóöñáãßäùí, êáôáãñáöþò äéáäñïìþí êôë. ¼ ôáí ôï ìýãåèïò ôïõ ðåäßïõ áõôïý äåí åßíáé ðïëëáðëüóéï ôùí 32 äõáäéêþí ø çößùí, ôï õðëïéðï óõìðëçñþíåôáé ìå ìçäåíéêü. Ôï ðåäßï óõìðëþñùóç äåäïìýíùí (padding data). Xñçóéìïðïéåßôáé ãéá íá óõìðëçñùèåß ìå 32 äõáäéêü øçößá ôï ðåäßï åðéëïãýò êáé Ý åé ðüí ôá ôéìþ 0. Ôï ðåäßï äåäïìýíá (data). Eßíáé ôï ðåäßï ðïõ ðåñéý åé ìýñïò ôùí ðñáãìáôéêþí äåäïìýíùí ðïõ óôýëíåé ï Ýíáò çëåêôñïíéêò õðïëïãéóôþò óô ïí Üëëï.
217 Êåöáëáéï 5: Áñ éôåêôïíéêç Äéêôõùí 5.6.3.2.2 Ôï ðñùôêïëëï áíüëõóçò äéåõèýíóåùí Ôï ðñùôêïëëï áíüëõóçò äéåõèýíóåùí (ARP: Address Resïlution Protocol) ñçóéìïðïéåßôáé áð ôï ìïíôýëï TCP/IP ãéá ôç ìåôáôñïðþ ôçò IP äéåýèõíóçò ôçò óõóêåõþò óôçí ðñáãìáôéêþ öõóéêþ äéåýèõíóç åëýã ïõ ðñóâáóçò óôï ìýóï (MAC: Media Access Control) ôïõ õëéêïý. Ôï TCP/IP ñçóéìïðïéåß ðáêýôá áéôþóåùí ARP, ãéá íá ðüñåé ôç öõóéêþ äéåýèõíóç êüèå óõóêåõþò ôïõ äéêôýïõ, êá é óôç óõíý åéá áíôéóôïé ßæåé áõôþ ôç äéýõèõíóç óôç äéåýèõíóç ÉÑ. ¼ôáí äçëáäþ ñåéüæåôáé íá óôáëåß Ýíá ðáêýôï óå Ýíá óõãêåêñéìýíï çëåêôñïíéê õðïëïãéóôþ, èá ðñý ðåé ôï äßêôõï êáé åéäéêôåñá ï ôåëåõôáßïò åíäéüìåóïò óôáèìò ðýñá áð ôçí IP äéåýèõíóç íá ãíùñßæåé êáé ôç öõóéêþ MAC äéåýèõíóç ôïõ ðáñáëþðôç. Ôï ðñùôêïëëï áíüëõóçò äéåõèýíóåùí êüíåé áêñéâþò áõôþ ôç äïõëåéü, äßíïíôáò óôï óôáèì ôç öõóéêþ äéåýèõíóç ôçò áíôßóôïé çò IP äéåýèõíóçò ôïõ õðïëïãéóôþ - ðáñáëþðôç. 5.6.3.2.3 Ôï ðñùôêïëëï åëýã ïõ ìçíõìüôùí Äéáäéêôýïõ Ôï ðñùôêïëëï åëýã ïõ ìçíõìüôùí Äéáäéêôýïõ (ICMP: Internet Control Message Protocol) ñçóéìïðïéåßôáé êõñßùò áð ôï ðñãñáììá Ping. Ôá ðáêýôá ICMP åíèõëáêþíïíôáé ìýóá óôá ðáêýôá ÉÑ, åðéôñýðïíôáò óå äýï êìâïõò ôïõ äéêôýïõ íá ñçóéìïðïéïýí áð êïéíïý ðëçñïöïñßåò ãéá ôçí êáôüóôáóç êáé ôá óö Üëìáôá ôùí ðáêýôùí ÉÑ. ÁõôÞ ç ôå íéêþ ñçóéìïðïéåßôáé áð ôï ðñãñáììá Ping ìå ôç ìïñöþ ìçíõìüôùí áéôþóåùí áíôþ çóçò (echo request) êáé áðáíôþóåùí áíôþ çóçò (echo reply), ãéá íá äéáðéóôùèåß êáôü ðóï õðüñ åé ìéá óõãêåêñéìýíç ÉÑ äéåýèõíóç óôï äßêôõï. 5.6.3.3 Åðßðåäï ìåôáöïñüò ÁíåîÜñôçôá áð ôç öýóç ôùí åöáñìïãþí ðïõ áíôáëëüóóïõí äåä ïìýíá, õðüñ åé áðáßôçóç ãéá áîéðéóôç áíôáëëáãþ äåäïìýíùí ìå ôç óåéñü ðï õ óôüëèçêáí. Ïé ìç áíéóìïß ðïõ ðáñý ïõí áõôïý ôïõ åßäïõò ôçí áîéïðéóôßá åßíáé áíåîüñôçôïé áð ôç öýóç ôùí åöáñìïãþí, ïðôå äéêáéïëïãåßôáé ç ïìáäïðïßçóþ ôïõò óå Ýíá åðßðåäï äéáìïéñáóìýíï óå ëåò ôéò åöáñìïãýò, ôï ïðïßï áðïêáëåßôáé åðßðåäï ìåôáöïñüò (transport layer). Äßíïíôáò ôçí åíôïëþ: ping150. 140.90.30 ìðïñåß êüðïéïò íá äéáðéóôþóåé áí ï çëåêôñïíéêò õðïëïãéóôþò óõíäýåôáé óôï äßêôõï, ôç óõãêåêñéìýíç ñïíéêþ óôéãìþ, ìå ôç óõãêåêñéìýíç IP äéåýèõíóç. ÐéèáíÝò áðáíôþóåéò åßíáé: 150.140.90.30 is alive, ðïõ óçìáßíåé ôé ï õðïëïãéóôþò ìå IP äéåýèõíóç: 150. 140.90.30 åßíáé óôï äßêôõï. no answer, ðïõ óçìáßíåé ôé ï õðïëïãéóôþò ìå IP äéåýèõíóç 150. 140.90.30 äåí åßíáé óôï äßêôõï. Ôï åðßðåäï ìåôáöïñüò åßíáé õðåýèõíï ãéá ôçí ðáñáëáâþ ôùí äåäïìýíùí áð ôï åðßðåäï åöáñìïãþò, ôç äéüóðáóþ ôïõò óå ìéêñôåñá ìçíýìáôá, áí ñåéáóôåß, ôçí ðáñüäïóþ ôïõò óôï áìýóùò áìçëôåñï åðßðåäï ôïõ Äéáäéêôý ïõ êáé ôç äéáóöüëéóç ôé ëá ôá ìçíýìáôá öôüíïõí óùóôü óôçí Üëëç ðëåõñü. Áí ïé PDUs äå öôüóïõí ìå ôç óùóôþ óåéñü óôïí ðáñáëþðôç Þ ðåñéý ïõí ëüèç Þ áèïýí, åß íáé åõèýíç ôùí ðñùôïêëëùí ôïõ åðéðýäïõ áõôïý íá ôéò ôïðïèåôþóïõí óôç óùóôþ óåéñü Þ êáé íá æçôþóïõí ôçí åðáíáìåôüäïóç ôùí ëáíèáóìýíùí Þ áðïëåóèýíôùí PDUs. Ïé õðçñåóßåò áõôïý ôïõ åðéðýäïõ ðáñý ïíôáé áð äýï ðñùôêïëëá, ôï TCP êáé ôï UDP.
218 Tïìïò É, Åíïôçôá Â: Äéêôõá Åðéêïéíùíéáò Äåäïìåíùí 5.6.3.3.1 Ðñùôêïëëï åëýã ïõ ìåôüäïóçò Ôï ðñùôêïëëï åëýã ïõ ìåôüäïóçò (TCP: Ôransmission Control Protocol) åßíáé ôï êõñéôåñï ðñùôêïëëï ôïõ åðéðýäïõ ìåôáöïñüò óôï ìïíôýëï áíáöïñüò TCP/IP. Áõô ðáñáëáìâüíåé ôá äåäïìýíá áð ôï åðßðåäï åöáñìïãþò êáé ôá ôåìá ßæåé óå ôìþìáôá ôùí 64 Kbytes ôï ðïëý, ôá ïðïßá êáé óôýëíåé ìýóù ôïõ äéêôýïõ óôï ïì ôéìï åðßðåäï ùò îå ùñéóôü ðáêýôá. Åéäéêôåñá, ôo TCP åßíáé Ýíá ðñùôêïëëï ôï ïðïßï Ý åé ôéò áêëïõèåò éäéôçôåò: Åßíáé ðñïóáíáôïëéóìýíï óôç óýíäåóç (connection-oriented). Ôï TCP öñïíôßæåé ãéá ôç óýíäåóç äýï óçìåßùí, êáèþò êáé ãéá ôç ìåôáîý ôïõò åðéêïéíùíßá, åîáóöáëßæïíôáò ôçí áðïóôïëþ êáé ôç ëþøç ôùí PDUs. Ç óýíäåóç ðáñý åôáé áð ôï Ýíá Üêñï óôï Üëëï (end-to-end). ÊÜèå PDU ôïõ TCP Ý åé Ýíá óõãêåêñéìýíï ôåëéê Üêñï (óçìåßï ðñïïñéóìïý), ôï ïðïßï ðñïóäéïñßæåôáé ìýóá óôçí PDU. ÊáôÜ ôç äéüñêåéá ôçò äéáäñïìþò ôçò ìýóá áð ôá êáíüëéá åðéêïéíùíßáò ç PDU áãíïåßôáé áð ëá ôá óçìåßá (çëåêôñïíéêïýò õðïëïãéóôýò Þ Üëëåò äéáôüîåéò) áð ôá ïðïßá ðåñíüåé, ãéá íá êá ôáëþîåé óôï ôåëéê óçìåßï ðïõ åßíáé êáé ï ðñïïñéóìò ôçò. Åßíáé áîéðéóôï (reliable). Ðñêåéôáé ãéá ôï ðéï âáóéê êáé áñáêôçñéóôéê ãíþñéóìá ôïõ TCP. Ôï ðñùôêïëëï öñïíôßæåé íá åîáóöáëéóôåß é ìíï ç Üöéîç ôùí PDUs ðïõ óôýëíïíôáé óôïí ðñïïñéóì ôïõò, áëëü êáé ôé áõôýò öôüíïõí åêåß ìå ôç óåéñü ìå ôçí ïðïßá óôüëèçêáí. Áí êüðïéá PDU ëåßðåé, ôï ðñùôêïëëï èá åéäïðïéþóåé ôïí çëåêôñïíéê õðïëïãéóôþ - áðïóôïëýá ðñïêåéìýíïõ áõ ôþ íá óôáëåß îáíü. Ôï TCP õðïóôçñßæåé ôéò ðáñáêüôù ëåéôïõñãßåò: ôç ëïãéêþ óýíäåóç êáé áðïóýíäåóç ìå ôï ïìôéì ôïõ ðñùôê ïëëï, ôç ìåôüäïóç ôùí äåäïìýíùí óå ðáêýôá ðïõ äåí õðåñâáßíïõí ô á 64 Kbytes, ôçí áîéïðéóôßá ôçò ìåôüäïóçò, ôïí Ýëåã ï ñïþò ôùí äåäïìýíùí, ôçí ïëéêü áìößäñïìç åðéêïéíùíßá ê.ü. ÐñïêåéìÝíïõ ôï TCP íá åðéêïéíùíþóåé ìå ôï åðßðåäï åöáñìïãþò áëëü êáé ïé åöáñìïãýò ìåôáîý ôïõò, ñçóéìïðïéåßôáé ç Ýííïéá ôçò èýñáò Þ ðñôáò (port). Ç èýñá åßíáé Ýíá ðåäßï óôçí åðéêåöáëßäá ôïõ TCP. Óå êüèå åöáñìïãþ áíôéóôïé åß êáé ìéá ïñéóìýíç ôéìþ. Ïé ðéï óõíçèéóìýíåò åöáñìïãýò Ý ïõí ìéá óõ ãêåêñéìýíç ôéìþ èýñáò, ðùò ãéá ðáñüäåéãìá: FTP (File Transfer Protocol): 21 SMTP (Simple Mail Transfer Protocol): 25 Telnet: 23 Óôï ó Þìá 5.27 ðáñïõóéüæåôáé ç äïìþ ìßáò PDU ôïõ ðáêýôïõ TCP ðïõ Ý åé ìþêïò 64 Kbytes. Ôï ðáêýôï áõô áðïôåëåßôáé áð ôá áêëïõèá ðåäßá: Ôá ðåäßá èýñá áöåôçñßáò (source port) êáé èýñá ðñïïñéóìïý (destination port). AíáöÝñïíôáé óôïí áñéèì ôçò èýñáò ðïõ áíôéóôïé åß óôçí ô ñý ïõóá
219 Êåöáëáéï 5: Áñ éôåêôïíéêç Äéêôõùí åöáñìïãþ. Ôï ðåäßï áñéèìò óåéñüò (sequence number). Eßíáé 32 äõáäéêþí øçößùí êáé åîáóöáëßæåé ôé, ôáí ôá äåäïìýíá êáôáôìçèïýí óå PDUs, áõôýò èá ôïðïèåôçèïýí óôç óùóôþ óåéñü. Ó Þìá 5.27: Ôï ðáêýôï TCP Ôï ðåäßï áñéèìò åðéâåâáßùóçò (confirmation number). Åßíáé 32 äõáäéêþí øçößùí êáé åîáóöáëßæåé ôé ïé PDUs ðïõ ëáìâüíïíôáé áð ôïí ðáñáëþðôç ôïðïèåôïýíôáé óôç óùóôþ óåéñü. Ôï ðåäßï ìþêïò åðéêåöáëßäáò (header length). Eßíáé 4 äõáäéêþí øçößùí êáé áíáöýñåé ðóá ðåäßá ôùí 32 äõáäéêþí øçößùí âñßóêïíôáé óôçí åðé êåöáëßäá ôïõ TCP. Ôï ðåäßï äåóìåõìýíï (reserved). Åßíáé 6 äõáäéêþí øçößùí êáé ðñêåéôáé íá ñçóéìïðïéçèåß ìåëëïíôéêü. Ç ôéìþ ôïõ óþìåñá åßíáé 0. Áêïëïõèïýí Ýîé äõáäéêü øçößá ôá ïðïßá åßíáé: l l l Ôï åðåßãïí (U: Urgent), ôï ïðïßï ðñïóäéïñßæåé ôçí ýðáñîç åðåéãíôùí äåäïìýíùí, ðùò óþìáôá åëýã ïõ, äéáêïðôéêü óôïé åßá, áñáêôþñ åò åëýã ïõ ïèíçò êôë. Ç åðéâåâáßùóç (Á: Acknowledge), ç ïðïßá ñçóéìïðïéåßôáé ãéá íá äçëþóåé ôé ç óýíäåóç áðïêáôáóôüèçêå. Ôï ôýëïò ìçíýìáôïò (P: Push), ôï ïðïßï ñçóéìïðïéåßôáé ãéá íá äçëþóåé ôïí
220 Tïìïò É, Åíïôçôá Â: Äéêôõá Åðéêïéíùíéáò Äåäïìåíùí ôåñìáôéóì ôïõ ìçíýìáôïò. l l Ç åðáíåêêßíçóç (R: Reset), ç ïðïßá ñçóéìïðïéåßôáé ãéá íá áðïêáôáóôþóåé ìéá áìýíç óýíäåóç. Ç áðïêáôüóôáóç (S: Syn), ç ïðïßá ñçóéìïðïéåßôáé ãéá íá áðïêáôáóôþóåé ìéá ëáíèáóìýíç óýíäåóç. l Ôï ôýëïò (F: Fin), ôï ïðïßï ñçóéìïðïéåßôáé ãéá íá äçëþóåé ôï ôýëïò ôçò áðï - óôïëþò ôùí äåäïìýíùí. Ôï ðåäßï ðáñüèõñï (window). Eßíáé 16 äõáäéêþí øçößùí êáé ñçóéìïðïéåßôáé ãéá ôïí Ýëåã ï ôçò ñïþò ôùí äåäïìýíùí. Ôï ðåäßï Ýëåã ïò áèñïßóìáôïò (checksum). Eßíáé 16 äõáäéêþí øçößùí êáé ñçóéìïðïéåßôáé ãéá ôïí Ýëåã ï ôçò ïñèôçôáò ôùí äåäïìýí ùí. Ôï ðåäßï åðåßãïí äåßêôçò (urgent pointer). Eßíáé 16 äõáäéêþí øçößùí, êáé ñçóéìïðïéåßôáé ãéá íá åíôïðéóôåß ï ðñþôïò áñáêôþñáò äåäïì Ýíùí ìåôü áð áõôü ðïõ Ý ïõí áñáêôçñéóôåß ùò åðåßãïíôá. Ôï ðåäßï åðéëïãýò (ïptions). Åßíáé ìåôáâëçôïý ìþêïõò êáé ñçóéìïðïéåßôáé ãéá íá ðñïóäéïñßóåé äéüöïñåò ëåéôïõñãßåò ðïõ áðáéôïýíôáé áð ô ï TCP, ðùò ãéá ðáñüäåéãìá ôï ìýãéóôï ìþêïò ôçò ìïíüäáò äåäïìýíùí ðñùôïêëëïõ ìåôáöïñüò (ÔPDU). Ôï ðåäßï óõìðëþñùóç äåäïìýíùí (padding data). Xñçóéìïðïéåßôáé ãéá íá óõìðëçñþóåé ôï ðñïçãïýìåíï ðåäßï, Ýôóé þóôå áõô íá ãßíåé 32 ä õáäéêþí øçößùí, êáé Ý åé ðüíôá ôéìþ 0. Ôï ðåäßï äåäïìýíá (data). Eßíáé ìýñïò ôùí ðñáãìáôéêþí äåäïìýíùí ðïõ óôýëíåé ï Ýíáò çëåêôñïíéêò õðïëïãéóôþò óôïí Üëëï. 5.6.3.3.2 Ðñùôêïëëï äéáãñüììáôïò äåäïìýíùí ñþóôç Ôï ðñùôêïëëï äéáãñüììáôïò äåäïìýíùí ñþóôç (UDP: User Datagram Protocol) åßíáé êáé áõô Ýíá âáóéê ðñùôêïëëï ìåôáöïñüò ðáêýôùí äé êôýïõ. Ôá áñáêôçñéóôéêü ôïõ ðñùôïêëëïõ áõôïý åßíáé ôá áêëïõèá: Åßíáé ìç âáóéóìýíï óôç óýíäåóç (connectionless). Áõô óçìáßíåé ôé ôï ðáêýôï UDP ðïõ óôýëíåôáé áð Ýíá ðñãñáììá óå ïëêëçñï ôï äßêôõï Ý åé ôçí åëðßäá ôé èá êáôáëþîåé óôïí ðñïïñéóì ôïõ êáé ôé èá öôüóåé óôç ó ùóôþ óåéñü. Èåùñåßôáé áðë óôçí õëïðïßçóþ ôïõ. Äåí ðñïóöýñåé ìç áíéóìïýò áîéïðéóôßáò êáé åëýã ïõ ñïþò. Ôï UDP ñçóéìïðïéåßôáé óå êüðïéåò åöáñìïãýò, ðùò ç NFS (Network File System) ãéá äéá åßñéóç áñ åßùí äéêôýïõ êáé ç TFTP (Trivial File Transfer Protocol) ãéá ìåôáöïñü áñ åßùí, óôéò ïðïßåò ç ßäéá ç åöáñìïãþ áðïöáóßæåé íá êáô áâüëåé ôçí åðéðëýïí ðñïóðüèåéá ðñïêåéìýíïõ íá åêôåëåóôåß ðñóèåôïò Ýëåã ïò êáé ðáñáêïëïýèçóç ôùí óöáëìüôùí, Ýôóé þóôå íá åðùöåëçèåß áð ôç ìåãáëýôåñç ôá ý ôçôá êáé ôç ìéêñôåñç åðéâüñõíóç ôïõ UDP. Åðßóçò ôï UDP ñçóéìïðïéåßôáé óõ íü ãéá ìçíýìáôá åêðïìðþò (broadcast messages), ôáí äåí õðüñ åé êüðïéïò óõãêåêñéìýíïò ôåëéêò áðïäýêô çò, ìðïñåß ìùò
221 Êåöáëáéï 5: Áñ éôåêôïíéêç Äéêôõùí íá ñçóéìïðïéçèåß êáé óå åöáñìïãýò óôéò ïðïßåò ï áðïóôïëý áò åßíáé äéáôåèåéìýíïò íá áðïäå ôåß êüðïéá åðéðëýïí åóùôåñéêþ åðéâüñõíóç, ãéá íá åîáóöáëßóåé ôçí áîéðéóôç ðáñüäïóç, êüôé ôï ïðïßï óõíôåëåß ôåëéêü óôç ìåßùóç ôçò óõíïëéêþò åðéâüñõíóçò ôïõ ðñùôïêëëïõ. Óôï ó Þìá 5.28 ðáñïõóéüæåôáé ç äïìþ åíò ðáêýôïõ UDP ðïõ Ý åé ìþêïò 64 Kbytes êáé áðïôåëåßôáé áð ôá áêëïõèá ðåäßá: Ôá ðåäßá èýñá áöåôçñßáò (source port) êáé èýñá ðñïïñéóìïý (destination port). ÁíáöÝñïíôáé óôïí áñéèì ôçò èýñáò ðïõ áíôéóôïé åß óôçí ôñý ïõóá åöáñìïãþ. Ôï ðåäßï ìþêïò åðéêåöáëßäáò (header length). Eßíáé 16 äõáäéêþí øçößùí êáé ðñïóäéïñßæåé ôï ìýãåèïò ôïõ ðáêýôïõ, óõìðåñéëáìâáíïìýíçò êáé ôçò åðéêåöáëßäáò. Ôï ðåäßï Ýëåã ïò áèñïßóìáôïò (checksum). Eßíáé 16 äõáäéêþí øçößùí, ñçóéìïðïéåßôáé ãéá ôïí Ýëåã ï ôçò ïñèôçôáò ôùí äåäïìýíùí êáé åßíáé ðñïáéñåôéê. Ôï ðåäßï äåäïìýíá (data). ÐåñéëáìâÜíåé ìýñïò ôùí ðñáãìáôéêþí äåäïìýíùí. Ó Þìá 5.28: Ôï ðáêýôï UDP 5.6.3.4 Åðßðåäï åöáñìïãþò ÅðÜíù áð ôï åðßðåäï ìåôáöïñüò óôï ìïíôýëï TCP/IP åßíáé ôï åðßðåäï åöáñìïãþò (application layer). Äåí õðüñ ïõí óôï ìïíôýëï TCP/IP ôá åðßðåäá óõíäïõ êáé ðáñïõóßáóçò ðùò óôï OSI, ðïõ Ýôóé êé áëëéþò, ðùò Ý åé äåßîåé ç Ýùò ôþñá åìðåéñßá, åëü éóôá ñçóéìïðïéïýíôáé. Óôï åðßðåäï åöáñìïãþò õðüñ ïõí ðïëëü åõñýùò äéáäåäïìýíá ðñùôêïëëá, ðùò ôï ðñùôêïëëï åîïìïßùóçò ôåñìáôéêïý (terminal emulator protocol), ãíùóô êáé ùò Telnet, ðïõ åðéôñýðåé óå êüðïéïí ñþóôç íá óõíäåèåß áð ôïí õðïëïãéóôþ ôïõ ìå êüðïéï áðïìáêñõóìýíï ìç Üíçìá, ôï ðñùôêïëëï ìåôáöïñüò áñ åßùí (FTP: File Transfer Protocol), ðïõ ñçóéìïðïéåßôáé ãéá ìåôáöïñü áñ åßùí áð Ýíáí õðïëïãéóôþ óå Ýíáí Üëëï, ôï ðñùôêïëëï ìåôáöïñüò áðëïý ôá õäñïìåßïõ (SMTP: Simple Mail Transfer Protocol) ãéá áðïóôïëþ êáé ëþøç çëåêôñïíéêþò áëëçëïãñáößáò, ôï ðñùôêïëëï HTTP (Hyper Text Transfer Protocol) ãéá ìåôáöïñü éóôïóåëßäùí áð ôï Äéáäßêôõï óôïí õðïëïãéóôþ ìáò êáé ðïëëü Üëëá. Óôï ó Þìá 5.29 ðáñïõóéüæïíôáé ôá ôýóóåñá åðßðåäá ôïõ ìïíôýëïõ áíáöïñüò TCP/ IP óå áíôéóôïé ßá ìå ôá ðñùôêïëëá åðéêïéíùíßáò ðïõ åöáñìæïíôáé óå êüèå åðßðåäï ôïõ TCP/IP, êáèþò êáé ôá åðßðåäá ôïõ ìïíôýëïõ áíáöïñüò OSI. Ó Þìá.5.29: Ó Ýóç åðéðýäùí êáé ðñùôïêëëùí óôï ìïíôýëï áíáöïñüò TCP/IP
222 Tïìïò É, Åíïôçôá Â: Äéêôõá Åðéêïéíùíéáò Äåäïìåíùí 5.6.3.4.1 Ðñùôêïëëï åîïìïßùóçò ôåñìáôéêïý Ôï ðñùôêïëëï åîïìïßùóçò ôåñìáôéêïý (Telnet) ñçóéìïðïéåßôáé ãéá ôçí åãêáôüóôáóç ìéáò óýíäåóçò ìå êüðïéïí áðïìáêñõóìýíï çëåêôñïíéê õðïëïãéóôþ. Ç ëåéôïõñãßá ôïõ ðñùôïêëëïõ áõôïý õëïðïéåßôáé ìýóù ôçò áñ éô åêôïíéêþò ðåëüôçò - óôáèìò åîõðçñýôçóçò. ¼ðùò öáßíåôáé óôï ó Þìá 5.30, ï ðåëüôçò Telnet ðñïóåããßæåôáé ìýóù ôïõ ëåéôïõñãéêïý óõóôþìáôïò ôïõ ôïðéêïý õðïëïãéóôþ ìå ôç âïþèåéá ìéáò åöáñìïãþò. Ôï Telnet ðñïóöýñåé õðçñåóßåò ðïõ åðéôñýðïõí óôï ñþóôç íá åðéêïéí ùíþóåé (log on) ìå ôï ëåéôïõñãéê óýóôçìá åíò áðïìáêñõóìýíïõ çëåêôñïíéêïý õðïëïãéóôþ êáé íá ñçóéìïðïéþóåé ôá åãêáôåóôçìýíá ðñïãñüììáôü ôïõ, ðùò ãéá ðáñüäåéãìá ôïí åðåîåñãáóôþ êåéìýíïõ Þ ôçí çëåêôñïíéêþ áëëçëïãñáößá ôïõ. ¼ëåò ïé åíôïëýò ôïõ ñþóôç ðåñíïýí ìýóù ôïõ ôïðéêïý ëåéôïõñãéêïý óõóôþìáôïò óôïí ðåëüôç Ôelnet êáé óôç óõíý åéá ìýóù ôïõ ìïíôýëïõ TCP óôï óôáèì åîõðçñýôçóçò Telnet, äçëáäþ óôï áðïìáêñõóìýíï ìç Üíçìá. Ìå ôïí ßäéï ôñðï ôá áðïôåëýóìáôá åðéóôñýöïíôáé óôïí ðåëüôç Telnet êáé ìýóù ôïõ ôïðéêïý ëåéôïõñãéêïý óõóôþìáôïò óôï ñþóôç. Ôá äýï ðñùôêïëëá Telnet, ôïõ ðåëüôç êáé ôïõ óôáèìïý åîõðçñýôçóçò, åðéêïéíùíïýí ìåôáîý ôïõò ñçóéìïðïéþíôáò åíôïëýò ðïõ åßíáé êùäéêïðïéçìýíåò óå Ýíá ðñôõðï ôï ïðïßï ïíïìüæåôáé äßêôõï íïçôïý ôåñìáôéêïý (NVT: Network Virtual Terminal). Ãéá íá áðïäïèïýí ïé åíôïëýò áõôýò, ñçóéìïðïéåßôáé ôï óýíïëï ôùí áñáêôþñùí ASCII. ¼ëá ôá äåäïìýíá åéóäïõ êáé åîäïõ ðïõ ó åôßæïíôáé ìå ôçí åðéêïéíùíßá ôùí äýï ïìôéìùí ðñùôïêëëùí ðåëüôç êáé óôáèìïý åîõðçñýôçóçò ìåôáöýñïíôáé ðñïò ìßá êáôåýèõíóç ìå Ó Þìá 5.30: Ç áñ éôåêôïíéêþ ðåëüôçò - óôáèìò óåéñýò áñáêôþñùí ASCII. Áí ôá äýï ìç áíþìáôá äå åîõðçñýôçóçò óôçí õðçñåóßá ðñïóïìïßùóçò ñçóéìïðïéïýí ôï ßäéï óýíïëï áñáêôþñùí, ôôå ôá ôåñìáôéêïý (Telnet) áíôßóôïé á ðñùôêïëëá Telnet ìåôáöýñïõí ìáæß ôïõò êáé ôçí ðëçñïöïñßá ãéá ôçí áíôéóôïß éóç (mapping) ôùí äýï óõíëùí, áíáëáìâüíïíôáò Ýôóé êáé ôï ñëï ôïõ åðéðýäïõ ðáñïõóßáóçò ôïõ ìïíôýëïõ áíáöïñüò OSI. 5.6.3.4.2 Ðñùôêïëëï ìåôáöïñüò áñ åßùí Ôï ðñùôêïëëï ìåôáöïñüò áñ åßùí (FTP: File Transfer Protocol) åðéôñýðåé ôçí ðñóâáóç êáé ôç äéá åßñéóç åíò áðïìáêñõóìýíïõ óôáèìïý å îõðçñýôçóçò áñ åßùí (file server). Ç ëåéôïõñãßá êáé áõôïý ôïõ ðñùôïêëëïõ õëïðïéåßôáé ìýóù ôçò áñ éôåêôïíéêþò ðåëüôçò - óôáèìò åîõðçñýôçóçò. ¼ðùò öáßíåôáé óôï ó Þìá 5.31, ï ðåëüôçò FTP ðñïóåããßæåôáé ìýóù ôïõ ëåéôïõñãéêïý óõóôþìáôïò ôïõ ôïðéêïý õðïëïãéóôþ åßôå
223 Êåöáëáéï 5: Áñ éôåêôïíéêç Äéêôõùí áðåõèåßáò åßôå ìå ôç âïþèåéá ìéáò åöáñìïãþò. Ôï ftp ðñïóöýñåé õðçñåóßåò ðïõ åðéôñýðïõí óôï ñþóôç íá äéá åéñéóôåß Ýíá óýóôçìá áñ åßùí ðïõ âñßóêåôáé óå Ýíáí áðïìáêñõóìýíï çëåêôñïíéê õðïëïãéóôþ. Áíáëõôéêôåñá, ï ñþóôçò ìðïñåß íá äåé ôç äïìþ ôïõ áðïìáêñõóìýíïõ óõóôþìáôïò áñ- åßùí, íá äéáãñüøåé, íá ìåôïíïìüóåé, íá äçìéïõñãþóåé, íá ìåôáöýñåé áñ åßá êáé ãåíéêü íá ñçóéìïðïéþóåé ëåò ôéò ëåéôïõñãßåò åíò óõóôþìáôïò áñ- åßùí. Ï ðåëüôçò FTP åðéôñýðåé óôï ñþóôç íá ïñßóåé ôç äïìþ ôùí áñ åßùí êáé ôïí ôýðï ôùí äåäïìýíùí ôá ïðïßá åìðëýêïíôáé óôéò ôõ í äéåñãáóßåò ôïõ. Ôñåéò ôýðïé äåäïìýíùí åßíáé óôç äéüèåóç ôïõ ñþóôç: äõáäéêü øçößá óôáèåñïý ìþêïõò, êåßìåíï (text ASCII êáé EBCDIC), Ó Þìá 5.31: Áñ éôåêôïíéêþ ðåëüôçò - óôáèìò åîõðçñýôçóçò FTP äõáäéêü øçößá ìåôáâëçôïý ìþêïõò. Íá óçìåéùèåß ôé óå Ýíáí áðïìáêñõóìýíï óôáèì åîõðçñýôçó çò áñ åßùí ìðïñïýí íá Ý ïõí ðñóâáóç ìýóù FTP ðåñéóóôåñïé ôïõ åíò ñþóôåò, ðùò Üëëùóôå öáßíåôáé êáé óôï ó Þìá 5.31. 5.6.3.4.3 Ðñùôêïëëï ìåôáöïñüò áðëïý ôá õäñïìåßïõ Ôï çëåêôñïíéê ôá õäñïìåßï, ãíùóôôåñï êáé ùò e-mail, åßíáé ç ðéï äéáäåäïìýíç õðçñåóßá ðïõ ðñïóöýñïõí ôá äßêôõá. Ôá ôïðéêü óõóôþìáôá çëåêôñïíéêïý ôá õäñïìåßïõ Ýêáíáí ôçí åìöüíéóþ ôïõò ôáõô ñïíá ìå ôçí åìöüíéóç ôùí äéêôýùí çëåêôñïíéêþí õðïëïãéóôþí. ¹ôáí èýìá ñíïõ íá åðåêôáèåß áõôþ ç õðçñåóßá êáé óôá äéáóõíäåäåìýíá äßêôõá. Ôï ðñùôêïëëï ìåôáöïñüò áðëïý ôá õäñïìåßïõ (SMTP: Simple Mail Transfer Protocol) åßíáé Ýíá ðñùôêïëëï ðïõ äéá åéñßæåôáé ôç ìåôáöïñü ôïõ çëåêôñïíéêïý ôá- õäñïìåßïõ óå áðïìáêñõóìýíïõò çëåêôñïíéêïýò õðïëïãéóôýò êáé äßêôõá. Íá óçìåéùèåß ôé ôï SMTP äå äéá åéñßæåôáé ôï çëåêôñïíéê ôá õäñïìåßï ñçóôþí ðïõ óõíäýïíôáé óå Ýíá ôïðéê äßêôõï, áöïý áõô åßíáé áñìïäéôçôá ôïõ ôïðéêïý óõóôþìáôïò çëåêôñïíéêïý ôá õäñïìåßïõ. Äéá åéñßæåôáé ìùò ôçí åîùôåñéêþ áëëçëïãñáößá ôïõ ôïðéêïý äéêôýïõ, óå óõ- Ó Þìá 5.32: Ó Ýóç SMTP êáé ôïðéêïý óõóôþìáôïò çëåêôñïíéêïý ôá õäñïìåßïõ
224 Tïìïò É, Åíïôçôá Â: Äéêôõá Åðéêïéíùíéáò Äåäïìåíùí íåñãáóßá ðüíôá ìå ôï ôïðéê óýóôçìá. Ç ó Ýóç ôïõ SMTP êáé ôïõ ôïðéêïý óõóôþìáôïò çëåêôñïíéêïý ôá õäñïìåßïõ öáßíåôáé óôï ó Þìá 5.32. Ï ôõðéêò ó åäéáóìò ôïõ çëåêôñïíéêïý ôá õäñïìåßïõ ðñïû ðïèýôåé ìéá ïõñü åéóäïõ, ìéá ïõñü åîäïõ, ìéá äéåðáöþ ìåôáîý ôïõ ôïðéêïý óõóôþì áôïò êáé ôïõ SMTP, êáèþò êáé ôçí áñ éôåêôïíéêþ ðåëüôçò - óôáèìò åîõðçñýôçóç ò ôïõ SMTP. Ï ðåëüôçò SMTP åßíáé õðåýèõíïò ãéá ôçí áðïóôïëþ ôçò áëëçëïãñáößáò, åíþ ï óôáèìò åîõðçñýôçóçò SMTP åßíáé õðåýèõíïò ãéá ôç ëþøç ôçò. Ôï ôïðéê óýóôçìá áëëçëïãñáößáò ðáñý åé ðüíôá óôï ñþóôç Ýíá êïõôß áëëçëïãñáößáò (mailbox), óôï ïðïßï ï ñþóôçò ìðïñåß íá áðïèçêåýóåé ôçí áëëçëïãñáößá ôïõ, áëëü êáé íá ôçí áíáêáëýóåé ïðïôåäþðïôå ôï åðéèõìþóåé. íá êïõôß áëëçëïãñáößáò áñáêôçñßæåôáé áð äýï ðåäßá, ôï ôïðéê ðåäßï (local çëåêôñïíéêïý ôá õäñïìåßïõ Ó Þìá 5.33: Äéåýèõíóç part) êáé ôï ãåíéê ðåäßï (global part). Ôï ðñþôï åßíáé óõíþèùò Ýíá íïìá ðïõ ðáñáðýìðåé óôï ñþóôç êáé åßíáé ìïíáäéê óôï ôïðéê óýóôçìá ôá õäñïìåßïõ. Ôï äåýôåñï ðáñáðýìðåé óôï íïìá ôïõ ïñãáíéóìïý óôïí ïðïßï áíþêåé ï ñþóôçò êáé åßíáé ìïíáäéê óå ëï ôï Äéáäßê ôõï. Ôá äýï ðåäßá ùñßæïíôáé ìå ôï óýìâïëï @. íá ðáñüäåéãìá äéåýèõíóçò çëåêôñïíéê ïý ôá õäñïìåßïõ öáßíåôáé óôï ó Þìá 5.33. Ïé óçìáíôéêôåñåò ëåéôïõñãßåò ôïõ SMTP åßíáé ïé åîþò: Ï êáèïñéóìò ôçò ìïñöþò (format) ôçò çëåêôñïíéêþò áëëçëïãñáößáò, þóôå íá äéáóöáëéóôåß ôé ç ìïñöþ åßíáé êáôáíïçôþ êáé áð ôá äýï ìýñç ðïõ åðéêïéíùíïýí. Ç ìåôáöïñü ôçò çëåêôñïíéêþò áëëçëïãñáößáò áð ôç ìßá äéüô áîç óôçí Üëëç. ¼óïí áöïñü ôç ìïñöþ, óþìåñá ñçóéìïðïéïýíôáé ðïëëü ðñïãñü ììáôá çëåêôñïíéêïý ôá õäñïìåßïõ. Åßíáé ðïëý óõ í öáéíìåíï äýï çëåêôñïí éêïß õðïëïãéóôýò ðïõ áíôáëëüóóïõí ìçíýìáôá áëëçëïãñáößáò íá ñçóéìïðïéïýí ä éáöïñåôéêýò åöáñìïãýò çëåêôñïíéêïý ôá õäñïìåßïõ. Ìåôáîý ôùí äýï åöáñìïãþí ô ï ñëï ôïõ ìåôáöñáóôþ ðáßæåé ôï SMTP, þóôå ôá ìçíýìáôá íá åßíáé êáôáíïçôü êáé óôéò äýï åöáñìïãý ò. Ç ìïñöþ ôïõ çëåêôñïíéêïý ôá õäñïìåßïõ áðáñôßæåôáé áð äý ï ìýñç, ôçí åðéêåöáëßäá (header) êáé ôï êõñßùò óþìá (body). Ôá äýï áõôü ìýñç áðïôåëïýíôáé áð Ýíá óýíïëï ãñáììþí êåéìýíïõ ASCII ìå ìéá êåíþ ãñáììþ åíäéüìåóá, þóôå íá îå ùñßæïõí. ÊÜèå ãñáììþ óôçí åðéêåöáëßäá ðåñéý åé ìéá ëýîç - êëåéäß (keyword), ðïõ áêïëïõèåßôáé áð ìéá óåéñü áëöáñéèìçôéêþí ìå ìéá äéðëþ ôåëåß á åíäéüìåóá, ãéá íá îå ùñßæïõí. ÊÜðïéåò ëýîåéò - êëåéäéü åßíáé õðï ñåùôéêýò, åíþ Üë ëåò åßíáé ðñïáéñåôéêýò. Ìéá ôõðéêþ åðéêåöáëßäá èá ìðïñïýóå íá áðïôåëåßôáé áð ôéò ðáñáêüôù ãñáììýò: TO: FROM: CC: ¼íïìá ðáñáëþðôç, ð.. tsili@aua.gr ¼íïìá áðïóôïëýá, ð.. alexiou@cti.gr Áíôßãñáöá óå Üëëïõò ðáñáëþðôåò
225 Êåöáëáéï 5: Áñ éôåêôïíéêç Äéêôõùí SUBJECT: DATE: Ôßôëïò ìçíýìáôïò Çìåñïìçíßá áðïóôïëþò Ôï êõñßùò óþìá ðåñéý åé ôï ìþíõìá ðïõ áðïóôýëëåôáé óôïí ð áñáëþðôç. Ç äåýôåñç ëåéôïõñãßá ôïõ SMTP åßíáé ç ìåôáöïñü ôïõ çëåêôñïíéêþò áëëçëïãñáößáò. Áð ôç óôéãìþ ðïõ ôï ìþíõìá åßíáé Ýôïéìï íá áðïóôáëåß óôïí ðáñáëþðôç, ôï ôïðéê óýóôçìá áëëçëïãñáößáò åëýã åé ôï íïìá ôïõ ðáñáëþ ðôç, ãéá íá äéáðéóôþóåé áí ðñêåéôáé ãéá êüðïéïí ôïðéê ç åîùôåñéê ñþóôç. Óô çí ðñþôç ðåñßðôùóç ç áëëçëïãñáößá äéåêðåñáéþíåôáé ìå ôç âïþèåéá ôïõ ôïðéêïý ó õóôþìáôïò, åíþ óôç äåýôåñç ðåñßðôùóç ôï ìþíõìá óôýëíåôáé óôçí ïõñü åîäïõ, ðñïê åéìýíïõ íá äéåêðåñáéùèåß áð ôïí SMTP ðåëüôç. 5.6.3.4.4 Õðçñåóßåò êáôáëãïõ Óå Ýíá ïðïéïäþðïôå ôçëåðéêïéíùíéáê óýóôçìá åßíáé áðáñáßôçôï íá õðüñ ïõí õðçñåóßåò êáôáëãïõ, ìå óêïð ôç äéåõêëõíóç ôçò åðéêïéíùíßáò ìåôáîý ôùí ñçóôþí. Ãéá ðáñüäåéãìá, óôçí ÅëëÜäá ïé ñþóôåò ôïõ ôçëåöùíéêïý óõ óôþìáôïò ñçóéìïðïéïýí ôéò õðçñåóßåò êáôáëãïõ, ôï ãíùóô 131, ãéá íá âñïõí ôï ôçëýöù íï êüðïéïõ óõíäñïìçôþ ìå ôïí ïðïßï èýëïõí íá åðéêïéíùíþóïõí. Áíôßóôïé á, ôï ìïíôýëï áíáöïñüò TCP/ IP Ý åé ôç äéêþ ôïõ õðçñåóßá êáôáëãïõ, ç ïðïßá åßíáé ãíùóôþ ùò óýóôçìá ïíïìáóßáò ðåñéï þí (DNS: Domain Name System). Ç áíôßóôïé ç õðçñåóßá óôï ìïíôýëï áíáöïñüò OSI ïíïìüæåôáé êáôüëïãïò.500. Ôï óýóôçìá ïíïìáóßáò ðåñéï þí õéïèåôþèçêå ôï 1984, ãéá íá áðï ôåëýóåé ôç óýìâáóç ïíïìáóßáò ôïõ Äéáäéêôýïõ ðïõ èá ñçóßìåõå ãéá ôçí áí ôéóôïß éóç äéåõèýíóåùí ÉÑ óå ïíìáôá óõóêåõþí. Ó åäéüóôçêå áð ôïí Paul Mockapetris êáé ðåñéãñüöåôáé ùò ìéá «éåñáñ éêþ êáé êáôáíåìçìýíç âüóç äåäïìýíùí ïíïìüô ùí». Ç éåñáñ éêþ äïìþ ôïõ DNS îåêéíü ìå ôç âáóéêþ ðåñéï Þ (root domain), ðïõ óõìâïëßæåôáé óõíþèùò ìå ìßá êïõêêßäá (.), ðùò öáßíåôáé óôçí áíåóôñáììýíç äåíäñïåé äþ äïìþ ôïõ ó Þìáôïò 5.34. ÊÜôù áð ôç âáóéêþ ðåñéï Þ õðüñ ïõí ïé ðåñéï Ýò áíþôáôïõ åðéðýäïõ (toplevel domains), óôéò ïðïßåò ðåñéëáìâüíïíôáé óþìåñá ïé áñ éêýò åðôü ðåñé ï Ýò áõôïý ôïõ åðéðýäïõ êáé ðåñéï Ýò ðïõ ðñïóôýèçêáí áñãôåñá, Ýôóé þóôå íá ìðïñïýí íá öéëïîåíçèïýí óôï Äéáäßêôõï äéüöïñåò ãåùãñáöéêýò ðåñéï Ýò. Ïé åðôü áñ éêýò ðåñéï Ýò áíþôáôïõ åðéðýäïõ Þôáí óáöýóôáôá ó åäéáóìýíåò ãé á ôéò Ç.Ð.Á. êáé åßíáé ïé áêëïõèåò:.com åìðïñéêïß (commercial) ïñãáíéóìïß, ðùò ç Hewlett-Packard (hp.com) êáé ç Microsoft (microsoft.com)..edu åêðáéäåõôéêïß (educational) ïñãáíéóìïß, ðùò ôï ÐáíåðéóôÞìéï Berkeley ôçò Êáëéöñíéá (berkeley.edu) êáé ôï ÐáíåðéóôÞìéï Stanford (stanford.edu)..gov êõâåñíçôéêýò (government) õðçñåóßåò, ðùò ôï Ãñáöåßï ôïõ ðñïýäñïõ ôùí Ç.Ð.Á. (whitehouse.gov)..mil óôñáôéùôéêýò (military) õðçñåóßåò, ðùò ôï Ãåíéê Åðéôåëåßï Íáõôéêïý ôùí
226 Tïìïò É, Åíïôçôá Â: Äéêôõá Åðéêïéíùíéáò Äåäïìåíùí Ç.Ð.Á. (navy.mil). Ó Þìá 5.34: Ç éåñáñ éêþ äïìþ ôïõ DNS.net ïñãáíéóìïß äéêôýùóçò (networking), ðùò ôï InterNIC (internic.net)..ïrg ìç åìðïñéêïß ïñãáíéóìïß (organizations), ðùò ç áìåñéêáíéêþ äçìóéá ñáäéïöùíßá National Public Radio (npr.org)..int äéåèíåßò (international) ïñãáíéóìïß, ðùò ôï ÍÁÔÏ (nato.int). Ïé ïíïìáóßåò ôùí äéüöïñùí ãåùãñáöéêþí ðåñéï þí ðïõ ðñïóô Ýèçêáí ó áõôýò ôéò ðåñéï Ýò áíþôáôïõ åðéðýäïõ áíôéóôïé ïýí óôéò äéåèíåßò ó õíôìþóåéò ôçò ïíïìáóßáò êüèå êñüôïõò, ðùò åßíáé ãéá ðáñüäåéãìá: gr ãéá ôçí ÅëëÜäá, uk ãéá ôç Âñåôáíßá, au ãéá ôçí Áõóôñáëßá ê.ï.ê. íá áð ôá ìåãüëá ðëåïíåêôþìáôá ôïõ DNS åßíáé ôé õëïðïéåßôáé óå êáôáíåìçìýíç âüóç äåäïìýíùí. Ðñêåéôáé ãéá ìéá óýìâáóç ïíïìáóßáò, ç ïðï ßá ìùò äåí åðéäý åôáé äõíáìéêýò áëëáãýò. Áõô óõíéóôü ôáõô ñïíá êáé ôï ìåã áëýôåñï ìåéïíýêôçìá ôïõ DNS, áöïý áðáéôåßôáé ðïëýò ñíïò ðñïêåéìýíïõ ïé åíçìåñþóåéò Þ ïé ìåôáâïëýò ôçò âüóçò äåäïìýíùí íá åíåñãïðïéçèïýí óôïõò êìâïõò ôïõ Ä éáäéêôýïõ. 5.6.3.4.5 Ðñùôêïëëï ìåôáöïñüò õðåñêåéìýíïõ ÓÞìåñá ãíùóôïß öõëëïìåôñçôýò åßíáé ïé Netscape 4.x ôçò Netscape êáé Internet Explorer 5.x ôçò Microsoft, åíþ õðüñ- ïõí êáé áñêåôïß Üëëïé ëéãôåñï ãíùóôïß. Ç áëìáôþäçò áíüðôõîç ôïõ Äéáäéêôýïõ ôá ôåëåõôáßá ñíéá ï öåßëåôáé êáôü êýñéï ëãï óôçí åõåëéîßá ôïõ, ç ïðïßá óå ìåãüëï âáèì åßíáé áðïôý ëåóìá ôçò ñþóçò ôïõ ðñùôïêëëïõ ìåôáöïñüò õðåñêåéìýíïõ (HTTP: HyperÔext Transfer Protocol). To ðñùôêïëëï áõô êáèïñßæåé ôïí ôñðï ìåôáöïñüò ôùí äåäïìý íùí õðåñêåéìýíïõ ìýóù ôùí äéêôýùí TCP/IP. Ôá äåäïìýíá õðåñêåéìýíïõ äéáìïñöþíïíôáé ìýóù ôçò ãëþóóáò ìïñöïðïßçóçò õðåñêåéìýíïõ (HTML: HyperÔext Markup Language). Ìéá óåëßäá õðåñêåéìýíïõ ìðïñåß íá Ý åé äåóìïýò (óõíäýóåéò) ìå Üëëåò óåëßäåò õðåñêåéìýíïõ, åðéôñýðïíôáò Ýôóé óôçí ßäéá óåëßäá íá ðåñéý åé ãñáöéêü, ê åßìåíï, áñ åßá Þ ïõ, âßíôåï êôë. ÅéäéêÜ ðñïãñüììáôá, ïé öõëëïìåôñçôýò ðáãêóìéïõ éóôïý (WEB-browsers), ñçóéìïðïéïýíôáé ìýóù ôïõ HTTP, þóôå íá ìðïñåß êáíåßò íá äåé HTML óåëßäåò.
227 Êåöáëáéï 5: Áñ éôåêôïíéêç Äéêôõùí ËÝîåéò ðïõ ðñýðåé íá èõìüìáé Ðñùôêïëëï åëýã ïõ ìåôáöïñüò / ðñùôêïëëï Äéáäéêôýïõ (TCP/IP), åðßðåäï ðñóâáóçò äéêôýïõ, åðßðåäï Äéáäéêôýïõ, åðßðåäï ìåôáöïñüò, åðßðåäï åöáñìïãþò, äéåýèõíóç IP, ìïíüäá äåäïìýíùí ðñùôïêëëïõ åöáñìïãþò, ðñùôêïëëï åîïìïßùóçò ôåñìáôéêïý (Telnet), ðñùôêïëëï ìåôáöïñüò áñ åßùí (FTP), ðñùôêïëëï ìåôáöïñüò áðëïý ôá õäñïìåßïõ (SMTP), õðçñåóßåò êáôáëãïõ, óýóôçìá ïíïìáóßáò ðåñéï þí (DNS), ðñùôêïëëï ìåôáöïñüò õðåñêåéìýíïõ (HTTP), äåóìò, ãëþóóá ìïñöïðïßçóçò õðåñêåéìýíïõ (HTML).