77771450 seminarska rabota km2

23
СЕМИНАРСКА РАБОТА по предметот Компјутерски мрежи 2 Наслов на трудот: Мрежни и интернет протоколи со осврт на FTP & TFTP протокол студент: Александар Анѓелески

Upload: daniel-paskov

Post on 13-Apr-2015

145 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: 77771450 Seminarska Rabota KM2

СЕМИНАРСКА РАБОТАпо предметот

Компјутерски мрежи 2

Наслов на трудот:

Мрежни и интернет протоколи со осврт

на FTP & TFTP протокол

студент: Александар Анѓелески

МИТ Универзитет, 2011

Page 2: 77771450 Seminarska Rabota KM2

Мрежни и интернет протоколи со осврт на TCP протокол TCP/IP моделот е развиен пред ISO-OSI моделот. Затоа нивоата во TCP/IP моделот не се

поклопуваат егзактно со тие во OSI моделот. Оригиналниот TCP/IP протокол е

дефиниран преку четири нивоа: host to network, internet, transport and application.

TCP/IP е хиерархиски модел, составен од интерактивни модули такашто секој од нив

обезбедува специфична функционалност. OSI моделот специфицира која функција

припаѓа на кое ниво. Нивоата од TCP/IP протоколот содржат релативно независни

протоколи кои можат да бидат комбинирани во зависност од потребите на системот.

Терминот хиерархиски, кај TCP/IP протоколот значи дека секој протокол на погорно ниво

е поддржан од еден или повеќе протоколи на пониско ниво.

1. Мрежни и интернет протоколи

1.1.На Апликативно ниво, TCP/IP ги содржи овие протоколи:

HTTP – Hyper Text Transfer Protocol (протокол за пренос на хипертекст, слики, аудио,

видео, јава аплети и други типови од HTTP сервер до HTTP клиент (browser))

FTP – File Transfer Protocol (протокол за трансфер на фајлови од еден на друг компјутер)

POP – Post Office Protocol (протокол за примање email пораки од email сервер)

IMAP – Internet Message Access Protocol (протокол за примање email пораки од email

сервер)

SMTP – Simple Mail Transfer Protocol (протокол за пренос на email пораки преку Интернет.

Mail серверите го употребуваат SMTP и за праќање и за примање пораки, додека

корисничките клиенти за примање пораки користат POP или IMAP протокол.

SIP – Session Initiation Protocol (протокол за сигнализација при гласовна и видео

комуникација преку Интернет)

RTP – Real Time Protocol (протокол за пренос на аудио и видео преку Интернет. Потокот

на информации, носен со RTP протокол е контролиран од сигнализациони протоколи)

DNS – Domain Name System (протокол за транслација на домените во IP адреси)

IRC – Internet Relay Chat (протокол за праќање и примање текст пораки во реално време)

NTP – Nerwork Time Protocol (протокол за синхронизација на времето преку packet

switched мрежи)

2

Page 3: 77771450 Seminarska Rabota KM2

SSH – Secure Shell (протокол за размена на податоци преку криптиран канал помеѓу

мрежни уреди. Примарно се употребува за пристап до shell акаунти на Linux и Unix)

TLS/SSL – Transport Layer Security/Secure Socket Layer (криптографски протоколи кои

обезбедуваат сигурна комуникација преку интернет. HTTPS е HTTP преку SSL)

SOAP – Simple Object Access Protocol (протокол за размена на структурни информации

при имплементација на WEB сервиси. Тоа e XML базиран протокол. Пр. Комуникација со

програма на истиот или друг оперативен систем преку HTTP и XML).

Telnet – протокол за бидирекциона комуникација помеѓу два мрежни уреди. Најчесто се

употребува за воспоставување на command line interface на далечен компјутер.

Комуникацијата не е криптирана.

1.2.Транспортно ниво

Транспортното ниво е одговорно за процес-процес испорака на пораки, каде процес е

апликативна програма која е стартувана на компјутер. Транспортното ниво обезбедува

целосно пристигнување на пораките од изворот кон дестинацијата.

Испорака од извор кон дестинација не значи само испорака од еден компјутер на друг,

туку и испорака од специфичен процес од еден компјутер на специфичен процес од

другиот компјутер. За таа цел транспортното ниво мора да додаде во хедерот тип на

адреса наречена service point address во OSI моделот или порт број со терминологијата на

TCP/IP.Протоколите на транспортното ниво може да бидат: connectionless и connection

oriented.Connectionless транспортните протоколи не воспоставуваат конекција помеѓу

праќачот и примачот пред преносот на податоци. Connectionless транспортните протоколи

секој сегмент го третираат како независен пакет и го испорачуваат на транспорт нивото на

машината која прима. Connectionless протокол е UDP.Конекциски ориентираните

транспорт протоколи, прво прават конекција помеѓу транспорт нивото на машината која

праќа и транспорт нивото на машината која прима податоци, пред да почне трансмисијата

на податоци. По завршување на трансферот, конекцијата се затвара. Конекциски

ориентирани протоколи на транспортно ниво се: TCP и SCTP.

На транспортно ниво TCP/IP ги дефинира овие протоколи:

TCP – Transmission Control Protocol

UDP – User Datagram Protocol

3

Page 4: 77771450 Seminarska Rabota KM2

SCTP – Stream Control Transmission Protocol

TCP - Transmission Control Protocol

TCP – Transmission Control Protocol (TCP е доверлив транспортен протокол на податоци.

Тој е конекциски ориентиран: конекцијата мора да биде воспоставена помеѓу двата краја

пред да започне трансферот на податоци). На страната на праќање, TCP го дели потокот

на податоци во мали единици наречени сегменти. Секој сегмент содржи број на секвенца,

кој се користи за подредување на страната на примање. Сегментите се пренесуваат преку

Интернет во IP datagrams. На страната на примање, TCP ги собира сите датаграми и ги

подредува според бројот на секвенците. Дуплираните сегменти се детектираат и отфрлаат,

изгубените и оштетените сегменти повторно се праќаат. Бидејќи праќањето и примањето

на податоци може да е со различна брзина, потребни се бафери. Има бафер за праќање и

бафер за примање податоци, кои не мора да бидат со иста големина. TCP обезбедува full

duplex комуникација.

TCP - Transmission Control Protocol обезбедува:

Flow Control. Примачот на податоци ја контролира количината на податоци кои треба да

бидат пратени од праќачот. Ова се прави за да се спречи примачот да биде претрупан со

податоци.

Error Control. За да обезбеди доверлив пренос, TCP имплементира механизам за контрола

на грешки. Контролата на грешки вклучува механизми за детекција на оштетени сегменти,

изгубени сегменти, неподредени сегменти и дупли сегменти. Контролата на грешки

вклучува и механизми за корекција на грешките по детекцијата.

Congestion control. Контрола на застој, натрупување. TCP употребува повеќе механизими

за да избегне натрупување или застој. Главен фокус на Congestion control е сообраќајот на

податоци. Се настојува да се обезбеди превенција од застој на сообраќајот на податоци.

Застој или натрупување на мрежата се случува ако бројот на пакети пратени на мрежата е

поголем од капацитетот на мрежата (број на пакети во одредено време кои мрежата може

да ги прифати)

4

Page 5: 77771450 Seminarska Rabota KM2

UDP-User Datagram Protocol

UDP – User Datagram Protocol. Ова е connectionless недоверлив протокол кој обезбедува

процес-процес комуникација. Обезбедува многу лимитирана проверка од грешки. Покрај

недостатоците има и свои предности. Тоа е многу едноставен протокол, бара многу

помала интеракција меѓу праќачот и примачот одколку TCP или SCTP. Ако процесот

праќа мала порака и нема потреба за доверливост може да се употреби UDP. Не се

воспоставува конекција помеѓу праќачот и примачот и нема терминација на конекцијата.

User датаграмите не се нумерирани, и секој од нив може да патува по различни патишта.

Контролата на грешки е сведена на checksum. UDP протоколот се употребува во следниве

случаи:

UDP е погоден за едноставна request-response комуникација со мала потреба од контрола

на проток и грешки.

UDP е погоден за трансфери каде има интерни контроли на проток и грешки како TFTP.

Trivial File Transfer Protocol вклучува механизми за контрола на проток и грешки.

UDP е погоден протокол за multicasting. Multicasting е технологија на испорака на

информации до група на дестинации симултано. Multicasting особините се вградени во

UDP а не и во TCP.

UDP се употребува за менаџмент процеси како SNMP

UDP се употребува за некои протоколи за ажурирање на рути како RIP – Routing Informa-

tion Protocol

SCTP – Stream Control Transmission Protocol

SCTP е нов доверлив порака-ориентиран протокол, на транспортно ниво. Ги комбинира

најдобрите особини на UDP и TCP. Има контрола на грешки каде ги детектира изгубените

податоци, дуплираните податоци неподредените податоци и оштетените податоци. Има

механизми за контрола на проток и контрола на натрупување (congestion). Дозволува

multistream во секоја конекција што со терминологија на SCTP се вика association.

Multistream претставува поставување на повеќе потоци за трансмисија на податоци меѓу

праќачот и примачот. Ако некој поток е блокиран, другите сеуште ќе пренесуваат

податоци. SCTP обезбедува full-duplex комуникација.

5

Page 6: 77771450 Seminarska Rabota KM2

SCTP – Stream Control Transmission Protocol обезбедува:

Flow control. Имплементира контрола на проток за да избегне пренатрупување на

примачот.

Error control. SCTP e доверлив протокол, имплементира механизми за контрола на грешки.

Congestion control. Имплементира контрола на натрупување за да одреди колку податоци

да инјектира во мрежата.

Network layer – мрежно ниво

На мрежно ниво ги имаме протоколите :IP (IPv4, IPv6) , ARP , RARP ,ICMP ,IGMP

IP протоколот е главен протокол на Интернет. Во моментот има две верзии, IPv4 и IPv6.

IPv5 e експериментален протокол, базиран на OSI моделот.

IPv4 протоколот е недоверлив connectionless датаграм протокол. За него важи best effort

сервис на испорака. Best effort значи дека тој не обезбедува контрола на грешки и

контрола на проток (со исклучок на детекција на грешки на хедерот), не гарантира пренос

на податоците до крајната дестинација но прави се најдобро преносот да успее. IPv4 e

connectionless протокол, за packet-switching мрежи. Податоците се праќаат преку

датаграми независно еден од друг што значи дека секој датаграм може да патува по

различна рута до крајната дестинација. Датаграмите може да стигнат неподредени, некои

може да се изгубат или да бидат оштетени за време на преносот. Овие проблеми се

решаваат преку протоколите на повисоко ниво како TCP и SCTP.

IP протоколот во верзија 6 е доста модифициран за да ги задоволи денешните потреби

на брзорастечкиот Интернет. Протоколите ARP, RARP, IGMP не постојат. Протоколот

ICMP e модифициран во ICMPv6 така што ги содржи и потребните својства од ARP, RAP

и IGMP.Недостигот на IP адреси во IPv4 протоколот, се решаваше на кратки патеки со

NAT (network Address Translation).Брзото зголемување на корисници на Интернет, и

новите сервиси како пренос на аудио, видео, IP телефонија, мобилна IP телефонија и

други ќе бараат брза замена на IPv4 со IPv6.

ARP протоколот прави врска меѓу логичките IP адреси и физичките адреси. IP пакетите

користат логички IP адреси, тие пакети треба да бидат енкапсулирани во рамка која бара

6

Page 7: 77771450 Seminarska Rabota KM2

физички адреси.Физичката адреса е локална адреса, мора да е уникатна локално а немора

да е уникатна глобално. Се вика физичка адреса затоа што најчесто е имплементирана во

хардверот. Пример е 48 битната MAC адреса во Ethernet протоколот

RARP протоколот ја наоѓа IP адресата знаејќи ја физичката адреса. Значи адресата од

data link layer ја транслира во network layer адреса

2.FTP

Протокол за пренос на податотеки е стандарден мрежен протокол кој се користи за

копирање на податотека од еден на друг хост преку TCP базирана мрежа како што е

Интернет.ППП се заснова на клиент-сервер архитектурата.ППП клиентите се

индетификуваат со користење на корисничко име и лозинка, но исто така може да се

поврзат и анонимно на FTP опслужувачот доколку истиот тоа го има дозволено.

Првите FTP клиентски апликации биле интерактивни алатки за командната линија

спроведувајќи стандардни команди и синтакса.Графичките кориснички интерфејс

клиенти, кои биле развиени за многу популарни десктоп оперативни системи, се користат

и денес. FTP (File Transfer Protocol) е наједноставниот и најсигурен начин за размена на

фајлови преку интернет. Кога сметнуваме фајл од интернет ние всушност правиме

трансфер на нашиот компјутер од друг компјутер преку интернет мрежата. Ова е

причината зошто Т(трансфер –пренос ) се наоѓа во FTP. Вие можеби не знаете каде се

наоѓа компјутерот од каде доаѓа фајлот но најверојатно го знаете URL то или IP адресата.

Адресата на FTP е слична како HTTP или web адреса освен што го користи префиксот

ftp:// наместо http://. Најчесто, компјутер со FTP адреса е добива FTP конекција.Исто како

компјутер на кој е хостирана web страна и е поставен како web сервер, компјутерот е

посветен на приемот на FTP конекција како на FTP сервер или FTP сајт.

2.1.Преглед на протоколот

Клиентот прави TCP врска до серверската порта 21.Оваа врска наречена контролна врска,

останува отворена за време на траењето на сесијата, со втора врска, наречена податчна

врска, отворена од серверот од неговата порта 20 до клиентската порта како што е

потребно за пренос на податочна датотека.Контролната врска се користи за

7

Page 8: 77771450 Seminarska Rabota KM2

администрација на сесија (односно,команди,индетификација,лозинки) во размената

помеѓу клиентот и серверот користејќи telnet како протокол.На пример “RETR”filename””

веднаш ќе ја пренесе одредената датотека од серверот до клиентот.Поради две-портната

структура,ППП се смета за out-of-band,за разлика на in-band протоколот како што е HTTP.

Серверот одговара на контролната врска со статус код со три цифри во ASCII со

опционална текст порака на пример “200”(или “200 OK.”) значи дека последната команда

беше успешна.Бројките го претставуваат кодот број и опционалниот текст претставува

објаснување (на пример ,<OK>) или се потребни параметри (на пример, <Треба

корисничка сметка за зачувување на датотека>).Пренос на датотека во прогрес низ

податочна врска може да биде прекинат користејќи порака на прекин испратена низ

контролната врска.

ППП може да биде изввршен во активен или пасивен режим, којшто одредува како

податочната врска е воспоставена.Во активен режим, клиентот ја испраќа на серверот IP

адресата и бројот на портата на која клиентот ќе слуша, и серверот иницира TCP врска.Во

ситуации кога клиентот е зад firewall и не може да ја прифати дојдовната TCP врска,

пасивниот режим може да се користи.Во овој режим клиентот испраќа PASV команда на

серверот и добива една IP адреса и бројот на портата за возврат.Клиентот ги користи овие

податоци за отворање на врската до серверот.Двете форми се ажурирани во Септември

1998 година за да подржат IPv6.Во тоа време биле направени и други промени на

пасивниот режим, преавејќи го продолжен пасивен режим.

Додека се пренесуваат податоци низ мрежата, четири претставувања на податоци може да

се користат

ASCII режим : се користи за текст.Податоците се конвертирани, ако е потребно, од

испраќачкиот хост на претставувањето на карактери во “8-битен ASCII” код пред

преносот, и(повторно, ако е потребно) до примачкиот хост на претставувањето на

карактерите.Како последица на тоа, овој режим е несоодветен за датотеки кои

содржат податоци, освен обичен текст.

Слика режим (вообичаено се нарекува Бинарен режим): испраќачката машина ја

испраќа секоја датотека бајт по бајт, и примателот ги снима овие податоци од бајти

како што ги прима.(Подршка за Image режим се препорачува за сите

имплементации на ППП).

8

Page 9: 77771450 Seminarska Rabota KM2

EBCDIC режим: се користи за обичен текст помеѓу хостовите користејќи го

множеството со карактери EBCDIC.Овој режим инаку е сличен како ASCII

режимот.

Локален режим: дозволува два или повеќе компјутери со идентични поставувања

да испраќаат податоци во неслободен формат, без потреба да ги претворат во

ASCII.За текстуални датотеки, различен формат ги контролира и евидентира

опциите на структурата кои се предвидени.Овие карактеристики се дизајнирани за

да се олеснат датотеките кои содржат Telnet или ASA форматирање.

Преносот на податоци може да се направи на било кој од трите начини:

Поточен режим: Податоците се праќаат како континуиран поток,

ослободувајќи го ППП од било каква обработка.До некаде, сите обработки

се оставени на TCP.Не е потребен индикатор End-of-file,доколку податоците

се поделени во записи.

Блок режим:ППП ги разбива податоците во неколку блокови,(наслов на

блокот,број на бајт,и податочно поле) и потоа ги пренесува во TCP.

Компресиран режим: Податоците се компресирани со еден едиснствен

алгоритем(вообичаено run-length кодирање).

2.2.Аноними ППП

Хост кој што обезбедува услуги на ППП може дополнително да обезбедува анонимен

ППП пристап.Корисниците обично се највуваат на сервисот со ‘анонимна’ корисничка

сметка кога ќе бидат известени за корисничко име. Иако корисниците најчесто треба да ги

испраќаат своите email адреси наместо лозинка, без потврда всушност изведена доставата

на податоци.

2.3.Поддршка за веб прелистувачи

Најчестите веб прелистувачи можат да вчитаат податоци хостирани на сервери, иако тие

можеби не поддржуваат протокол екстензии како што е FTPS.Кога ППП-наместо HTTP-

URL е добиена, достапни содржини на оддалечен сервер се претставени на начин сличен

9

Page 10: 77771450 Seminarska Rabota KM2

на оној што се користи за други веб содржини.Полно-опремен ППП клиент може да се

движи (run) во рамките на Firefox во форма на проширување наречена FireFTP.

ППП URL синтаксата е опишана во RFC 1738 земајќи ја формата:

ftp://[<корисник>[:<лозинка>]@]<хост>[:<порта>]/<патека_на_url>

(делот во заградите е опционален.)На пример:

ftp://public.ftp-servers.example.com/mydirectory/myfile.txt

Стандардно повеќето веб прелистувачи користат пасивен (PASV) режим, кој полесно го

преминува крајниот кориснички firewall.

2.4.Безбедност

ППП не бил дизајниран за да го шифрира својот сообраќај; сите преноси се во чист текст,

и корисничките имиња, лозинки, команди и податоците може лесно да бидат прочитани

од било кој кој може да фаќа пакети преку (душкање) на мрежата.Овој проблем е

заеднички за многу спецификации на Интернет протоколи (како што се SMTP,Telnet,POP

и IMAP) дизајнирани пред создавањето на механизми за шифрирање како што се TLS или

SSL.Заедничко решение за овој проблем е користењето на “безбеден“,TLS-заштитена

верзија на несигурни протоколи(на пример, FTPS за FTP, TelenetS за Telnet и други) или

избор на различен, посигурен протокол кој може да се справи со работата, како што е

SFTP/SCP алатки, заедно со повеќето имплементации на Secure Shell протоколот.

2.5.NAT и поминувањето на огнените порти

ППП нормално пренесува податоци со тоа што серверот се поврзува назад со клиентот,

откако командата PORT е испратена од страна на клиентот..Ова е проблематично и за

NAT и за огнените порти, кои не дозволуваат врски од Интернетот кон вашите хостови.За

NAT, дополнителна компликација е застапеноста на IP адреси и бројот на портата во

PORT командата што се однесува на IP адресата на домашниот хост и портата, наместо

јавната IP адреса и портата на NAT.Постојат два пристапа кон овој проблем.Еден од нив е

дека ППП клиентот и ППП серверот ја користат PASV командата, која што предизвикува

10

Page 11: 77771450 Seminarska Rabota KM2

податочната врска да се утврди од ППП клиентот до серверот.Ова е широко употребувано

од современите ППП клиенти.Другиот пристап е да NAT да ги менува вредностите на

PORT командата, користејќи апликација на ниво на портал за оваа намена.

2.6.Далечински ППП или ПППmail

Каде што ППП пристапот е ограничен, далечинскиот ППП(или ПППmail) сервисот може

да се користи за да се избегне проблем.E-mail кој ги содржи ППП командите за да се

изврши е испратен на далечинскиот ППП сервер, кој е сервер за пошта што го парсира

дојдовниот e-mail, ги извршува ППП командите, и испраќа назад e-mail со сите преземени

датотеки како прилог.Очигледно ова е помалку флексибилно од ППП клиент, како што не

е можно да се погледнат директориумите интерактивно или за менување на команди, и

исто така може да има проблеми со големите датотечни прикачувања во одгворите што се

добиваат од серверите за пошта.Услугата се користи само кога некои корисници имаат

пристап до Интернет преку e-mail портали како што е BBS или онлајн сервис.

2.7.Методи за безбедно пренесување на датотеки “Безбеден ППП“

FTPS (експлицитен)

Експлицитниот FTPS е продолжение на ППП стандардот кој што им овозможува на

клиентите да побараат да ППП сесијата биде шифрирана.Тоа се прави со праќање на

командата “AUTH TLS”.Серверот има опција да дозволи или одбие врски кои не бараат

TLS.Најновата дефиниција на овој протокол е RFC 4217.

FTPS(имплицитен)

Имплицитниот FTPS е застарен стандард за ППП којшто бара употреба на SLL или TLS

врска.Тој бил определен да користи различни порти од обичниот ППП.

SFTP

SFTP, “SSH Протокол за пренос на датотеки” не е поврзан со ППП освен тоа што и тој

исто така пренесува датотеки и има слично командно множество за корисниците.

2.8.Историја11

Page 12: 77771450 Seminarska Rabota KM2

Оригиналните спецификации за Протоколот за пренос на податотеки се напишани од Ab-

hay Brushan и објавени како RFC 114 на Април 1971 и подоцна заменети со RFC765 Јуни

1980 и RFC 959(Октомври 1985),тековните спецификации.Неколку предложени измени за

стандардот RFC 959, на пример RFC 2228(Јуни 1997) предлагаат безбедносни екстензии

и RFC 2428(Септември 1998) дава подршка за IPv6 и дефинира нов тип на пасивен режим.

3.TFTP

Тривијални File Transfer Protocol (TFTP) е File Transfer Protocol познат поради неговата

едноставност. Тоа е генерално се користи за автоматски трансфер на конфигурација или

boot фајлови помеѓу машини во локалната средина. Во споредба со FTP, TFTP е крајно

ограничен, обезбедувајќи нема автентикација, и ретко се користи од страна на корисникот

интерактивно. Поради својот едноставен дизајн, TFTP може да се имплементира со

користење на многу мала количина на меморија. Tоа е корисно за подигнување на

компјутерите, како што се рутерите кои немаат уреди кои ќе можат да зачувуваат било

какви податоци. Тоа е елемент на Preboot Execution Environment (PXE) мрежен boot

протокол, кој што се спроведува во BIOS-от на firmware-от на мрежната карта. Тоа е исто

така корисно за пренос на мали количини на податоци меѓу компјутерите на мрежа, како

што е IP phone firmware-от или оперативниот систем кога е оддалечен од X Window

System terminal или било кој друг thin client(сервер) подигнат од мрежа или сервер. Во

почетните фази на некои од мрежно базирани инсталациони системи (како Solaris

Jumpstart, Red Hat Kickstart, Symantec Ghost and Windows NT's Remote Installation Services)

користат TFTP за да се вчита на кернелот кој ја извршува основната инсталацијата.

1.thin client

TFTP првпат бил дефиниран во 1980 од страна на IEN 133 . Сега е точно дефиниран со

RFC 1350. Имало некои од додатоците на протоколот TFTP документирани во RFC

12

Page 13: 77771450 Seminarska Rabota KM2

подоцна. TFTP се базира делумно на претходниот протокол EFTP, кој бил дел од

протоколот PUP. TFTP поддршката која прва се појавила била дел од 4.3 BSD.

Поради недостаток на безбедност, е опасно да се користи преку интернет. TFTP генерално

се користи само за лична , локална мрежа

Trivial File Transfer Protocol (TFTP) е едноставен протокол за пренос на датотеки. Тоа се

спроведува на врвот на User Datagram Protocol (UDP) со користење на бројот на портот 69.

TFTP е дизајниран да биде мал и лесно да се спроведе, затоа, ги нема повеќето од

карактеристиките на стандардниот FTP. TFTP само чита и пишува датотеки (или пошта)

од / до оддалечен сервер. Тоа не може да листа по директориуми, и нема одредби за

идентификација на корисникот. Во TFTP, секое пренесување почнува со барање да

прочита или запише датотека, која исто така служи за барање на конекција. Ако серверот

на грантови побара, да се направи конекција и датотеката да се испрати со фиксна

должина на блокови од 512 бајти. Секој пакет со податоци се состои од еден блок со

податоци, и мора да биде прифатен од страна на потврдниот пакет пред следниот пакет да

може да се испрати. А пакет со податоци помали од 512 бајти не може да се пренесува.

Ако еден пакет се изгуби во мрежата, на примачот ќе му измине времето и потоа ќе може

да се реемитува неговиот последен пакет (може да бидат податоци или потврда),

покажувајќи со тоа на испраќачот дека изгубените пакети може да се препратат.

Испраќачот може да реемитува само еден пакет, од овој чекор заклучивме дека добиваме

потвдна гаранција дека сите постари пакети се примени. Забележете дека и двете машини

се вклучени во трансферот се сметаат испраќачите и приемниците. Еден праќа податоци и

добива потврда, а другиот испраќа потврда и прима податоци. TFTP обично го користи

UDP како свој протокол за транспорт, но тоа не е услов. Преносот на податоци е

инициран на порт 69, но портот за пренос на податоци се избира независно од страна на

испраќачот и примачот во текот на иницијализацијата на конекцијата. Портовите се

избрани по случаен избор, според параметрите на networking stack, обично од редот на

Ephemeral портови .

TFTP дефинира три начини на пренос: netascii, октет, и email. Netascii е модифицирана

форма на ASCII, дефиниран во RFC 764. Тоа се состои од 8-битна екстензија на 7-битна

ASCII простор на карактери од 0x20 да 0x7F (за печатење карактери и просторни) и осум

контролни знаци. Дозволените контролни знаци вклучуваат null (0x00), нов ред (LF,

0x0A), и return key(CR, 0x0D). Netascii исто така бара на крајот на линискиот маркер да се 13

Page 14: 77771450 Seminarska Rabota KM2

преведе парот од карактери CR LF за пренос , и дека било кој CR мора да биде

проследен со LF или null.

Октет овозможува пренесување на произволни 8-битни бајти, примените датотеки се

идентични со испратeните датотеки. Поточно, ако главниот компјутер со податоци

добива октет фајл, а потоа тој фајл се враќа, враќањето на фајлот мора да биде идентичен

со оригиналот. Mail transfer модот користи Netascii трансфер, но фајлот е испратен на е-

маил примачот со впишување e-mail адреса на примачот како фајл. RFC 1350 прогласи

овој начин на пренос е застарен. Unix често ги ограничиувале имплементациите на

трансферот на датотеките на еден конфигуриран директориум, и единствено датотеките

може да се прочитаат со world readability, и може да се напише цамо на веќе постоечките

датотеки што имаат writeability world.

3.1.Екстензии

Оригиналниот протокол има лимит од 32 MB. Во 1998 година е продолжен до 4 GB со

RFC 2347 која е воведена опција за преговори и RFC 2348 која е воведена како block-size

преговори. Ако серверот и клиентот имаат поддршка од блок број wraparound, големината

на датотеката е во суштина неограничена. Одкако TFTP користи UDP, тоа мора да биде

наведено во својот транспорт и сесијата на поддршка. Секоја датотека пренесувана преку

TFTP претставува независна размена. Класично, овој трансфер се врши во lock-step, со

само еден пакет (или блок од податоци, или 'потврда') може да се изгуби низ мрежата во

секое време. Поради овој недостиг на прозорци, TFTP обезбедува ниско ниво на висока

латенција преку линкови. Во Windows 2008 воведен е pipelined TFTP како дел од Windows

Deployment Services (WDS). Ова значително ги подобрува перформансите за нешта како

PXE бутирање.

3.2.Протоколот Walkthrough

1.Иницираниот сервер со податоци А праќа RRQ (барање за читање) или WRQ (барање за

да запише) пакет на серверот со податоци S на добро познатиот порт 69, кои го содржат

името на датотеката и режим на трансферот.

2. S реплицира со ACK (потврдниот) за пакет на WRQ и директно со пакетот со податоци

на RRQ. Пакетот е испратен и распределен на ephemeral порта, и останатите пакети на

серверот со податоци S би требало да доаѓаат на овој порт.

14

Page 15: 77771450 Seminarska Rabota KM2

3. Изворниот сервер со информации испраќа нумерирани пакети со податоци до серверот

со информации, сите освен последниот кој содржи целосен блок од податоци (512 бајти).

Серверот со информации реплицира со нумерирани ACK пакетите за сите пакети со

податоци

4. Конечниот пакет со податоци треба да содржи помалку од целосниот блок од податоци

и со тоа сигнализира дека е последен. Ако големината на датотеката која се пренесува е

поголема од блок-големината, изворот испраќа конечен пакет со податоци кој содржи 0

бајти податоци.

5. Примачот реагира на секој податок со поврзани нумерирани ACK. Испраќачот на

првиот добиен ACK (потврден) блок со податоци одговара на следниот блок.

6. Ако ACK примено тајмер го препраќа пакетот со податоци.

15