Главная страница
Контакты

    Басты бет


Зертханалық жұмыс №5, 6 Тақырыбы: tcp/ip хаттамалар комплекстерімен жұмыс

жүктеу 104.31 Kb.



жүктеу 104.31 Kb.
Дата08.04.2017
өлшемі104.31 Kb.

Зертханалық жұмыс №5, 6 Тақырыбы: tcp/ip хаттамалар комплекстерімен жұмыс



www.testent.ru

Зертханалық жұмыс №5, 6

Тақырыбы: TCP/IP хаттамалар комплекстерімен жұмыс 

Жұмыстың мақсаты: транспортты Интернет хаттамаларымен жұмыс жасау принциптерін, қосалқы бағдарламаларды құруды үйрену.
Қағида немесе принцип (лат. principim – принцип; негіз, алғы бастама) - белгілі білім жүйесінің түп-негізі, алғы бастамасы, абстрактылы түрдегі ең қысқа жалпылама мазмұны. Ғылыми танымда идея, теория, әдіс сияқты таным түрлерімен өзара байланыста тұжырымдалады.
Мақсат - белгілі бір межеге қол жеткізуге бағытталған әрекеттің ой-санадағы көрінісі. Мақсат ойлау нәтижесінде болашақты алдын ала болжау арқылы туатын мұрат, ішкі қозғаушы күшті білдіреді. Мақсатқа жету үшін әр түрлі іс-әрекеттер мен қимылдар жасалады.


Теориялық бөлім. Интернет желісінің ТСР транспорттық хаттамалары

TCP (Transmission Control Protocol) – бұл транспорттық деңгейдің ең кеңінен таратылған түрі.

ДЕҢГЕЙ (Уровень; layer, level) - абстракциялы дерексіздік дәреже; иерархиялық құрылым қабаты; осы желімен орындалатын белгілі бір мәселелер кешенін сипаттайтын есептеуіш желі қүрылымының логикалық қабаты,
ТСР ең маңызды функциясына бұрыннан қолданылып келе жатқан IP (Internet Protocol) хаттамасымен салыстырғанда, мәліметтерді жоғалтпай жеткізуі болып саналады.
Мәліметтер (данные; data) - автоматты құралдардың көмегімен, кей жағдайда адамның қатысуымен, өңдеуге I ыңғайлы түрде берілген мағлұмат. Мәліметтердің кірістік, шығыстық, басқару, проблемалық, сандық, мәтіндік, графикалық және т.б.
Хабарламаны жеткізу үшін процесс – жіберуші мен процесс – алушының арасын алдын – ала жалғайды.
Хабарлама (Донесение) - жоғары тұрған командирге (бастыққа, штабқа) белгілі бір мәліметтерді хабарлау мақсатына арналған жауынгерлік немесе қызметтік есеп-ақпарат құжаты. Соғыс жағдайында төмендегідей хабарламалар даярланады: жауынгерлік, барлау, байланыс бойынша, инженерлік және химиялық қамтамасыз ету, тыл бойынша және басқа.
Бұл құрылған жалғау дейтаграмманың нақты түрде жетуін қамтамасыз етеді. ТСР хаттамасының бүлінген немесе жоғалған пакеттерді қайталап жіберу мүмкіндігі бар.

Хабарламаның нақты түрде жеткізілуіне белгіленген функциялар өңдеушілерді қосалқы бағдарламалардан және дейтаграмманы басқару амалдарынан босатады. Хаттама жіберуші мен алушы арасында мәліметтер жіберілуін қамтамасыз етеді. ТСР жалғауды қондыруға бағытталған болғандықтан, дейтаграмманы алған адресат жіберушіге алғаедығы туралы хабар беруі керек.

Бағыттау (орыс. наведение) - күштерге (сүңгуір қайықтарға, авиациялык ұшу аппараттарына) немесе қаруға (ракеталарға) козғалыс параметрлері (бағыт, жылдамдық, биіктік жөне т.б.) арқылы берілетін басқару тәсілі.
Жалпы жіберуші мен алушы арасында виртуальды канал қондырылады, ол жерде олар хабарламамен алмасады және алғандығы туралы хабар жіберіледі.

Мәліметтерді алмасу процесі машина – жіберуші және машина – алушы арасында жалғауды қондыру сұранысынан басталады. Бұл сұраныста арнайы бүтін саны болады, оны біз сокет номері деп атаймыз. Ал жауабына алушы өз сокетінің номерін жібереді. Жіберуші мен алушының сокеттерінің номері жалғауды анықтайды (былай айтқанда, жалғау жіберуші мен алушының IP-адресісіз орындалмайды, бірақ та бұл тек төменгі деңгейлі хаттамаларға қатысты).

ТСР жалғауын қондырғаннан кейін хабарламаның сегменттері жіберіліп бастайды. Жіберушінің төменгі деңгейлі IP-адресінде сегменттер бір немесе бірнеше дейтаграммаларға бөліне бастайды.

Сегмент (segment) жедел жадтағы бірін-бірі жабатын бір деңгейдің тармақтарының оверлейлік құрылымды программадағы тобының бірі; теле-өндеуде - буферде орналасатын хабардың бөлігі; жазба немесе жазбаның бөлігі.
Желіні өте келе, дейтаграммалар алушыға келіп түседі, содан IP деңгейі олардан қайтадан сегмент жинақтап ТСР береді. ТСР барлық сегменттерді бір хабарламаға жинақтап отырады. ТСР – дан процесс – алушыға хаттамалардың қада жиналатыны туралы хабарлдама жіберіліп отырады.

ТСР машина – алушыда номері бойынша бүкіл сегменттерді бір хабарламаға жинақтайды. Егер қандайда бір хабарлама сегменті жоғалған немесе бүлінген болса, жіберушіге қате кеткен сегменттің номері жіберіледі. Бұндай жағдайда жіберуші сегментті қайта жіберуіне тура келеді.

Жағдай - адам әрекетінің , жан-жануарлар тіршілігінің, табиғат пен қоғамдағы өзгерістің, оқиғаның, т.б. айналадағы ортаның ықпалына тәуелділігін білдіретін философиялық ұғым. Табиғаттағы, қоғамдағы белгілі бір өзгерісті тудырушы алғышарт есебінде де қарастырылады.
Егер де сегмент дұрыс қабылданған болса, онда алушы анықтаушы – квитанциясын жібереді (ACK - acknowledgement).

Таймер ТСР хаттамасында ең маңызды рольді атқарады. Егер де белгіленген уақыт ішінде анықтаушы – квитанциясы келіп түспеген болса, онда сегмент жоғалтылған болып саналады. Бұндай жағдайда сегментті қайта жіберу процесі орындалады.

Порттар номерлері мен сокеттер

ТСР қолоданылатын қосымшасы (процесс) номер порты – санымен анықталады.

Порт (француз тілінде port, латын тілінде portus - гавань, айлақ) - 1) су толқындарынан табиғи не жасанды тосқауылдармен қорғалған, кемелердің аялдауына, оларға әр түрлі қызмет көрсетуге, жолаушылар мен жүк тасымалын қамтамасыз етуге арналып салынған теңіз, өзен, көл не су бөгені жағалауының сумен шектескен бөлігі.
Бұрыннан әйгілі желі қызметтерінің порттар номерлері 4 кестеде көрсетілген.



1 – кесте. Internet желісінің кеңінен қолданылатын порттар номерлері.


Порт номері

Желі қызметі

Сипаттау

0

 

Резервтелген

7

echo

Келген хабарламаға жауап - эхо

9

discard

Бүкіл келген хабарламалар лақтыру (жою)

11

users

Белсенді қолданушылар

13

daytime

Күннің уақытын туралы мәліметтерОтклик

19

chargen

Символдар генераторы

20

ftp data

FTP хаттамалары арқылы мәліметтерді жіберу

21

ftp

FTP хаттамасы арқылы басқарушы командаларын жіберу

23

telnet

TELNET хаттамасы арқылы портты қосу

25

smtp

SMTP почталық хабарламалаырн жіберу хаттамалары

37

time

Уақытты қамтитын отклик

42

name

Аттар сервері

43

whois

Бұл кім

53

domain

Домендер аттары серверлері

67

boots

Жоғалған серверді енгізу хаттамасы

68

bootc

Жоғалған клиентті енгізу хаттамасы

69

tftp

TFTP файлдарын жіберудің жеңілдетілген хаттамасы

79

finger

FINGER қолданушылары туралы мәліметтер алу хаттамасы

80

http

HTTP гипертекстін жіберу хаттамасы

109

pop2

POP2 почталық жәшігінің хаттамасы

110

pop3

POP3 почталық жәшігінің хаттамасы

111

rpc

RPC жоғалған процедуралар хаттамасы

156

sqlserv

SQL қызметі

161

snmp

SNMP басқарушы хаттамасы

TCP хаттамасының хабарландыру форматындағы порт номері астына 16 бит апарылады, сондықтан порттың максималды мүмкіндікті номері 65535 болып табылады. 0 – ден 255 – ке дейінгі порттардың номерлері жүйелік қажеттіліктерге қатаң резервтеген, оларды қолданбалы бағдарламаларда пайдалануға рұқсат етілмейді.

Қолданбалы бағдарлама(Прикладная программа; application program) - 1) пайдаланушының қолданбалы мәселелерді шешуге арналған программасы; жұмыс істеуші адамның нақты тапсырмасын орындайтын дестелік файлдағы программа.
256 – дан 1023 – ке дейінгі аралықта көптеген порттарда желілік қызметтермен пайдаланылады, сондықтан оларды да қолданбалы қажеттіліктерге пайдалануға рұқсат етілмейді. Ереже бойынша TCP/IP негізіндегі бөтен көптеген қолданбалы қосалқы анықтауыштар порт номерлерін 1024 - тен 5000 – ға дейінгі диапазонында пайдаланады. 3000 – нан 5000 – ға дейінгі номерлерді пайдалану ұсынылады, 5000 – нан жоғары номерлері көбінесе қысқа мерзімдік қолданулар үшін пайдаланылады.

TCP – дегі кез – келген байланыс каналдары екі санмен анықталынады – бұл косбинация сокет деп аталады. Осылайша сокет ЭЕМ – де IP-адресімен және TCP – дегі бағдарламалық қамсыздандыру арқылы порт номерімен анықталады. Қосылу кезінде кез – келген машина бір мағынады IP-адресімен анықталады, ал әрбір процесс – портпен анықталады, сондықтан екі процестер арасындағы қосылыстар бір мағынада сокетпен анықталынады. Желідегі үш ЭЕМ арасындағы TCP хаттамасы бойынша қосылыстардың орналасу схемасы 6 – суретте бейнеленген.

Өзара әрекеттесуші ЭЕМ барлық активті порттардың жіберушілерінің және алушыларының кестелерін жүргізеді. Егер екі машиналар аракестелерін жүргізеді. Егер екі машиналар арасында мәліметтер алмасуы жүрсе, онда олардың бірінің порты жіберуші, екіншісі алушы немесе керісінше болып келеді. Егер жіберуші машина бірнеше қосылуларды сұраса, онда олардың әрбірінің өздерінің жіберуші порты болады, ал алушының порты жалпы болуы мүмкін. Бірнеше машина бір уақытта бір алу – порты пайдалануы мүмкін, бұл мультипликсерлеу деп аталады. 6 – суретте екі қосылулардың мультипликсерленуі ЭЕМ3 – те 23 номер порты бойынша орындалады.

Қашанда бірнеше қосылулар орнатылса, онда бірдей порт көздері және алушылары көрсетілген қосылуларға бірнеше машиналар сұраныс жібереді.

UDP хабарларын беру хаттамасы.
UDP (User Datagram Protocol) хаттамасы TCP хаттамасына қарағанда өте қарапайым транспорттық хаттама болып келеді. UDP хаттамасы дейтаграмманы жеткізіп беруді қамтамасыз етеді, бірақ оларды дәлелдер алуды талап етпейді.

UDP хаттамасы мәліметтерді қосылуларды орнатусыз – ақ жеткізіп беру талап етілген жағдайларда пайдаланады. Мұндай байланыс негізінде сенімсіз, өйткені оның хабарлары дұрыс қабылданды ма және ол ол тіпті алындыма, сол туралы жіберушіге хабарланбайды. Қателердің туындауын тексеру үшін пакеттің бақылау сомасы пайдаланылады, бірақ қателіктер ешқандай өңделінбейді – олар немесе жойылады немесе олардың өңделінуі өте жоғары қолданбалы деңгейде орындалады.

UDP арқылы қолданбалы процеспен жіберілетін мәліметтер бөлшектерге бөлінбей, белгіленген орынға бір бүтін секілді жетеді. Мысалы, егер жіберуші – процесс порт арқылы бес хабарлама берсе, онда алушы – процесс порттан бес хабарды есептеуі қажет. Әрбір жазылған хабарлар көлемі әрбір оқылғандардың көлемімен сәйкес келуі қажет.

UDP хаттамасы мәліметтерді берудің қарапайым механизмі қажет болған жағдайда ғана пайдаланылады. Сонда қате бақылауы немесе орындалмайды (мысалы, TFTP - Trivial File Transfer Protocol – қолданбалы хаттамасы – файлдарды берудің қарапайым хаттамасы) немесе қолданбалы деңгейде орындалады (мысалы, SNMP - Simple Network Management Protocol басқарушы хаттамасында немесе NFS - Network File System файлдық жүйеде пайдаланады).

Файл (ағылш. File) - дерек сақтаудың негізгі бірлігі болып табылады.
Механизм (гр. mehane - құрал, мәшине) - бір немесе бірнеше қатты денелерді басқа қатты денелер арқылы қажетті қозғалысқа келтіретін денелер жүйесі. Механизм құрылымдық белгілері бойынша топсалы (иінтіректі), бағдартқышты, тісті, сыналы, бұрамалы, ыңғайландырғыш, арнайы, шыбық қысқыш, иілгіш буынды, гидравликалық, пневматикалық және электрлі құрылғылары бар және т.б.
FTP (ағылш. File Transfer Protocol - файл апарғызу хаттамасы) - компьютерлік желі арқылы файл алмасуға арналған хаттама.


Транспорттық хаттама негізінде мәліметтермен алмасу бағдарламасы.
TCP тек төменде жатқан деңгейдің хаттамаларымен ғана емес, сонымен қатар қолданбалы деңгейдің хаттамаларымен және қосалқы анықтауышымен де өзара әрекеттесуі қажет. Қолданбалы деңгеймен байланыс сервистік қарапайымдар жинағы көмегімен жүзеге асырылады. Сервистік қарапайымдар хаттама стандартында анықталынады, ал қолданбалы бағдарлама үшін олар сокеттермен жұмыс кітапханасы формасында жеткілікті.
Форма (Қалып; form) - 1) мәліметтерді ұсыну тәсілі; 2) мәліметтер базасын басқару жүйелеріңде (мысалы, Access-Te) - мәліметтер базасындағы ақпаратты (мәліметтерді) енгізу мен редакциялауға пайдаланылатын дисплей экранына көрнекі түрде ұсыну тәсілі.
Кітапхана Кітапхана - мәдени-ағартушылық мекеме. Кітапхана баспасөз шығармаларын жинау, сақтау, насихаттаумен, оқырмандарға баспасөз шығармаларын берумен, мәдени-ағарту және ғылыми-көпшілік жұмыстарын ұйымдастырумен шұғылданады.

Қосылуларды орнықтыру кезінде жақтардың немесе тараптардың әрбірі ашық қосылулар деп аталатын кейбір операцияларды орындайды. Ашықтар пассивті немесе активті болуы мүмкін. Ереже юойынша жақтардың бірі қосылулардың активтік ашылуын, ал екіншісі – пассивтік ашылуын жүргізеді, сонда қосылулар орындалады. Екі режимдер де нақты ережеге бағынады. Пассивтік қосылуларды кейде серверлік деп, ал активтікті – клиенттік деп атайды.

Сервер Сервер (ағылш. server) - файлдар, қалталар және компьютерлердің деректері сияқты деректерге ортақ қатынасуды, сондай-ақ желі пайдаланушыларына электрондық пошта қызметтерін қамтамасыз ететін компьютер.

Активтік қосылулар кезінде қолданбалы деңгейдегі процесс ТСР – дің бағдарламалық қамсыздандырылуын сол ЭЕМ – ге сұраныстың сервистік қарапайымдылығына сокет номерімен қосылуды орнатуға береді. Содан кейін ТСР алушыға қосылуды орнатуға сұраныс жібереді және жауабын күтеді. Қосылулар орындалғаннан кейін активтік пройесс (клиент) мәліметтердің берілуін және қабылдануын ынталандырады.

Пассивтік қосылулар кезінде қолданбалы бағдарлама ТСР – дің бағдарламалық қамсыздандыруын жойылған жүйеден қосылуға сұранысты күту режиміне ауыстырады. Сұраныс қашан келіп түссе, ТСР – дің бағдарламалық қамсыздандырылуы қосылуды орнатуды жүзеге асырады, содан кейін пассивтік процесс (сервер) мәліметтерді қабылдауға және беруге дайын болады.

Сокеттердің бағдарламалық интерфейсі ОЖ UNIX үшін жасақталынды.

Интерфейс (Interface-inter-өзара, і face-бет жағы) - 1) программалаушылардың кәсіптік тілінде - өзара әрекеттесу "жазықтығы", пайдаланушы мен компьютердің қарым-қатынасы, яғни екі жүйенің немесе адам мен компьютердің өзара мәліметтер алмасуын жасақтайтын аппараттық-программалық құралдардың жиынтығы; 2) есептеуіш жүйе құрылғыларының не (немесе) программалардың өзара әсерлесуін жасақтайтын құралдар мен ережелер жиынтығы; есептеуіш жүйедегі құрылғыларды үйлестіру немесе жүйелер арасында үйлестіруге пайдаланылатын үйлестіргіш техникалық және программалық құралдар жиынтығы; жүйелердің, құрылғылардың немесе программалардың екі арасын бөлу шекарасы; екі қызметтік құрылғының және олардың қосылу, алмасу сигналдары және т.б. сипаттамаларымен анықталған шекарасы; 3) ішкі программаға басқаруды беру мен бастапқы программаға қайту процедурасы туралы сипаттамалар мен келісімдер жиынтығы.
Бұл интерфейсті сақтап тұрушы функция кітапханасы UNIX және LINUX типті барлық ОЖ ядроларына кіреді. Дегенмен бұл бағдарламалық интерфейстермен жұмыс принциптері TCP/IP сақтап тұрушы жұмыс принциптері TCP/IP сақтап тұрушы.

ОЖ – тің көпшіліктеріәнде қолданылады. ТСР хаттамасы үшін пассивтік (сервер жағында) қосылулар сокетпен бірге келесі функцияларды орындалуға әкеледі:



  • Сокет жасау және оны (ОЖ – те UNIX типінде socket функциясында) типінде орнату;

  • Нақты бір қосылуға сокетті ретке келтіру (порттың адресін және номерін көрсетеді – ОЖ – те UNIX типті функция bind);

  • Коиенттердің кезегін жасау (ОЖ – те UNIX типті функция listen);

  • Сокетпен қосуға келетін сұранысты күту (ОЖ – те UNIX типті функция accept);

  • Клиентпен мәліметті қабылдау және беру (ОЖ – те UNIX типті – функциялары read, write, send, recv және олардың модификациялары);

  • Коиентпен жабық қосылулар (ОЖ – те UNIX типті – функция close);

Қосылуға ендіруші сұраныс алып сервер бір уақытта екі есептерді шешуі қажет: қолданбалы хаттамамен сәйкес қосылуды коиентпен орнатуды қамтамасыз ету (мәліметтерді клиентке беру және қабылдау) және басқа клиенттерден қосылуға жаңа сұраныстардың келіп түсуін күту. Әдетте дамыған ОЖ – те бұл проблема бірнеше процестердің параллельдік орындалу мүмкіндігінің арқасында шешіледі. ОЖ – те UNIX типінде жаңа процесті жасау fork фуекциясының көмегімен шешіледі, бұл кезде жаңадан құрылған процеспен негізгі процесте жасалынған барлық қосымшалар сақталынады.

ТСР хаттамасы үшін сокетпен активтік (клиенттер жағында) қосылулар келесі функциялардың орындалуына әкеледі:



  • сокет жасау және оның типін анықтау (ОЖ – те UNIX типте функция socket);

  • сервермен қосылуды орнату (порттың адресімен номерін көрсетеді – ОЖ – те UNIX типті функция connect);

  • мәліметтерді қабылдау және беру (ОЖ – та UNIX типті – функциялар read, write, send, recv және олардың модификациялары); сервермен қосылудың жабылуы (ОЖ – де UNIX типті – функция close);

Жұмыстың жүргізу тәртібі:



  1. Мұғаліммен тапсырма вариантын алы;

  2. Тапсырмаға сәйкес қолданбалы бағдарламаны жасақтау;

  3. Есепті дайындау және қорғау;

  4. ЭЕМ – ге бағдарламаны жазу және реттеу;

  5. Оқытушыға жұмыс жасап тұрған бағдарламаны тапсыру;

Жұмыс бойынша есепті рәсімдеу:

1. Берілген хаттама негізінде сыртқы дүниемен қолданбалы бағдарламаның өзара әрекеттесу алгоритмін жазу;

2. Пайдаланатын кластардың тізімі, олардың қасиеттері және ОЖ функциясы немесе өзара әрекеттесу хаттамасын ұйымдастыру үшін жасақтау ортасы;


Өзіндік тексеру үшін сұрақтар:

  1. Интернет делісінде ТСР – дің транспорттық хаттамасы қандай роль атқарады? Транспорттық деңгейдегі хаттамалардың белгіленуі туралы айтып ьерің.

  2. ТСР хаттамасы бойынша Интернет желісінде хабарларды беру қалай жүретінін айтып берің.
    Алгоритм, алгорифм (ағылшынша: algorіthm, algorіsmus - Әл-Хорезмидің атынан шыққан) - бастапқы берілген мәліметтермен бір мәнде анықталатын нәтиже алу үшін қай амалды (жұмысты) қандай ретпен орындау қажеттігін белгілейтін есептерді (мәселелерді) шешу (математикалық есеп-қисаптар орындау, техникалық объектілерді жобалау, ғылыми-зерттеу жұмысын жүргізу т.б.)
    Интернет Интернет (оқылуы [интэрнэ́т]; ағылш. Internet - International Network) - компьютерлік серверлердің бүкіләлемдік желісі.


  3. Жылжымалы терезе дегеніміз не? Хабарлар сегменттерінің жылжымалы терезесінен ТСР хаттамасының жұмыс принциптері туралы айтып берің.

  4. Сокет дегеніміз не? ТСР хаттамасының қандай параметрлері әрбір қосылысты бір мағынада теңестіруге мүмкіндік береді.

  5. Интернет желісінде қолданбалы бағдарламасы үшін қандай принципте порт номерлері таңдалынады. Желінің ең көп тұтынылатын қолданбалы қызметінің порттарының номерлерін атаңдар.

  6. ТСР хаттамасы бойынша екі ЭЕМ арасындағы қосылу кезінде жіберушінің және алушының порттарының номерлерінің бір – біріне сәйкес келтіндігін түсіндірің. Порттарды мультипликсерлеу дегеніміз не?

  7. UDP хабарларын берудің хаттамасының жұмыс принциптері туралы айтып берің. Оның ТСР хаттамасынан айырмашылығы неде?

  8. Рing и traceroute утилиттері қандай мақсаттар үшін қызмет етеді? Олардың жұмыс принциптер туралы айтып берің.

  9. Активтік және пассивтік қосылыстар дегеніміз не? Олардың айырмашылығы неде?

  10. Пассивтік қосылуларды орнату үшін әрекеттің қандай типтік тізбектелуін орындауды айтып ьерің.

  11. ОЖ астында UNIX типінде кітапханада сокетпен жұмыс функциясы қалай таралған?

  12. Borland және Microsoft жасау ортасында сокетпен жұмыс функциясын таратады?
    Microsoft Corporation (/maɪkrəˌsɒft/) - дүниежүзіндегі ең ірі компаниялардың бірі. Бағдарламалық қамсыздандыру өндірісінің және сервер мен жеке компьютерлер үшін интернет технологияларды құруы мен қызметін көрсететін АҚШ-та тіркелген көпұлтаралық компания.


  • Теориялық бөлім.
  • Порттар номерлері мен сокеттер
  • UDP хабарларын беру хаттамасы.
  • Транспорттық хаттама негізінде мәліметтермен алмасу бағдарламасы.

  • жүктеу 104.31 Kb.