03.05.2013 Views

ITRW322VBC - Index of

ITRW322VBC - Index of

ITRW322VBC - Index of

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

©


©


©


• <br />

<br />

• <br />

<br />

• <br />

<br />

• <br />

<br />

• <br />

• <br />

• <br />

• <br />

• <br />

• <br />


• <br />

<br />

• <br />

<br />

• <br />

<br />

• <br />

<br />

• <br />

• <br />

<br />

• <br />

• <br />

• <br />

• <br />


• <br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

• <br />

• <br />

<br />

• <br />

• <br />


• <br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

• <br />

<br />

• <br />

<br />

• <br />

<br />

• <br />

<br />

<br />


• <br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

• <br />


• <br />

<br />

<br />

<br />

<br />

<br />

• <br />

• <br />

<br />

• <br />


• <br />

• <br />

• <br />


• <br />

• <br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />

• <br />


• <br />

<br />

• <br />

• <br />

<br />

• <br />

• <br />

<br />

<br />


• <br />

<br />

• <br />

• <br />

<br />

• <br />

• <br />

<br />

<br />


• <br />

<br />

• <br />


• <br />

<br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />

<br />


• <br />

• <br />

• <br />

<br />

<br />

• <br />

• <br />

<br />


• <br />

• <br />

• <br />

<br />

<br />

• <br />

• <br />

<br />


• <br />

• <br />

• <br />

<br />

<br />

• <br />

• <br />

<br />


• <br />

• <br />

• <br />

<br />

<br />

• <br />

• <br />

<br />


• <br />

• <br />

• <br />

<br />

<br />

• <br />

• <br />

<br />


• <br />

• <br />

• <br />

<br />

<br />

• <br />

• <br />

<br />


• <br />

• <br />

• <br />

<br />

<br />

• <br />

• <br />

<br />


• <br />

<br />

• <br />


• <br />

<br />

• <br />


• <br />

<br />

• <br />


• <br />

<br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />

• <br />


• <br />

• <br />

<br />


• <br />

• <br />

<br />


• <br />

• <br />

• <br />

• <br />

• <br />

• <br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />

• <br />

<br />

• <br />


• <br />

• <br />


• <br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />

<br />


• <br />

• <br />

• <br />


• <br />

• <br />

• <br />


• <br />

• <br />

• <br />

• <br />

• <br />

• <br />

<br />


• <br />

<br />

• <br />

<br />

• <br />

• <br />

• <br />

<br />


• <br />

• <br />

• <br />


• <br />

• <br />

• <br />


• <br />

• <br />

• <br />

• <br />

<br />

<br />

• <br />


• <br />

• <br />

• <br />

<br />

• <br />

<br />

<br />

• <br />


• <br />

• <br />

• <br />

<br />

• <br />

<br />

<br />

• <br />


• <br />

• <br />

• <br />

<br />

• <br />

<br />

<br />

• <br />


• <br />

• <br />

• <br />

<br />

• <br />

<br />

<br />

• <br />


• <br />

• <br />

• <br />

<br />

• <br />

<br />

<br />

• <br />


• <br />

• <br />

• <br />

<br />

• <br />

<br />

<br />

• <br />


• <br />

• <br />

• <br />

<br />

• <br />

<br />

<br />

• <br />


Addendum 1<br />

Bylaag 1<br />

Addendum 2<br />

Bylaag 2<br />

Addendum 3<br />

Bylaag 3<br />

Addendum 4<br />

Bylaag 4<br />

Additional study material<br />

Addisionele studiemateriaal<br />

Introduction to Computer Networks<br />

Inleiding tot Rekenaarnetwerke<br />

Pr<strong>of</strong>. G.R. Drevin<br />

NWU, Potchefstroomkampus<br />

Layer architecture in data networks: OSI, TCP/IP and X.25<br />

Laag-argitekture in datanetwerke: OSI, TCP/IP en X.25<br />

The physical layer<br />

Die fisiese laag<br />

The data link layer: Examples and analyses <strong>of</strong> protocols<br />

Die Dataverbindingslaag: Voorbeelde en analise van protokolle


Addendum 1<br />

Introduction to Computer<br />

Networks<br />

1.1 Analog and digital communication<br />

When we discuss the differences between analog and digital communication, it is<br />

important to note what the difference is between data, signals and transmission.<br />

Analog data assume continuous values. Examples <strong>of</strong> such analog data are sound,<br />

video and temperature. Digital data, on the other hand, have discrete values.<br />

Examples <strong>of</strong> discrete data are text and integer numbers.<br />

In a communication system, data are conveyed from one point to the next in<br />

the form <strong>of</strong> signals. Analog signals are electromagnetic waves which can vary<br />

continuously and which can be transmitted via a wide variety <strong>of</strong> media. Wire<br />

media like woven threads, coaxial cables, optical fibre as well as radio are some<br />

<strong>of</strong> the possiblities. Digital signals consist <strong>of</strong> electrical pulses transmitted via a<br />

wire medium. In this a constant voltage level is defined as one, while a second<br />

constant voltage represents a zero.<br />

The advantages <strong>of</strong> digital signals are that their processing costs less and that<br />

noise has less <strong>of</strong> a detrimental effect on them. The disadvantage <strong>of</strong> digital signals<br />

is that attenuation is more severe than for analog signals. (in the chapter on<br />

the physical layer, we shall come back to the matter <strong>of</strong> the attenuation <strong>of</strong> digital<br />

signals)<br />

It is possible to represent both digital and analog data by analog as well as<br />

digital signals.<br />

• To communicate digital data by means <strong>of</strong> aan analog signal, we make use<br />

<strong>of</strong> a modem to convert the data at one end <strong>of</strong> the communication line<br />

from a digital signal to an analog signal (to modulate it). At the other<br />

end, the analog signal then has to be converted back to a digital signal<br />

(be demodulated).<br />

• Analog signals are on their part converted by a CODEC to digital (are<br />

encoded) and converted back to analog (decoded). It is also possible for<br />

35


Bylaag 1<br />

Inleiding tot<br />

Rekenaarnetwerke<br />

1.1 Analoog en digitale data kommunikasie<br />

Wanneer die verskille tussen analoog en digitale kommunikasie bespreek word is<br />

dit belangrik om te let na die verskil wat ter sprake is met betrekking tot data,<br />

seine en transmissie.<br />

Data wat analoog is neem waardes aan wat kontinu is. Voorbeelde van data<br />

wat analoog is, is klank, video en temperatuur. Digital data aan die anderkant<br />

neem diskrete waardes aan. Voorbeelde van diskrete data is teks en heelgetalle.<br />

Data word in ’n kommunikasie stelsel in die vorm van seine van een punt na<br />

’n volgende oorgedra. Analoog seine is elektromagnetiese golwe wat kontinu<br />

varieer en oor ’n wye verskeidenheid media gestuur kan word. Draad media soos<br />

vlegpaar, koaksiale-kabels, asook optiese vesel en radio is almal moontlikhede.<br />

Digitale seine bestaan uit elektriese pulse wat oor ’n draad medium gestuur<br />

word. ’n Konstante spanningsvlak word dan as ’n een gedefinieer terwyl ’n<br />

tweede konstante spanningsvlak ’n nul voorstel.<br />

Die voordele van digitale seine is dat dit goedkoper is om te hanteer as analoog<br />

seine en dat ruis ’n minder nadelige uitwerking daarop het. Die nadeel van<br />

digitale seine is egter dat die effek van attenuasie (verswakking) ernstiger is as<br />

met analoog seine. (Daar sal in die ho<strong>of</strong>stuk oor die fisiese-laag weer aandag<br />

gegee word aan die attenuasie van digitale seine.)<br />

Dit is moontlik om analoog en digitale data kan deur beide analoog en digitale<br />

seine voor te stel.<br />

• Om digitale data deur middel van ’n analoog sein voor te stel word van ’n<br />

modem gebruik gemaak om die data aan die een kant van ’n digitale sein<br />

na ’n analoog sein om te skakel (moduleer) en aan die ander kant om die<br />

analoog sein weer na digitale data om te skakel (demoduleer).<br />

<br />

• Analoog seine word weer deur middel van ’n CODEC na digitaal omgeskakel<br />

(gekodeer) en na analoog teruggeskakel (dekodeer). Verder is dit ook<br />

35


1.1. ANALOG AND DIGITAL COMMUNICATION 37<br />

36 ADDENDUM 1. INTRODUCTION TO COMPUTER NETWORKS<br />

<br />

(integrated circuits). A similar drop in the price <strong>of</strong> analog electronics did<br />

not occur. It therefore becomes ever more cost effective to make use <strong>of</strong><br />

digital methods.<br />

analog data to be quantified to digital data, which is then presented as a<br />

digital signal.<br />

<br />

• Data integrity: The use <strong>of</strong> digital repeaters rather than analog amplifiers<br />

meant that noise became less <strong>of</strong> a problem.<br />

• Exploitation <strong>of</strong> capacity: It is simpler and cheaper to multiplex a<br />

number <strong>of</strong> signals and send them via a single high band-width channel.<br />

• Analog data is a function <strong>of</strong> time and as such it covers a limited frequency<br />

range. It is therefore possible to present the data directly as an electromagnetic<br />

signal with the same frequency range. Sound, for instance, has<br />

a frequency range from 20 Hz up to 20 kHz, in which speach occupies<br />

a much smaller range, i.e. 300 Hz to 3400 Hz. It is therefore sufficient<br />

for telephone networks to be processing signals in the range 300 Hz to<br />

3400 Hz.<br />

• Security: Encryption techniques may be used to protect digital data from<br />

unsolicited interception and alteration. The same is true, <strong>of</strong> course, for<br />

analog data that have been digitised.<br />

• Digital data, finally, may be presented as an electrical signal consisting <strong>of</strong><br />

two voltages.<br />

• Integration: It is becoming possible to transmit speech, video, pictures<br />

and digital data via the same system.<br />

Transmission means the exchange <strong>of</strong> data by the propagation and processing<br />

<strong>of</strong> signals. Analog signals (which may represent both analog and digital data),<br />

can be handled by analog transmission. However, it is possible for both analog<br />

signals (assuming that it represents digital data) and digital signals (which may<br />

represent analog and digital data) to be handled by digital transmission.<br />

It is important that you should note that the conversion <strong>of</strong> the telephone network<br />

to a digital network does not neccessarily mean that all transmission has to be<br />

in the form <strong>of</strong> digital signals. What is true, is that speech (analog data) has to<br />

be handled as digital data. A general technique is to digitise speech so that it is<br />

presented as a stream <strong>of</strong> binary numbers (bits, zero’s and one’s). This stream<br />

<strong>of</strong> bits, or rather, the digital signal is then reconverted to an analog signal by<br />

a modem and is then transmitted. At the reception end, the analog signal is<br />

received and converted by a modem to a digital signal. This digital signal is<br />

then converted to analog data to simulate the original speech. The analog signal<br />

used in the transmission, however, bears no resemblance to the original analog<br />

data; it is simply an encoded stream <strong>of</strong> bits.<br />

Analog transmission is carried out irrespective <strong>of</strong> the data contents <strong>of</strong> the signal.<br />

Analog data (voice) and digital data which has been converted by a modem<br />

to an analog signal, are treated identically. However, the analog signal will be<br />

attenuated in the process <strong>of</strong> being propagated, the more the longer the distance<br />

<strong>of</strong> transmission. The signal will therefore have to be amplified at regular intervals.<br />

In addition to attenuation, noise will be introduced. When the signal is<br />

amplified, the noise is also amplified. If such a signal is transmitted over a long<br />

distance and is therefore amplified many times, a considerable distortion will<br />

result. This is not a serious problem in the case <strong>of</strong> speech, but if digital data<br />

is transmitted (in the form <strong>of</strong> an analog signal) large distortion may result in<br />

errors.<br />

The digitising <strong>of</strong> speech is done by a technique known as PCM (pulse code<br />

modulation). This technique involves the sampling (measuring) <strong>of</strong> analog data<br />

at regular intervals. At each sampling the intensity <strong>of</strong> the data at that instant<br />

<strong>of</strong> time is measured. The rate at which the data is sampled, is determined by<br />

the Nyquist (sampling theorem). This theorem determines that data has to be<br />

sampled at a rate which is at least twice the highest frequency occuring in the<br />

data. If speech is limited to a maximum frequency <strong>of</strong> 4000 Hz, it means that<br />

the speech data have to be sampled at a rate <strong>of</strong> 8000 times per second. The<br />

samples taken is, however, still <strong>of</strong> analog nature. It is therefore neccessary to<br />

subdivide the range <strong>of</strong> intensity into a number <strong>of</strong> intervals numbered from (say)<br />

0 tot n. At each sampling, the interval is determined in which the intensity<br />

lies. The number <strong>of</strong> the interval then determines the value <strong>of</strong> the sample. If the<br />

intensity ange is subdivided into 256 intervals, each sample can be expressed<br />

as an 8-bit number. This subdivision produces satisfactory results for speech.<br />

Therefore, to handle speech as digital data, a data rate <strong>of</strong> 64 kbps (8000 samples<br />

per second multiplied by 8 bits per second = 64000 bits per second) is required.<br />

To handle the signal for a colour TV, with maximum frequency <strong>of</strong> 3.6 MHz and<br />

10 bits resolution (1024 colours), a data rate <strong>of</strong> 72 Mbps is required.<br />

In the case <strong>of</strong> digital transmission, on the other hand, a distinction is made<br />

between analog signals and digital signals. Seeing that attenuation is a major<br />

problem in the handling <strong>of</strong> digital signals, repeaters are employed (not amplifiers)<br />

at regular distances. A repeater receives the digital signal, recovers the<br />

binary (zero’s and one’s) pattern, and then sends a new digital signal forward<br />

corresponding to the binary pattern. In the case <strong>of</strong> analog signals, it is assumed<br />

that the signals represent digital data. The repeaters therefore receives the analog<br />

signal and converts this signal to a digital signal (by means <strong>of</strong> a modem)<br />

and then reconvert the digital signal to a new, clean and noise-free analog signal<br />

(again by means <strong>of</strong> a modulator). There is no accumulation <strong>of</strong> noise, and the<br />

data can thus be transmitted over a very long distance.<br />

Traditionally the telephone network made use <strong>of</strong> analog transmission <strong>of</strong> analog<br />

signals representing analog data. The introduction <strong>of</strong> computers however, necessitated<br />

the handling <strong>of</strong> analog signals representing digital data by the telephone<br />

network. This did not require any change to the network. However, the tendency<br />

is lately to increasingly use digital transmission, and if possible, <strong>of</strong> digital<br />

signals. The reasons for this change to the well established infrastructure are:<br />

Variations in the PCM technique made it possible that already by 1987 speech<br />

with a data rate <strong>of</strong> 16 kbps could be done. For video use is also made <strong>of</strong> the<br />

fact that the data <strong>of</strong>ten varies little from frame to frame. Then, by means <strong>of</strong><br />

an interframe coding the data rate could be reduced to 1.5 Mbps. By 1988<br />

• Cost: As a result <strong>of</strong> the development in VLSI (very large scale integration)<br />

technology, a significant drop occurred in the cost <strong>of</strong> digital IC’s


1.1. ANALOOG EN DIGITALE DATA KOMMUNIKASIE 37<br />

36 BYLAAG 1. INLEIDING TOT REKENAARNETWERKE<br />

(geïntegreerde stroombane). Dieselfde daling in koste kom egter nie voor<br />

by analoog elektronika nie. Dit raak dus al hoe goedkoper om dinge digitaal<br />

te doen.<br />

moontlik om analoog data te versyfer na digitale data wat dan as ’n digitale<br />

sein voorgestel kan word.<br />

• Data integriteit: Met die gebruik van digitale herhalers in plaas van<br />

analoog versterkers is die invloed van ruis ’n baie kleiner faktor.<br />

• Benutting van kapasiteit: Dit is eenvoudiger en goedkoper om ’n aantal<br />

seine te multiplekseer om dit oor ’n enkele hoë bandwydte kanaal te stuur.<br />

• Analoog data is ’n funksie van tyd en as sulks beslaan dit gewoonlik ’n<br />

beperkte frekwensie spektrum. Dit is dus moontlik om die data direk as ’n<br />

elektromagnetiese (analoog) sein met dieselfde frekwensie spektrum voor<br />

te stel. So is klank se frekwensie spektrum 20 Hz tot 20 kHz met spraak<br />

wat ’n veel kleiner spektrum, nl. 300 Hz tot 3400 Hz, beslaan. Dit is dus<br />

voldoende dat die telefoonnetwerk elektromagnetiese seine in gebied van<br />

300 Hz tot 3400 Hz kan hanteer.<br />

• Sekuriteit: Dit is moontlik om enkripsie tegnieke te gebruik om digitale<br />

data te beskerm teen ongemagtigde onderskepping en verandering. Dit<br />

geld natuurlik ook vir analoog data wat versyfer is.<br />

• Digitale data kan laastens direk as ’n twee spannings vlak elektriese sein<br />

voorgestel word.<br />

• Integrasie: Dit raak al hoe meer moontlik om spraak, video, beelde en<br />

digitale data oor dieselfde stelsel te stuur.<br />

Dit is belangrik om op te let dat die verandering van die telefoonnetwerk na ’n<br />

digitale netwerk nie noodwendig beteken dat alles in die vorm van digitale seine<br />

hanteer word nie. Dit is wel nodig dat spraak (analoog data) as digitale data<br />

hanteer word. ’n Algemene tegniek is om die spraak te versyfer sodat dit deur<br />

’n stroom binêre syfers (bisse, nulle en ene) voorgestel word. Hierdie stroom<br />

bisse, <strong>of</strong> digitale sein, word dan weer deur middel van ’n modem omgeskakel na<br />

’n analoog sein wat dan gestuur word. Aan die ontvang kant word die analoog<br />

sein ontvang en deur middel van ’n modem teruggeskakel na ’n digitale sein.<br />

Hierdie digitale sein word dan na analoog data teruggeskakel om die oorspronklike<br />

spraak te approksimeer. Die analoog sein wat gestuur word toon egter geen<br />

ooreenkoms met die oorspronklike analoog data nie, dit is slegs ’n enkodering<br />

van ’n bisstroom.<br />

Transmissie behels die uitruil van data deur middel van die voortplanting en<br />

bewerking van seine. Analoog seine (wat beide analoog en digitale data voorstel)<br />

kan deur middel van analoog transmissie hanteer word. Dit is egter moontlik<br />

om beide analoog seine (word aanvaar dat dit digitale data is) en digitale seine<br />

(analoog en digitale data) deur middel van digitale transmissie te hanteer.<br />

Analoog transmissie vind plaas sonder inagneming van die inhoud van die data,<br />

analoog data (stem) en digital data, wat deur middel van ’n modem na ’n<br />

analoog sein omgeskakel is, word op dieselfde wyse hanteer. Die analoog sein<br />

ondergaan egter geattenuasie tydens voortplanting, en hoe verder dit gestuur<br />

word hoe groter die verswakking, dus moet die sein op gereelde intervalle versterk<br />

word. Behalwe dat attenuasie plaasvind word ruis ook opgetel. Wanneer<br />

die sein versterk word word die ruis dus ook versterk. Indien die sein oor ’n<br />

groot afstand gestuur word en dus ’n aantal keer versterk word, kan daar dus ’n<br />

groot mate van distorsie voorkom. In die geval van spraak is dit nie ’n ernstige<br />

probleem nie, maar waar digitale data gestuur word (as ’n analoog sein) kan ’n<br />

groot mate van distorsie foute veroorsaak.<br />

Die versyfering van die spraak word deur middel van ’n tegniek wat as PCM<br />

(pulse code modulation) bekend staan gedoen. Hierdie tegniek behels die monstering<br />

(meting) van analoog data op gereelde intervalle. Met elke monstering<br />

word die intensiteit van die data op daardie tydstip bepaal. Die tempo waarteen<br />

die data gemonster word, word deur die Nyquist monstering stelling (sampling<br />

theorem) bepaal. Volgens hierdie stelling moet data teen ten minste twee maal<br />

die hoogste frekwensie wat daarin voorkom gemonster word. Beperk ons dus<br />

spraak tot ’n maksimum frekwensie van 4000 Hz beteken dit dat ons die spraak<br />

data 8000 maal per sekonde moet monster. Die monsters wat geneem word<br />

is egter nog analoog van aard. Dit is dus ook nodig om die intensiteit bestek<br />

op te deel in ’n aantal intervalle wat van (sê) 0 tot n genommer is. Elke keer<br />

wat die data gemonster word, word daar gekyk in watter interval die intensiteit<br />

op daardie tydstip val. Die monster se waarde is dan die nommer van die betrokke<br />

interval. Indien die intensiteit bestek opgedeel word in 256 intervalle is<br />

dit moontlik om elke monster as ’n 8-bis getal voor te stel. Hierdie indeling<br />

lewer aanvaarbare resultate vir spraak. Om spraak dus as digitale data te kan<br />

hanteer word ’n datatempo van 64 kbps (8000 monsters per sekonde maal 8<br />

bisse per monster = 64000 bisse per sekonde) vereis. Om ’n kleur TV sein met<br />

’n maksimum frekwensie van 3.6 MHz en 10 bis resolusie (1024 kleure) te kan<br />

hanteer is ’n datatempo van 72 Mbps nodig.<br />

Met digitale transmissie word daar egter ’n onderskeid getref tussen analoog<br />

seine en digitale seine. Aangesien attenuasie ’n groot probleem is by die hantering<br />

van digitale seine word herhalers (nie versterkers) op gereelde afstande gebruik.<br />

’n Herhaler ontvang die digitale sein, herwin die binêre (nulle en ene)<br />

patroon en stuur dan weer ’n nuwe digitale sein wat met die binêre patroon<br />

ooreenstem uit. In die geval van analoog seine word aanvaar dat die seine digitale<br />

data voorstel. Die herhalers ontvang dus die analoog sein, skakel dit om<br />

na ’n digitale sein (dmv ’n modem) en skakel dan weer die digitale sein om na<br />

’n nuwe skoon en ruislose analoog sein (weer dmv ’n modulator). Daar is nie ’n<br />

opbouing van ruis en data kan dus oor ’n lang afstand gestuur word.<br />

Die tradisionele telefoonnetwerk het gebruik gemaak van analoog transmissie<br />

van analoog seine wat analoog data voorstel. Met die koms van die rekenaar<br />

het dit nodig geword vir die telefoonnetwerk om ook analoog seine wat digitale<br />

data voorstel te hanteer. Dit het egter geen verandering aan die telefoonnetwerk<br />

vereis nie. Die neiging is egter nou om al meer van digitale transmissie gebruik<br />

te maak, en waar moontlik van digitale seine. Die redes vir hierdie verandering<br />

aan ’n geweldige groot bestaande infrastruktuur is:<br />

<br />

Variasies in PCM tegniek het tot gevolg gehad dat spraak met datatempos van<br />

16 kbps reeds teen 1987 moontlik was. Met video word daar ook van die feit dat<br />

• Koste: As gevolg van die ontwikkeling in VLSI (very large scale integration)<br />

tegnologie is daar ’n groot daling in die koste van digitale IC’s


1.1. ANALOG AND DIGITAL COMMUNICATION 39<br />

38 ADDENDUM 1. INTRODUCTION TO COMPUTER NETWORKS<br />

<br />

Service Number Data rate Combinations<br />

Channels (Mbps) T1 T1C T2<br />

T1 24 1.544<br />

T1C 48 3.152 2<br />

T2 96 6.312 4 2<br />

T3 672 44.736 28 14 7<br />

T4 4032 274.176 168 84 42<br />

commercial video-conferencing equipment with data rates <strong>of</strong> 64 kbps became<br />

available.<br />

<br />

As we have mentioned, multiplexing was one <strong>of</strong> the reasons why the telephone<br />

network was converted to digital. Multiplexing is widely used for the following<br />

two reasons:<br />

Table 1.1: AT&T TDM carrier services<br />

• The cost effectiveness <strong>of</strong> equipment improves as the data rate increases.<br />

In other words, the cost <strong>of</strong> equipment per kbps decreases as the data rate<br />

increases.<br />

Level Number Data rate<br />

Channels (Mbps)<br />

1 30 2.048<br />

2 120 8.448<br />

3 480 34.368<br />

4 1920 139.264<br />

5 7680 565.148<br />

• Most equipment requires a much lower data rate than that <strong>of</strong>fered by<br />

the communication channel. There is therefor a lot <strong>of</strong> unused (surplus)<br />

capacity if only one set <strong>of</strong> apparatus communicates over a specific channel.<br />

Multiplexing may be done in two ways:<br />

Table 1.2: ITU-T TDM carrier services<br />

• FDM: Frequency-division multiplexing. In this process the frequency spectrum<br />

<strong>of</strong> the channel is subdivided into a number <strong>of</strong> channels where the<br />

frequency range <strong>of</strong> each is much smaller than the original one. Each signal<br />

that is transmitted, is then modulated by a different carrier wave.<br />

into 24 channels for voice, each at 64 kbps. Each frame is 193 bits long and<br />

consists <strong>of</strong> 8 bits per channel (192 bits for 24 channels) plus one framing<br />

bit which is used for synchronisation. For voice connections each channel<br />

contains one byte <strong>of</strong> digitised speech data. The speech is digitised by<br />

means <strong>of</strong> PCM at a rate <strong>of</strong> 8000 samples per second and a resolution <strong>of</strong> 8<br />

bits per sample. The frames therefore have to be transmitted at a rate <strong>of</strong><br />

8000 frames per second. For frame lengths <strong>of</strong> 193 bits, this rate requires<br />

a data rate <strong>of</strong> 1.544 Mbps. The same T1 structure may also be used for<br />

handling digital data exclusively as well as for a mixture <strong>of</strong> speech and<br />

digital data. More than one T1 structure may be combined if a higher<br />

rate connection is available. The different possibilities are illustrated in<br />

table 1.1.<br />

• TDM: Time-division multiplexing. By this technique the time is divided<br />

into a number <strong>of</strong> time slots. The signals are then sent piece-by-piece in<br />

turns. The available data rate is then much higher than that required.<br />

Suppose we have 8 sources, each requiring a data rate <strong>of</strong> 8 kbps. All 8<br />

sources can then be served by a single mdium that can handle 64 kbps.<br />

The division can be done on the bit-level, or on the byte-level (or on any<br />

other level!). For the bit-level division one bit <strong>of</strong> each source is sent in<br />

turn. As soon as one bit from each source had been sent, the next bit from<br />

every source is sent, etc. For the byte-level division one byte from each<br />

source is sent in turn. A time slot is therefore allocated to each source.<br />

The series <strong>of</strong> time slots for each source is known as a channel, while one<br />

cycle <strong>of</strong> time-slots (one per source) is called a frame. In the instance where<br />

a fixed time slot from each frame is assigned to each source, we have what<br />

is called a synchrone TDM. This technique is the simpler and cheaper<br />

one <strong>of</strong> the two and this is therefore the technique that is used in the new<br />

digital telephone network.<br />

• A second system <strong>of</strong> this nature has been proposed as the standard system,<br />

by the CCITT (Comité Consultatif International de Télégraphique et<br />

Téléphonique) or rather the Telecommunications Standards Sector <strong>of</strong> the<br />

ITU (International Telecommunication Union), called the ITU-T. 1 The<br />

basic system handles a data rate <strong>of</strong> 2.048 Mbps, divided into 30 channels.<br />

The details <strong>of</strong> the system is summarised in table 1.2. This system is being<br />

used in the rest <strong>of</strong> the world.<br />

Digital switching systems have also been developed since the middle <strong>of</strong> the 70’s.<br />

When the telephone network has been completely digitised, it will be possible<br />

to send all types <strong>of</strong> data via the telephone network. This includes interactive<br />

data, communication between computers (such as transmission <strong>of</strong> files), digital<br />

voice and digital pictures. One possibility will therefore be “voice mail” where<br />

Digital transmission is being used more and more in telephone networks. AT&T<br />

(American Telephone & Telegraph) introduced the first commercial digital service<br />

in the USA as early as the 1960’s. It was soon followed by similar services<br />

in other countries. The trend is to move increasingly towards a situation where<br />

the telephone network will be fully digital so that it can provide the services <strong>of</strong><br />

both telephone and computer networks. In this way the simultaneous transmission<br />

<strong>of</strong> speech and data will be possible. There are mainly two systems that<br />

have been installed over the world, i.e.:<br />

1 The ITU-T has been established on 1 March 1993 and it replaced the CCITT. The ITU-T<br />

is part <strong>of</strong> the ITU which again is a specialised agency <strong>of</strong> the United Nations Organisation.<br />

• The AT&T system, used mainly in the USA, Canada and Japan, consisting<br />

<strong>of</strong> a hierarchy <strong>of</strong> TDM partitions with different data rates. The basic<br />

partition, T1, makes provision for a data rate <strong>of</strong> 1.544 Mbps, subdivided


1.1. ANALOOG EN DIGITALE DATA KOMMUNIKASIE 39<br />

38 BYLAAG 1. INLEIDING TOT REKENAARNETWERKE<br />

Diens Aantal Datatempo Kombinasies<br />

Kanale (Mbps) T1 T1C T2<br />

T1 24 1.544<br />

T1C 48 3.152 2<br />

T2 96 6.312 4 2<br />

T3 672 44.736 28 14 7<br />

T4 4032 274.176 168 84 42<br />

die data min van raam tot raam verskil gebruik gemaak om deur middel van<br />

tussenraam kodering tegnieke die benodigde datatempo af te bring na 1.5 Mbps.<br />

Teen 1988 was kommersiële video-konferensie toerusting met datatempos van<br />

64 kbps beskikbaar.<br />

Dit is reeds genoem dat multipleksering een van die redes is vir die omskakeling<br />

van die telefoonnetwerk na digitaal. Multipleksering word wyd gebruik om die<br />

volgende twee redes:<br />

Table 1.1: AT&T TDM draer dienste<br />

• Die koste effektiwiteit van toerusting neem toe soos die datatempo toeneem.<br />

Met ander woorde, die koste van toerusting per kbps neem af soos<br />

die datatempo toeneem.<br />

Vlak Aantal Datatempo<br />

Kanale (Mbps)<br />

1 30 2.048<br />

2 120 8.448<br />

3 480 34.368<br />

4 1920 139.264<br />

5 7680 565.148<br />

• Meeste toerusting benodig ’n baie laer datatempo as wat deur die kommunikasie<br />

kanaal gebied word. Daar is dus baie onbenutte kapasiteit indien<br />

slegs een stel apparate oor ’n kanaal kommunikeer.<br />

Multipleksering kan op twee wyses gedoen word:<br />

Table 1.2: ITU-T TDM draer dienste<br />

• FDM: Frekwensie-deel multipleksering. Hier word die frekwensie spektrum<br />

van die kanaal opgedeel in ’n klomp kanale waar die frekwensie spektrum<br />

van elkeen baie kleiner is as die oorspronklikke. Elke sein wat dan gestuur<br />

word, word met ’n ander dra-golf gemodduleer.<br />

• Die AT&T stelsel wat ho<strong>of</strong>saaklik in die VSA, Kanada en Japan gebruik<br />

word bestaan uit ’n hierargie van TDM indelings met verskillende<br />

datatempos. Die basiese indeling, T1, het ’n datatempo van 1.544 Mbps<br />

wat opgedeel is in 24 stem kanale van 64 kbps elk. Elke raam is 193 bisse<br />

lank en is opgebou uit 8 bisse per kanaal (192 bisse vir 24 kanale) plus<br />

een ramingsbis wat vir sinkronisasie gebruik word. Vir stem verbindings<br />

bevat elke kanaal een greep versyferde spraak data. Die spraak word deur<br />

middel van PCM versyfer teen ’n tempo van 8000 monsters per sekonde<br />

en ’n resolusie van 8 bisse per monster. Die rame moet dus teen ’n tempo<br />

van 8000 rame per sekonde gestuur word. Met ’n raam lengte van 193<br />

bisse vereis dit dus ’n datatempo van 1.544 Mbps. Dieselfde T1 struktuur<br />

kan ook gebruik word vir die hantering van digitale data alleen asook vir<br />

’n mengsel van spraak en digitale data. Meer as een T1 struktuur kan<br />

gekombineer word indien ’n hoër tempo verbinding beskikbaar is. Die<br />

verskillende moontlikhede word in tabel 1.1 getoon.<br />

• ’n Tweede soortgelyke stelsel is deur die CCITT (Comité Consultatif International<br />

de Télégraphique et Téléphonique) <strong>of</strong> die ITU (International<br />

Telecommunication Union) se Telekommunikasie Standaarde Sector, die<br />

ITU-T 1 , as ’n standaard voorgestel. Die basiese stelsel kan ’n datatempo<br />

van 2.048 Mbps hanteer wat in 30 kanale opgedeel is. Die volledige stelsel<br />

word in tabel 1.2 saamgevat. Hierdie stelsel word in die res van die wêreld<br />

gebruik.<br />

• TDM: Tyddeel multipleksering. Met hierdie tegniek word tyd weer in<br />

’n aantal gleuwe opgedeel. Die seine word dan stukkie vir stukkie om<br />

die beurt gestuur. Die beskikbare datatempo is dus veel hoër as wat<br />

benodig word. Die data van ’n aantal bronne word dan om die beurt<br />

gestuur. Gestel dus dat ons 8 bronne het wat elk ’n datatempo van 8 kbps<br />

benodig. Dit is dan moontlik om al 8 bronne te bedien met ’n enkele<br />

medium wat 64 kbps kan hanteer. Die indeling kan op bis vlak <strong>of</strong> greep<br />

vlak (<strong>of</strong> enige ander vlak!) gedoen word. Met ’n bis vlak indeling word<br />

daar een bis van elke bron om die beurt gestuur. Sodra ’n bis van al die<br />

bronne gestuur is word die volgende bis van elke bron gestuur ens. Met ’n<br />

greep vlak indeling word daar weer ’n greep van elke bron om die beurt<br />

gestuur. Daar word dus ’n tydgleuf aan elke bron toegeken. Die reeks<br />

tydgleuwe van ’n spesifieke bron staan as ’n kanaal bekend terwyl een<br />

siklus van tydgleuwe (een per bron) as ’n raam bekend staan. Indien ’n<br />

vaste tydgleuf uit elke raam aan ’n spesifieke kanaal toegeken word staan<br />

die tegniek as sinkrone TDM bekend. Hierdie tegniek is die eenvoudiger<br />

en goedkoper van die twee en is dan ook die tegniek wat met die nuwe<br />

digitale telefoonnetwerk gebruik word.<br />

Digitale skakel stelsels is ook sedert die middel 1970’s ontwikkel.<br />

Sodra die telefoonnetwerk volledig digitaal geword het sal alle tipes data oor<br />

1 Die ITU-T is op 1 Maart 1993 geskep en vervang die CCITT. Die ITU-T is deel van die<br />

ITU wat weer ’n gespesialiseerde agentskap van die VN is.<br />

Digitale transmissie word al hoe meer gebruik vir die telefoonnetwerk. Reeds in<br />

die 1960’s het AT&T (American Telephone & Telegraph) die eerste kommersiële<br />

digitale diens in die VSA begin en is gou gevolg deur soortgelyke dienste in ander<br />

lande. Daar word dus toenemend beweeg na ’n situasie waar die telefoonnetwerk<br />

ten volle digitaal is en dus die dienste van beide telefoon- en rekenaar-netwerke<br />

kan lewer om sodoende die gelyktydige transmissie van spraak en data moontlik<br />

te maak. Daar is dan ook tans ho<strong>of</strong>saaklik twee stelsels wat wêreldwyd<br />

geïnstalleer is nl.:


1.2. INTERCONNECTION OF NETWORKS 41<br />

40 ADDENDUM 1. INTRODUCTION TO COMPUTER NETWORKS<br />

a verbal message may be stored at its destination on disk.<br />

<br />

operations that was open, but rather the mechanism <strong>of</strong> communication<br />

between the systems. We shall go into the details <strong>of</strong> the OSI model at a<br />

later stage.<br />

<br />

1.1.1 Circuit and parcket connection<br />

• The third event was the project embarked on and funded by the Advanced<br />

Research Projects Agency (ARPA) <strong>of</strong> the defence department <strong>of</strong> the USA.<br />

The work was started in the 60’s and continued in the 70’s, and it led to<br />

a data communication network, called ARPAnet. The basic concept was<br />

that host computers with specialised capabilities were connected in the<br />

network. Users all over the USA should them be able to log in on any <strong>of</strong><br />

the hosts and make use <strong>of</strong> the specialised s<strong>of</strong>tware or the number crunching<br />

capabilities <strong>of</strong> that particular host computer. A backbone communication<br />

network had to be developed to connect the hosts and for this use was<br />

made <strong>of</strong> packet switching. On the network layer they developed communication<br />

processors which could connect with a host on one side and on the<br />

other could route packets along the network. Algorithms were developed<br />

to do the routing and to control the flow <strong>of</strong> data. The ARPA workers were<br />

the first to use the word packet, to distinguish between the longer messages<br />

sent by the hosts over the network, and the multiple shorter blocks into<br />

which the messages were divided to improve the network traffic and the<br />

performance <strong>of</strong> the network. This gave rise to the name <strong>of</strong> packet switch<br />

for the communication processors.<br />

The telephone network is an example <strong>of</strong> a circuit switched connected network.<br />

A dedicated connection is set up between two users who desire to communicate<br />

with each other. In this case we have a point-to-point connection. However, the<br />

possibility is also investigated to have real time voice communication by means<br />

<strong>of</strong> packets over a packet-switched network.<br />

Packet switched networks originated when large main frame computers (or host<br />

computers) were developed in the 1960’s. During that time the development<br />

<strong>of</strong> networks was initiated to share the extravagant cost <strong>of</strong> both hardware and<br />

s<strong>of</strong>tware, which were extremely high for such large systems. Three events taking<br />

place almost simultaneously, were responsible for the rapid development <strong>of</strong><br />

packet switched networks:<br />

ARPAnet has also been developed as a layered architecture with so-called<br />

higher level protocols to enable different kinds <strong>of</strong> hosts to communicate<br />

with each other. The lower level protocols, on the other hand, were responsible<br />

for a satisfactory point-to-point delivery service. (Computers<br />

communicate with each other according to a fixed set <strong>of</strong> rules. Such a set<br />

<strong>of</strong> rules is known as a protocol. A group <strong>of</strong> protocols, which all belong to<br />

a specific model, is called a protocol suite.)<br />

• During the 1960’s companies started selling time sharing (on computers!)<br />

that enabled users to get access by terminals to the host computers <strong>of</strong><br />

these companies at relatively low cost. To do this, the companies had to<br />

delvelop networks that would enable users over a wide geographic area<br />

to communicate with the host. Examples <strong>of</strong> such companies are General<br />

Electric Information Services and Tymshare. The network <strong>of</strong> the last company,<br />

known as TYMNET gives access to the computers <strong>of</strong> the company,<br />

spread all over the USA and is one <strong>of</strong> the main public packet switched<br />

networks in the USA. It has more than 1000 switching nodes and as such<br />

it was possibly the largest network in the world.<br />

This work on data transmission by means <strong>of</strong> packet switched networks, led to the<br />

development <strong>of</strong> standards by the CCITT. In 1976 they proposed an architecture<br />

for packet switching consisting <strong>of</strong> a three-layer interfacing. The standard was<br />

called X.25 and this was used ever since for most packet switching networks.<br />

We shall discuss X.25 at a later stage.<br />

1.2 Interconnection <strong>of</strong> networks<br />

• The suppliers <strong>of</strong> computers also had a large share in the development <strong>of</strong><br />

packet switched networks. They have developed inter alia specialised communication<br />

processors that removed the burden <strong>of</strong> communication from<br />

the host computer. They have also developed communication s<strong>of</strong>tware.<br />

The most important contribution, however, was the inroduction and development<br />

<strong>of</strong> layered communication architecture. These developments<br />

by computer suppliers have enabled terminals, communication processors,<br />

computers and applications s<strong>of</strong>tware running on these computers, to communicate<br />

with each other. IBM has, for instance, developed it’s Systems<br />

Network Architecture (SNA) during the late 1960’s and has formally announced<br />

it together with products running on it, during 1974. This architecture<br />

has since been continuously developed. Other examples were<br />

Digital Equipment Corporation with DNA and Burroughs with BNA.<br />

There are thousands <strong>of</strong> networks in use all over the world and new ones are being<br />

installed daily. These networks vary from local-area-networks serving a single<br />

building, to networks going around the world. Interconnections <strong>of</strong> networks<br />

are being done increasingly, in order to enable users <strong>of</strong> different networks to<br />

cooperate. The internet has experienced tremendous growth in recent times.<br />

When networks are connected, the following are required:<br />

• Provision must be made for communication between the networks. The<br />

minimum requirement is that communication between the networks should<br />

at least be possible on the physical layer and data link layer (or equivalent).<br />

These communication architectures enabled communication within families<br />

<strong>of</strong> computer systems, but between systems <strong>of</strong> different manufacturers,<br />

silence reigned. This state <strong>of</strong> affairs forced the International Standards<br />

Organisation (ISO) to set up a task group whose task was to establish a<br />

global communication architecture that would enable communication between<br />

different systems. They started with this mission in 1978 and this<br />

led in 1980 to a proposal for a reference model for Open Systems Interconnection<br />

or OSI, which was approved as international standard during May<br />

1983. It is important that one should note that it was not the internal


1.2. TUSSENVERBINDING VAN NETWERKE 41<br />

40 BYLAAG 1. INLEIDING TOT REKENAARNETWERKE<br />

’n taakgroep in die lewe te bring wat kon kyk na die ontwikkeling van<br />

’n wêreldwye kommunikasie argitektuur standaard wat oop kommunikasie<br />

tussen stelsels sou moontlik maak. Die werk is in 1978 begin en het in<br />

1980 gelei tot ’n voorstel vir ’n verwysings model vir Open Systems Interconnection<br />

<strong>of</strong> OSI wat in Mei 1983 as internasionale standaard goedgekeur<br />

is. Dit is belangrik om daarop te let dat dit nie die interne werking van<br />

stelsels is wat oop is nie, maar wel die kommunikasie meganisme tussen<br />

die stelsels. Daar sal later in meer detail na die OSI model gekyk word.<br />

die telefoonnetwerk gestuur kan word. Dit sluit in interaktiewe data, kommunikasie<br />

tussen rekenaars (bv. lêeroordragte), digitale stem en digitale beeld.<br />

’n Moonlikheid is dus nou ook “spraak-pos” waar ’n verbale boodskap by die<br />

bestemming op skyf gestoor kan word.<br />

1.1.1 Kring en pakket skakeling<br />

• Die derde gebeurtenis was die werk wat deur die Advanced Research<br />

Projects Agency (ARPA) van die VSA se verdedigings departement begin<br />

en befonds is. Hierdie werk wat ook in die 1960’s begin is en deur die 1970’s<br />

voortgesit is, het gelei tot ’n data kommunikasie-netwerk, ARPAnet. Die<br />

basiese konsep was dat gasheer rekenaars met gespesialiseerde vermoëns<br />

in die netwerk verbind word. Gebruikers regdeur die VSA sou dan kon<br />

inskakel op enige van die gashere en van die betrokke gasheer se gespesialiseerde<br />

programmatuur <strong>of</strong> number-crunshing vermoë gebruik maak. ’n<br />

Ruggraat (backbone) kommunikasie-netwerk moes ontwikkel word om die<br />

gashere te verbind, hier is dan ook van pakketskakeling gebruik gemaak.<br />

Op die netwerklaag is kommunikasie verwerkers ontwikkel wat aan die een<br />

kant in staat was om te koppel met ’n gasheer en aan die ander kant in<br />

staat was om pakkette langs die netwerk te roeteer. Roetering en vloei<br />

beheer algoritmes is hiervoor ontwikkel. Die term pakket is dan ook eerste<br />

deur die ARPA werkers gebruik om te onderskei tussen die langer boodskappe<br />

wat deur die gashere op die netwerk uitestuur is en die veelvuldige<br />

korter blokke waarin die boodskappe opgebreek is om netwerk verkeer en<br />

werkverrigting te verbeter. Dit het weer gelei tot die term pakketskakel<br />

vir die kommunikasie verwerkers.<br />

Die telefoonnetwerk is ’n voorbeeld van ’n kring geskakelde netwerk. ’n Gededikeerde<br />

verbinding word dus tussen die twee gebruikers wat met mekaar wil kommunikeer<br />

opgestel. Ons het hier dus ’n punt-tot-punt verbinding. Daar word<br />

egter ook studies gedoen om die moontlikheid van intydse stem kommunikasie<br />

deur middel van pakkette oor ’n pakket geskakelde netwerk te ondersoek.<br />

Pakket geskakelde netwerke het begin ontstaan met die ontwikkeling van groot<br />

ho<strong>of</strong>raam <strong>of</strong> gasheer (host) rekenaars in die 1960’s. In ’n poging om die koste<br />

van beide apparatuur en programmatuur, wat baie hoog was met hierdie groot<br />

stelsels, te deel is daar begin met die ontwikkeling van netwerke. Daar is veral<br />

drie gebeurtenisse wat omtrent gelyktydig plaasgevind het wat verantwoordelik<br />

was vir die snelle ontwikkeling van pakket geskakelde netwerke:<br />

• Gedurende die 1960’s het tyddeel (rekenaar tyd!) maatskappye ontstaan<br />

wat gebruikers in staat gestel het om deur middel van terminale toegang<br />

tot hierdie maatskappye se gasheer rekenaars te verkry teen ’n relatiewe<br />

lae koste. Die maatskappye moes egter netwerke ontwikkel om gebruikers<br />

oor ’n wye geografiese area in staat te stel om met die betrokke gasheer<br />

te kommunikeer. Voorbeelde van sulke maatskappye is General Electric<br />

Information Services en Tymshare. Laasgenoemde maatskappy se netwerk<br />

wat as TYMNET bekend staan verleen toegang tot die maatskappy se<br />

rekenaars wat regoor die VSA versprei is en is een van die ho<strong>of</strong> publieke<br />

pakket geskakelde netwerke in die VSA. Met meer as 1000 skakelings nodes<br />

is dit dan dalk ook die grootste netwerk in die wêreld.<br />

ARPAnet is ook as ’n gelaagde argitektuur ontwikkel met sogenaamde hoër<br />

vlak protokolle wat verskillende tipes gashere in staat gestel het om met<br />

mekaar te kommunikeer. Aan die ander kant was die laer vlak protokolle<br />

verantwoordelik vir ’n aanvaarbare punt-tot-punt pakket aflewerings diens.<br />

(Rekenaars kommunikeer met mekaar volgens ’n vasgestelde versameling<br />

reëls. So ’n versameling reëls staan as ’n protokol bekend. ’n Groep<br />

protokolle wat almal aan ’n spesifieke model behoort staan as ’n protokol<br />

suite bekend.)<br />

Hierdie werk in data transmissie deur middel van pakket geskakelde netwerke<br />

het ook die ontwikkeling van standaarde deur die CCITT aan die gang gesit.<br />

Hulle het in 1976 ’n voorstel gemaak vir ’n drie laag koppelvlak argitektuur<br />

vir pakketskakeling. Die standaard is X.25 genoem en is sedertdien vir meeste<br />

pakketskakeling netwerke gebruik. Ons sal weer later terugkom na X.25.<br />

1.2 Tussenverbinding van netwerke<br />

• Die rekenaarverskaffers het ook ’n groot aandeel gehad in die ontwikkeling<br />

van pakket geskakelde netwerke. Hulle het onder andere gespesialiseerde<br />

kommunikasie verwerkers ontwikkel wat die las van kommunikasie weg<br />

van die gasheer rekenaar geneem het. Verder het hulle ook kommunikasie<br />

programmatuur ontwikkel. Die belangrikste bydrae wat gelewer was was<br />

egter die invoer en ontwikkeling van gelaagde kommunikasie argitekture.<br />

Hierdie ontwikkelings van die kant van die rekenaar verskaffers het terminale,<br />

kommunikasie verwerkers, rekenaars en toepassings programmatuur<br />

wat op hierdie rekenaars geloop het in staat gestel om met mekaar te<br />

kommunikeer. So het IBM bv. sy Systems Network Architecture (SNA)<br />

in die laat 1960’s ontwikkel en tesame met produkte wat daarop geloop het<br />

formeel in 1974 bekend gestel. Hierdie argitektuur het egter sedert dien<br />

aanhou ontwikkel. Daar was dan ook Digital Equipment Corporation met<br />

DNA en Burroughs met BNA.<br />

Daar is reeds duisende netwerke wat wêreldwyd in gebruik is en daar word<br />

daagliks nog netwerke geïnstalleer. Hierdie netwerke wissel van lokale-areanetwerke<br />

wat individiueele geboue bedien tot netwerke wat reg oor die aardbol<br />

Hierdie kommunikasie argitekture het kommunikasie binne families van<br />

rekenaar stelsels moontlik gemaak, maar tussen stelsels van verskillende<br />

verskaffers het daar ’n doodse stilte geheers. Hierdie toedrag van sake<br />

het die Internasionale Standaarde Organisasie (ISO) daartoe gedwing om


42 ADDENDUM 1. INTRODUCTION TO COMPUTER NETWORKS<br />

• Routing must be done between users on different networks.<br />

<br />

• A bookkeeping should be possible <strong>of</strong> the use <strong>of</strong> resources by users on<br />

different networks.<br />

<br />

Every interconnection service that is added should be added in such a way that<br />

the architecture <strong>of</strong> no other network is to be altered. This condition is the main<br />

reason why the interconnection <strong>of</strong> networks is so complicated, because networks<br />

<strong>of</strong>ten are totally incompatible. Usually then limited services are implimented.<br />

The ultimate goal however, remains that the interconnection <strong>of</strong> networks should<br />

be such that all services available on a network should be accessible for all users<br />

on the other networks.<br />

In the OSI reference model, a piece <strong>of</strong> hardware that is used to connect two<br />

unconnected systems is called a relay. If the relay estqablishes communication<br />

between layer n on one system with layer n on another system, we call it a ⁀layer n relay. The following terms are generally used:<br />

• Repeater: A physical layer relay.<br />

• Bridge: A data link layer relay.<br />

• Router: A Network layer relay.<br />

• Gateway: Any relay on a layer above the network layer.<br />

Repeaters simply amplify or regenerate the signals. The protocol, however,<br />

remains unchanged. Repeaters are employed to extend the range <strong>of</strong> a network.<br />

Repeaters therefore are used also in networks that are identical to each other.<br />

When, however, networks are to be connected that are increasingly different,<br />

relays are required that are <strong>of</strong> an increasingly higher level.<br />

Gateways may also be divided in two halves, with one half at each <strong>of</strong> the networks<br />

that are to be connected. In such a case each <strong>of</strong> the halves does only half<br />

<strong>of</strong> the conversion between two protocols. Atempts are being made to establish<br />

a standard “intermediate” protocol. If this could be done each <strong>of</strong> the half gateways<br />

would be doing the conversion from the protocol <strong>of</strong> the network where it<br />

is situated to the “intermediate” protocol. This will come in very useful when a<br />

large number <strong>of</strong> networks, each having its own protocol, have to be connected.<br />

There are many differences that may exist between different networks, which<br />

have to be resolved by the relay between them. Examples <strong>of</strong> such differences<br />

are:<br />

• Addressing scheme.<br />

• Packet size.<br />

• Error checking.<br />

• Routing and flow control.<br />

• Interruptions, time synchronisation and length <strong>of</strong> timeouts.<br />

• Access control.


1.2. TUSSENVERBINDING VAN NETWERKE 43<br />

42 BYLAAG 1. INLEIDING TOT REKENAARNETWERKE<br />

• Pakket grootte.<br />

• Fout beheer.<br />

strek. Tussenverbinding van netwerke word al meer gedoen om sodoende gebruikers<br />

op verskillende netwerke die kans te gee om saam te werk. Die Internet<br />

het oor die afgelope tyd geweldig gegroei.<br />

• Roetering en vloeibeheer.<br />

Vereistes wat gestel kan word wanneer netwerke verbind word is onder andere:<br />

• Onderbrekings, tyd sinkronisasie en lengte van tydverstreke.<br />

• Toegangsbeheer.<br />

• Kommunikasie fasiliteite moet tussen die netwerke verskaf word. As minimum<br />

kan vereis word dat kommunikasie tussen die netwerke op ten minste<br />

die fisiese en dataverbindingslaag (<strong>of</strong> gelykstaande) moontlik moet wees.<br />

• Roetering tussen gebruikers op verskillende netwerke moet gedoen word.<br />

• Boekhouding van gebruik van nutsbronne deur gebruikers op verskillende<br />

netwerke moet moontlik wees.<br />

Elke tussenverbindingsdiens wat bygevoeg word moet bygevoeg word sonder<br />

dat die argitektuur van enige van die netwerke verander moet word. Dit is<br />

veral hierdie voorwaarde wat die tussenverbinding van netwerke kompleks maak<br />

omdat netwerke dikwels heeltemal onversoenbaar is. Beperkte dienste word dan<br />

gewoonlik geïmplimenteer. Die doelwit vir die tussenverbinding van netwerke<br />

bly egter nog steeds dat alle dienste wat op ’n netwerk beskikbaar is ook vir alle<br />

gebruikers op ander netwerke toeganklik moet wees.<br />

In die OSI verwysingsmodel word ’n stuk toerusting wat gebruik word om twee<br />

ongekoppelde stelsels te verbind, ’n relay genoem. Indien die relay gebruik word<br />

om laag n op een stelsel met laag n op ’n ander stelsel te laat kommunikeer word<br />

van ’n laag n relay gepraat. Die volgende terminologie word egter meer algemeen<br />

gebruik:<br />

• Herhaler (Repeater): Fisiese-laag relay.<br />

• Brug: Dataverbindingslaag relay.<br />

• Roeteerder (Router): Netwerklaag relay.<br />

• Hek (Gateway): Enige relay op ’n laag bokant die netwerklaag.<br />

Herhalers versterk <strong>of</strong> hergenereer bloot die seine. Die protokol self bly egter<br />

onveranderd. Herhalers word gebruik om die reikwydte van ’n netwerk te vergroot.<br />

Herhalers word dus ook gebruik tussen netwerke wat identies aan mekaar<br />

is. Soos die netwerke wat verbind moet word meer en meer van mekaar verskil<br />

is dit nodig dat die relay tussen hulle op ’n hoër en hoër vlak moet wees.<br />

Hekke kan ook in twee helftes gedeel word, met ’n helfte by elke netwerk wat<br />

verbind moet word. In die geval doen elkeen van die helftes ook net helfte<br />

van die omskakeling tussen die twee protokolle. Daar word ook gepoog om ’n<br />

standaard “tussen” protokol te implimenteer. Dan kan elkeen van die halwe<br />

hekke die omskakeling doen tussen die protokol van die netwerk waar hy geleë is<br />

en die “tussen” protokol. Dit is veral handig wanneer ’n groot aantal netwerke<br />

elk met sy eie protokol met mekaar verbind moet word.<br />

Daar is ’n groot aantal verskille wat tussen netwerke kan bestaan wat deur die<br />

relay tussen hulle opgelos moet word. ’n Paar van hierdie verskille is:<br />

<br />

• Adressering skema.


44 ADDENDUM 2. LAYER ARCHITECTURE IN DATA NETWORKS<br />

<br />

was then created to enable this reliable error-free transmission <strong>of</strong> information<br />

via unreliable media, as well as to provide for communication between networks.<br />

This means the capability <strong>of</strong> computers to communicate over different networks.<br />

By 1988, ten years after OSI was accepted, still only a few pilot projects existed,<br />

while Internet was used widely. In spite <strong>of</strong> this it appears as though Internet has<br />

a limited future, with OSI the favourite in the long run. However, it remains to<br />

be seen when the ”long run” will begin.<br />

<br />

Addendum 2<br />

By 1992 the situation was that the TCP/IP community could demonstrate real<br />

products on real networks, while the OSI community was caught in endless<br />

debates on the advantages <strong>of</strong> formal description techniques ... etc. However,<br />

OSI is slowly but surely gaining ground. Real OSI products are increasingly<br />

being demonstrated. The issue is not any more which <strong>of</strong> the two should become<br />

the standards, but rather one <strong>of</strong> co-existence and integration. The Internet<br />

(TCP/IP) society is experimenting with OSI techniques and applications, because<br />

it can add value to the Internet and because it can serve the society<br />

at large. An open interconnectedness <strong>of</strong> networks consisting <strong>of</strong> both OSI and<br />

TCP/IP has been in existence lately.<br />

Layer architecture in data<br />

networks: OSI, TCP/IP en<br />

X.25<br />

The ISO started in 1977 to develop a communication architecture that could<br />

become the international standard. The process <strong>of</strong> setting up protocols was<br />

open and international comments were invited. Leaders from the entire international<br />

community submitted commentary, each <strong>of</strong> course based on his own<br />

vision <strong>of</strong> the future. The resulting set <strong>of</strong> protocols was called the open systems<br />

interconnection or OSI. The purpose <strong>of</strong> OSI, like that <strong>of</strong> TCP/IP, was to enable<br />

two computer systems to exchange information (i.e. intercommunication),<br />

to interpret it and to present it in a format that can be handled by the local<br />

computer and that was understandable for the users (interoperation). The OSI<br />

consists presently <strong>of</strong> hundreds <strong>of</strong> standards. Years were spent to develop each<br />

<strong>of</strong> these standards, to achieve concensus on it and to publish it. OSI is still best<br />

known for the OSI reference model and its seven layers. The standards consists<br />

<strong>of</strong> abstract definitions, make use <strong>of</strong> a vocabulary custom made for this purpose,<br />

and is rather expensive. The sad result <strong>of</strong> all this is that the development and<br />

delivery <strong>of</strong> commercial OSI systems have been stunted.<br />

2.1 Introduction<br />

On the other hand any member <strong>of</strong> the Internet society is free to design a protocol<br />

for the Internet suite, to document it, implement it and test it. The<br />

documentation has to be done in the RFC (Request for Comments) series. An<br />

elaborate procedure has been compiled according to which such a protocol may<br />

to be delivered, can be improved, can become a prescribed standard and can<br />

finally become an Internet standard.<br />

A multitude <strong>of</strong> processes have to be performed in order to establish communication<br />

between two computers via a physical medium (such as a piece <strong>of</strong> wire).<br />

It has to be ensured that the data sent will be received free <strong>of</strong> errors, in the<br />

right order and without duplication. In the case where the two computers are<br />

not directly connected, but are linked through a network <strong>of</strong> connections and<br />

other computers, a route through the network has to be identified. Moreover<br />

the semantics <strong>of</strong> the information must be conserved, such that the different<br />

applications, electronic mail, file transfers, etc. would be understandable.<br />

It would in principle be possible to implement all these functions into one monolithic<br />

protocol....<br />

We have already mentioned the development <strong>of</strong> layered architecture for communication<br />

networks. For instance, both the SNA <strong>of</strong> IBM and ARPAnet are<br />

layered architectures. But the OSI model, which was developed as a layered<br />

architecture, is rapidly becoming the international standard for layered architecture.<br />

During the 1980’s most <strong>of</strong> the developments around OSI took place<br />

outside the USA. Other than the OSI protocol suite, which was developed by<br />

the international society, we also have the Internet protocol suite. While the<br />

ideals for OSI were that it should become the solution for communication between<br />

systems, the Internet protocol suite was developed through the research<br />

<strong>of</strong> the computer science community in the USA, funded by the USA Ministry<br />

for Defence. This protocol is known as TCP/IP and was accepted in 1983 as<br />

the standard by the USA Ministry <strong>of</strong> Defence. Even though the development<br />

<strong>of</strong> the two protocol suites had started almost simultaneously (during the late<br />

1970’s) the situation is now that Internet suite has been widely implemented,<br />

not only in defence circles in the USA, but in the entire users community. On<br />

the other hand very few OSI systems have been installed. In spite <strong>of</strong> this, it<br />

is predicted that OSI will be the solution for networks for the future. The<br />

development <strong>of</strong> the Internet protocol was to provide in a need, namely to enable<br />

a heterogeneous multitude <strong>of</strong> computers to communicate with each other,<br />

and they restricted themselves to the solution <strong>of</strong> this problem only. Existing<br />

technology was employed and they were not interested in solving other possible<br />

problems. Originally only one network existed, ARPAnet, which connected a<br />

number <strong>of</strong> computer systems all over the USA. When other network technologies<br />

developed, like Ethernet, Packet Radio and Satellite, the need developed<br />

to send reliable information via unreliable media that could not guarantee a<br />

dependable, error-free transmission <strong>of</strong> information. The TCP/IP protocol suite<br />

43


46 BYLAAG 2. LAAG-ARGITEKTURE IN DATANETWERKE<br />

betroubare, foutvrye oordra van inligting oor onbetroubare media te verseker,<br />

asook om tussen netwerk kommunikasie moontlik te maak. Dit is die vermoë<br />

vir rekenaars om oor verskillende netwerke met mekaar te kommunikeer. Teen<br />

1988, tien jaar na die aanvaaring van OSI was daar slegs ’n paar loodsprojekte<br />

terwyl Internet al wyd in gebruik was. Dit lyk egter tog as<strong>of</strong> Internet ’n beperkte<br />

toekoms het met OSI die langtermyn gunsteling. Wanneer die langtermyn gaan<br />

begin bly egter ’n ope vraag.<br />

Bylaag 2<br />

Teen 1992 was die situasie nog dat die TCP/IP gemeenskap werklike produkte<br />

op werklike netwerke kon demonstreer terwyl die OSI gemeenskap eindeloos<br />

gedebatteer het oor die voordele van formele beskrywings tegnieke ... ens. OSI<br />

is egter stadig maar seker besig om by te kom, al hoe meer werklike OSI produkte<br />

word gedemonstreer. Dit gaan nie meer oor watter een van die twee standaarde<br />

nie, maar al hoe meer oor saam bestaan en integrasie. Die Internet (TCP/IP)<br />

gemeenskap eksperimenteer met OSI tegnieke en toepassings omdat dit waarde<br />

by die Internet voeg en omdat dit die gemeenskap bedien. Oop tussen verbinding<br />

van netwerke bestaan dus nou uit OSI en TCP/IP.<br />

Laag-argitekture in<br />

datanetwerke: OSI,<br />

TCP/IP en X.25<br />

Die ISO het in 1977 begin met die ontwikkeling van ’n kommunikasie argitektuur<br />

wat ’n internasionale standaard kon word. Die proses om protokolle op<br />

te stel is oopgestel vir internasionale kommentaar. Gesaghebbendes vanuit die<br />

hele internasionale gemeenskap het hulle insette gelewer, elkeen natuurlik met sy<br />

eie persoonlike toekomsvisie. Die versameling protokolle het bekend gestaan as<br />

open systems interconnection <strong>of</strong> OSI. OSI het net soos TCP/IP ten doel gehad<br />

om twee rekenaar stelsels in staat te stel om inligting uit te ruil (intercommunication),<br />

om dit te interpreteer en in ’n formaat aan te bied wat deur die plaaslike<br />

rekenaar hanteerbaar is en verstaanbaar is vir die gebruikers (interoperation).<br />

Daar is tans honderde standaarde wat OSI opmaak. Vir elkeen van die standaarde<br />

is tipies jare gespandeer om dit te ontwikkel, konsensus daaroor te bereik<br />

en te publiseer. Die aspek waarvoor OSI die bekendste is, is maar nog steeds<br />

die OSI verwysings model en sy sewe lae. Die standaarde bestaan uit abstrakte<br />

definisies, gebruik ’n woordeskat wat net vir die doel ontwikkel is, verder is dit<br />

ook duur om kopieë aan te koop. Die ongelukkige gevolg is dat die ontwikkeling<br />

en lewering van komersiële OSI stelsels baie onderdruk is.<br />

2.1 Inleiding<br />

Aan die ander kant kan enige lid van die Internet gemeenskap ’n protokol vir die<br />

Internet suite ontwerp, dokumenteer, implimenteer en toets. Die dokumentering<br />

moet in die RFC (Request for Comments) reeks gedoen word. Daar is ’n hele<br />

prosedure opgestel waarvolgens kommentaar op so ’n protokol gelewer kan word,<br />

die protokol verbeter kan word, dit ’n voorgestelde standaard word en uiteindelik<br />

’n amptelike Internet standaard word.<br />

Daar is heelwat funksies wat verrig moet word om kommunikasie oor ’n fisiese<br />

medium (stuk draad) tussen twee rekenaars te bewerkstellig. Daar moet verseker<br />

word dat data wat gestuur word foutloos, in die regte volgorde en sonder duplikasie<br />

ontvang word. Indien die twee rekenaars nie direk verbind is nie, maar<br />

wel deur ’n netwerk van verbindings en ander rekenaars, is dit nodig om ’n roete<br />

deur die netwerk te identifiseer. Verder moet die semantiek van die inligting behoue<br />

bly sodat die verskillende toepassings, elektroniese pos, lêer oordragte ens,<br />

sin daaruit kan maak.<br />

Dit sou moontlik wees om al hierdie funksies in een monolitiese protokol te<br />

implimenteer...<br />

Daar is reeds melding gemaak van die ontwikkeling van gelaagde argitekture<br />

vir kommunikasie netwerke. So is beide IBM se SNA en ARPAnet gelaagde<br />

argitekture. Verder is die OSI model wat as ’n gelaagde argitektuur ontwikkel<br />

is vinnig besig om die internasionale standaard vir gelaagde argitekture te word.<br />

Gedurende die 1980’s is die meeste werk rondom OSI buite die VSA gedoen. Benewens<br />

die OSI protokol suite, wat deur die internasionale gemeenskap ontwikkel<br />

is, is daar ook die Internet protokol suite. Terwyl daar met OSI gepoog was<br />

om dit dié oplossing vir kommunikasie tussen stelsels te maak, het die Internet<br />

protokol suite sy bestaan te danke aan eksperimentering in die VSA se rekenaarwetenskap<br />

gemeenskap wat deur die VSA se Departement van Verdediging<br />

ondersteun is. Hierdie protokol staan as TCP/IP bekend en is in 1983 as ’n<br />

standaard deur die VSA se Departement van Verdediging aanvaar. Ontwikkeling<br />

van die twee protokol suites het ongeveer dieselfde tyd (laat 1970’s) begin,<br />

maar die situasie is tans dat die Internet suite wyd geïmplimenteer is, nie net in<br />

die VSA verdedigings gemeenskap nie maar reg oor die spektrum van gebruiker<br />

organisasies. Aan die ander kant is daar min OSI stelsels wat reeds geïnstalleer<br />

is, maar word daar voorspel dat OSI die netwerk oplossing van die toekoms is.<br />

Die ontwikkeling van die Internet protokol suite was in antwoord op ’n behoefte<br />

nl. om ’n hetrogene versameling rekenaars met mekaar te laat kommunikeer en<br />

is daar streng by die oplos van hierdie probleem gebly. Bestaande tegnologie is<br />

benut en daar is nie wyer gesoek na “nog moontlike probleme” nie. Aanvanklik<br />

was daar slegs een netwerk, ARPAnet, wat ’n aantal rekenaarstelsels oor die<br />

VSA verbind het. Soos ander netwerk tegnologieë, soos Ethernet, Pakket Radio,<br />

en Satelliet, ontwikkel het, het die behoefte ontstaan vir ’n metode om inligting<br />

betroubaar te versend oor media wat nie die betroubare, foutvrye oordra van inligting<br />

gewaarborg het nie. Die TCP/IP protokol suite het dan ontstaan om die<br />

<br />

45


46 ADDENDUM 2. LAYER ARCHITECTURE IN DATA NETWORKS<br />

2.2. THE OSI MODEL 45<br />

<br />

Application layer Application layer<br />

Presentation layer Presentation layer<br />

Session layer Session layer<br />

Transport layer Transport layer<br />

Network layer Network layer Network layer<br />

Data link layer Data link layer Data link layer<br />

Physical layer Physical layer Physical layer<br />

Communication path<br />

<br />

Figure 2.1: The OSI model.<br />

Figure 2.2: Relationship between a (N)-entity and the entities above and below<br />

it<br />

• The number <strong>of</strong> layers must be few enough to prevent the description and<br />

integration <strong>of</strong> the layers from getting complicated.<br />

However, by grouping all these functions so that related functions are taken<br />

together, and by then specifying them as different layers <strong>of</strong> a protocol, the<br />

complexity <strong>of</strong> the problem is greatly reduced. The question, however, is how<br />

many layers is required? OSI decided on seven layers, while TCP/IP makes do<br />

with five layers. A basic principle <strong>of</strong> both these protocols suites (and <strong>of</strong> others)<br />

is that the communication problem is divided into two parts. One part is the<br />

timely and correct delivery <strong>of</strong> the data to the user. The second part is to ensure<br />

that the data is recognisable and in a useable state when delivered to the user.<br />

The first part <strong>of</strong> the problem is handled by the network while the second part<br />

typically resides in the host computers <strong>of</strong> the users. It is therefore said that<br />

network services, or network protocols handle the first part. The second part is<br />

handled by the so-called higher protocols.<br />

• There should be enough layers so that none <strong>of</strong> them would get too complex.<br />

2.2 The OSI Model<br />

• Create boundaries where the description <strong>of</strong> services can be done simply<br />

and where there is little interaction over the boundary. Choose the boundaries<br />

at places which have been proven to be successful.<br />

OSI is a reference model which is used to describe the communication between<br />

computers. The model does not specify:<br />

• Place related functions in the same layer.<br />

• Programming language(s),<br />

• Create a layer <strong>of</strong> localised functions.<br />

• Operating system(s),<br />

• Make sure it is possible to change functions or protocols within a layer<br />

without any <strong>of</strong> the other layers being influenced, should changes in the<br />

technology require such changes.<br />

• Applications interfaces or<br />

• User interfaces.<br />

• Create interfaces for each layer with its upper and lower neighbour only.<br />

The model <strong>of</strong> the OSI is shown in Figure 2.1. The network protocols consist <strong>of</strong><br />

the physical-, data linking- and network layers, while the session-, presentationand<br />

application layers form the higher level protocols. The intermediate node<br />

that is shown may on its part have a user (or more than one user) connected<br />

with the associated higher level protocols. However, only the network services<br />

part <strong>of</strong> the two end users (A and B) that are communicating, is relevant. The<br />

group protocols has to ensure that the data are sent error-free and along the<br />

correct path between the two users. The tasks <strong>of</strong> the seven layers may be<br />

summarised as follows:<br />

Only the external performance <strong>of</strong> systems is described, independent <strong>of</strong> their<br />

internal mechanism — we therefore specify what is exported on the linking<br />

media and when, and not how computers should be built in order to ensure<br />

the desired performance. The OSI protocols are therefore defined in pairs: one<br />

specifying the service provided by such an entity, while the other specifies the<br />

protocol or mechanism used by the entity in order to provide the service. It is<br />

therefore possible to build (or write) individual entities without any knowledge<br />

about the other entities.<br />

The ISO laid down a number <strong>of</strong> principles according to which the set <strong>of</strong> layers<br />

<strong>of</strong> the OSI have to be constructed. The application <strong>of</strong> these principles led to<br />

the seven layers <strong>of</strong> which the OSI consists. Some <strong>of</strong> these principles are:


48 BYLAAG 2. LAAG-ARGITEKTURE IN DATANETWERKE<br />

2.2. DIE OSI MODEL 47<br />

Toepassingslaag Toepassingslaag<br />

Voorstellingslaag Voorstellingslaag<br />

Sessie-laag Sessie-laag<br />

Transportlaag Transportlaag<br />

Netwerklaag Netwerklaag Netwerklaag<br />

Dataverbindingslaag Dataverbindingslaag Dataverbindingslaag<br />

Fisiese-laag Fisiese-laag Fisiese-laag<br />

Kommunikasie pad<br />

Figure 2.1: Die OSI model.<br />

Figure 2.2: Verwantskap tussen ’n (N)-entiteit en die entiteite bo en onder hom.<br />

• Daar moet nie soveel lae wees dat die beskrywing en integrasie van die lae<br />

moeilik raak nie.<br />

Deur egter al die funksies te groepeer sodat verwante funksies saam val, en hulle<br />

dan as verskillende lae van ’n protokol te spesifiseer word die kompleksiteit van<br />

die probleem baie verminder. Die vraag is egter hoeveel lae is nodig? OSI<br />

het besluit op sewe lae terwyl TCP/IP regkom met vyf lae. Basies aan hierdie<br />

twee protokol suites (en ander) is die opdeel van die kommunikasie probleem<br />

in twee dele. Die een deel is om data betyds en korrek aan die gebruiker af te<br />

lewer. Die tweede deel is om te sorg dat die data herkenbaar en bruikbaar is vir<br />

die gebruiker. Die eerste deel van die probleem word deur die netwerk hanteer<br />

terwyl die tweede deel tipies by die gebruikers se gasheer rekenaars gesetel is.<br />

Daar word dan ook gepraat van netwerk dienste <strong>of</strong> netwerk protokolle wat die<br />

eerste deel van die probleem hanteer. Die tweede deel word deur sogenaamde<br />

hoër vlak protokolle hanteer.<br />

• Daar moet genoeg lae wees sodat geen laag te kompleks raak nie.<br />

2.2 Die OSI Model<br />

• Skep grense waar die beskrywing van dienste eenvoudig gedoen kan word<br />

en waar min interaksie oor die grens is. Kies ook grense op plekke wat<br />

ervaring as suksesvol bewys het.<br />

OSI is ’n verwysings model wat gebruik word om die kommunikasie tussen rekenaars<br />

te beskryf. Die model spesifiseer nie:<br />

• Plaas verwante funksies in dieselfde laag.<br />

• Programmeertaal/tale,<br />

• Skep ’n laag van gelokaliseerde funksies.<br />

• Bedryfstelsel(s),<br />

• Sorg dat dit moontlik is om funksies <strong>of</strong> protokolle binne ’n laag te verander<br />

sonder om die ander lae te beïnvloed indien veranderinge in tegnologie dit<br />

regverdig.<br />

• Toepassings koppelvlakke <strong>of</strong><br />

• Gebruiker koppelvlakke.<br />

• Skep vir elke laag koppelvlakke met slegs sy onderste en boonste buurman.<br />

Die OSI model word in figuur 2.1 getoon. Die netwerk protokolle bestaan uit<br />

die fisiese-, dataverbindings- en netwerk-lae, terwyl die sessie-, voorstelling- en<br />

toepassing-lae die hoër vlak protokolle opmaak. Die transport-laag kan by beide<br />

die netwerk protokolle en die hoër vlak protokolle ingedeel word. Die tussen node<br />

wat getoon is kan ook weer ’n gebruiker (<strong>of</strong> meer as een) met gepaardgaande<br />

hoër vlak protokolle verbind hê, maar wat die twee eind gebruikers (A en B) wat<br />

met mekaar kommunikeer betref is slegs die netwerk dienste deel van belang.<br />

Die groep protokolle is daarvoor verantwoordelik dat die data tussen die twee<br />

gebruikers foutloos en langs die korrekte pad gestuur word. Die take van die<br />

sewe lae kan soos volg opgesom word:<br />

Slegs die eksterne gedrag van stelsels word beskryf, onafhanklik van hulle interne<br />

konstruksie - daar word dus gespesifiseer wat op die verbindingsmedia uit<br />

gaan en wanneer, en nie hoe die rekenaars gebou moet word om die verlangde<br />

werking te verseker nie. Die OSI protokolle word gevolglik in pare gedefinieer,<br />

een spesifiseer die diens wat deur ’n entiteit gelewer word terwyl die ander die<br />

protokol <strong>of</strong> meganisme wat deur die entiteit gebruik word om die diens te lewer.<br />

Dit is dus moontlik om individuele entiteite te bou/skryf sonder enige kennis<br />

van enige van die ander entiteite.<br />

<br />

Die ISO het ’n aantal beginsels vasgestel waarvolgens die vesameling lae van die<br />

OSI model opgestel moes word. Die toepassing van hierdie beginsels het dan<br />

gelei tot die sewe lae waaruit die OSI model bestaan. Van hierdie beginsels is:


48 ADDENDUM 2. LAYER ARCHITECTURE IN DATA NETWORKS<br />

2.2. THE OSI MODEL 47<br />

<br />

• The application layer. If one has two application processes cooperating<br />

to perform a task on both sides <strong>of</strong> a link, then this layer ensures that they<br />

can understand each other. This layer therefore deals with the semantics<br />

<strong>of</strong> the information. The applications are not completely included in the<br />

OSI model and are therefore not standardised. However, there are certain<br />

procedures that are common to all application protocols and these procedures<br />

are then indeed standardised. In OSI these procedures are called<br />

common application service elements. Examples <strong>of</strong> these are for instance<br />

the procedures for the setting up and termination <strong>of</strong> links between the application<br />

processes. Then the application layer consists <strong>of</strong> these common<br />

elements that couple to the presentation layer, as well as the elements<br />

that are unique to the different applications. Service elements that are<br />

available in the OSI model, are for instance a virtual terminal service, a<br />

file transfer service and a task transfer and manipulating service<br />

<br />

• The presentation layer. Here the independence <strong>of</strong> application processes<br />

having different data representations, i.e. different syntax, is ensured. A<br />

common form for the presentation and manipulation <strong>of</strong> data is defined.<br />

Two repesentations commonly used by different computer systems are<br />

ASCII and EBCDIC, and then data are also stored in different ways in<br />

memory and on disk. The presentation layer therefore has the task to<br />

convert the data on one end to a machine independent form, which can<br />

be transmitted, and then at the receiver end to convert the data to the<br />

machine-specific form <strong>of</strong> the destination system.<br />

• The session layer. Here the dialog between the two end users is controlled.<br />

A session link first has to be established between the two end<br />

users by negotiating the parameters related to the link. The dialog between<br />

two end users can for instance be full- or half duplex. Then a<br />

synchronisation service is provided to recover from any errors if any are<br />

detected. To achieve this, synchronisation markers are placed in the data<br />

stream. Should an error then occur, recovery is performed to a fixed point,<br />

i.e. that <strong>of</strong> the last synchronisation marker before the occurence <strong>of</strong> the<br />

error. A session can also be divided into activities, which each may have<br />

its own identity. It is then possible to interrupt a session and continue<br />

with the next activity at a later stage.<br />

• The transport layer. According to ISO/IEC7498:1984 the transport<br />

layer provides transparent transmission <strong>of</strong> data from a source open system<br />

to a destination open system. The transport layer has to protect the<br />

session layer from differences that may occur in the supporting network.<br />

The supporting network may be packet switched or circuit switched, it<br />

may be a local-area network (LAN) covering a small geographic area or<br />

it may be a large wide-area network (WAN); there may be slow satellite<br />

links or land lines with relatively high error rates. However, in spite <strong>of</strong> the<br />

supporting network, the transport layer creates and maintains a point-topoint<br />

link between the two communicating session entities.<br />

Figure 2.3: Relationship between protocol data units (PDU’s), service data<br />

units (SDU’s) and protocol control information (PCI).<br />

• The network layer. This layer establishes a route through the network<br />

from source to destination and ensures that data is sent along this particular<br />

route. The service provided by the network layer is independent <strong>of</strong>


50 BYLAAG 2. LAAG-ARGITEKTURE IN DATANETWERKE<br />

2.2. DIE OSI MODEL 49<br />

• Die toepassingslaag. Hier word verseker dat twee toepassingsprosesse,<br />

wat saam werk om ’n taak aan beide kante van ’n verbinding uit te voer,<br />

mekaar kan verstaan. Dit gaan dus in hierdie laag oor die semantiek<br />

van die inligting. Die toepassings is nie volledig vervat binne in die OSI<br />

model nie en word dus nie as sulks gestandaardiseer nie. Daar is egter<br />

prosedures wat wel gemeenskaplik is aan alle toepassingsprotokolle, en dit<br />

is dan juis hierdie prosedures wat gestandaardiseer word. In OSI staan<br />

hierdie prosedures bekend as gemeenskaplike toepassings diens elemente<br />

(common application service elements). So is daar byvoorbeeld prosedures<br />

vir die opstel en terminering van verbindings tussen toepassingsprosesse.<br />

Die toepassingslaag bestaan dan uit hierdie gemeenskaplike elemente, wat<br />

met die voorstellingslaag koppel, asook die elemente wat eie is aan die<br />

verskillende toepassings. Toepassings dienste wat binne die OSI model<br />

beskikbaar is, is bv. ’n virtuele terminaal diens, lêer oordra diens en ’n<br />

taak oordra en manipulering diens.<br />

• Die voorstellingslaag. Hier word die onafhanklikheid van toepassingsprosesse<br />

van verskille in data voorstellings, dit wil sê sintaks, verseker. ’n<br />

Gemeenskaplike vorm vir die voorstelling en manipulering van data word<br />

gedefinieer. Twee voorstellings wat algemeen deur verskillende rekenaarstelsels<br />

gebruik word is ASCII en EBCDIC, verder word data op verskillende<br />

maniere in geheue en op skyf gestoor. Die voorstellingslaag is dus<br />

verantwoordelik daarvoor om data aan die een kant om te skakel na ’n<br />

masjien onafhanklike vorm wat oorgestuur kan word, en dan by die ontvang<br />

kant weer om te skakel na die masjien spesifieke vorm van die bestemming<br />

stelsel.<br />

• Die sessielaag. Hier word die dialoog tussen die twee eindgebruikers beheer.<br />

’n Sessie verbinding word eers tussen die twee eindgebruikers opgestel<br />

deurdat die parameters aangaande die verbinding onderhandel word.<br />

Die dialoog tussen twee eindgebruikers kan bv. vol- <strong>of</strong> half-dupleks wees.<br />

Verder word ’n sinkronisasie diens verskaf sodat daar herstel kan word<br />

van foute indien enige waargeneem is. Om dit te doen word sinkronisasie<br />

merkers in die datastroom geplaas. Indien daar dan ’n fout voorkom word<br />

herstel tot ’n vaste punt, nl. die sinkronisasie merker voordat die fout<br />

plaasgevind het. ’n Sessie kan ook opgedeel word in aktiwiteite, wat elk<br />

’n identiteit kan besit. Dit is dus moontlik om ’n sessie te onderbreek en<br />

op ’n later stadium met die volgende aktiwiteit aan te gaan.<br />

• Die transportlaag Volgens ISO/IEC7498:1984 verskaf die transportlaag<br />

deursigtige oordra van data vanaf ’n bron oop stelsel na ’n bestemming oop<br />

stelsel. Die tranportlaag moet die sessielaag afskerm van verskille wat in<br />

die onderliggende netwerk kan voorkom. Die onderliggende netwerk kan<br />

pakket <strong>of</strong> kring geskakel wees, dit kan ’n lokale areanetwerk wees wat oor<br />

’n klein geografiese gebied versprei is <strong>of</strong> dit kan ’n groot wye areanetwerk<br />

wees. daar kan stadige satelliet verbindings wees asook landlyne met relatiewe<br />

hoë fout tempos. Nieteenstaande die onderliggende netwerk skep<br />

en onderhou die transportlaag ’n punt-tot-punt verbinding tussen die twee<br />

kommunikerende sessie entiteite.<br />

Figure 2.3: Verwantskap tussen protokol-data-eenhede (PDE’e), diens-dataeenhede<br />

(DDE’s) en protokol-beheer-inligting (PBI).<br />

<br />

• Die netwerklaag. Hierdie laag stel ’n roete deur die netwerk op vanaf<br />

bron tot by bestemming en sorg dan dat die data oor die betrokke roete


50 ADDENDUM 2. LAYER ARCHITECTURE IN DATA NETWORKS<br />

2.2. THE OSI MODEL 49<br />

2.2.1 Services<br />

<br />

<br />

The notation (N-1), (N) and (N+1) is employed to refer to a layer (the N-th<br />

layer) and the layers immediately below it and above it. In the OSI model<br />

(N) can take on the values 1 to 7, and (N)=1 refers to the physical layer while<br />

(N)=7 refers to the application layer. Then also the word entity is used to refer<br />

to the active element(s) within a layer (Figure 2.2). The word entity may be<br />

compared to the word process which was used in operating systems, except that<br />

an entity is not something which is implemented. We therefore now refer to an<br />

(N)-entity when the active elements <strong>of</strong> layer (N) are meant. Different notations<br />

are used in the literature. For instance, layer-5 entity , (5)-entity, session entity<br />

and S-entity all refer to the same thing. The last one, where the first letter <strong>of</strong><br />

the layer name is used, is frequently found in OSI standard documents.<br />

An (N)-entity performs (N) functions and in the process provides a set <strong>of</strong> (N) facilities<br />

to the (N+1)-entity above it. These (N) facilities are called (N)-services.<br />

In order to provide the (N) services to the (N+1)-entity above it, the (N)-entity<br />

on its part makes use <strong>of</strong> (N-1)-services from the (N-1)-entity below it. The (N)entity<br />

providing an (N)-service is known as an (N)-service provider, and because<br />

it makes use <strong>of</strong> an (N-1)-service, it is know as an (N-1)-service user. There is<br />

a conceptual point, or interface, on the boundary between the layers (N) and<br />

(N+1) where the (N)-service is provided to the (N+1)-entity. This point is<br />

known as an (N)-service access point, ((N)-DTP, (N)-service-access-point, (N)-<br />

SAP).<br />

Figure 2.4: Multiplexing and de-multiplexing by an (N)-entity<br />

When two application entities (on the same system or on different systems) are<br />

to communicate with each other, they make use <strong>of</strong> presentation services provided<br />

by the presentation entities under them. They are therefore known as<br />

presentation service users. The two application entities communicating with<br />

each other are called (peer entities) because they are on the same layer. The<br />

communication process consists <strong>of</strong> three phases: the link set-up phase, the data<br />

transmission phase and the link termination phase. During all three <strong>of</strong> the<br />

phases use is made <strong>of</strong> the presentation layers. During the link set-up phase,<br />

a number <strong>of</strong> parameters are negotiated which then will determine the nature<br />

<strong>of</strong> the data transmission phase. As soon as the link is established, the data<br />

transmission stage commences. During the data tansmission phase it is necessary<br />

that errors are detected and corrected. It may also be necessary for the<br />

data to be divided into units and be numbered on the dispatching side, and<br />

then to be rearranged and combined at the receiving side. Other (N)-services<br />

that are provided by an (N)-entity to the (N+1)-entity above it, includes flow<br />

control, routing, synchronisation, etc. As soon as the data transmission phase<br />

is completed, the link termination phase is commenced, during which the link<br />

is terminated.<br />

Figure 2.5: Division and combination by an (N)-entity<br />

the type (or number <strong>of</strong> types) <strong>of</strong> communication media and includes all<br />

routing and internetwork functions. Furthermore, the flow control is also<br />

managed by this layer. Flow control involves the spreading <strong>of</strong> the load<br />

over the network to avoid congestion at any particular link.<br />

• The data link layer. This layer ensures the orderly and error-free transmission<br />

<strong>of</strong> data across the link between two nodes. These are not necessarily<br />

the source and destination nodes, but may be every pair <strong>of</strong> nodes<br />

on the route between the source and the destination. Any transmission<br />

errors occuring have to be corrected here.<br />

In setting up a link between two application entities, a virtual link, known as<br />

a (peer-to-peer) link, is established. The two application entities therefore do<br />

not communicate directly with each other, but through the two presentation<br />

entities below them. Between the two presentation entities a peer-to-peer link<br />

is also established and they also do not communicate directly with each other,<br />

but through the session entities below them. Between the two session entities a<br />

peer-to-peer link is once again established...... until finally two physical entities<br />

are communicating directly with each other by means <strong>of</strong> the communication<br />

• The physical layer. Here the mechanical, electrical/optical, functional<br />

and procedure characteristics are specified, in order to establish physical<br />

links, maintain them and terminate them so that streams <strong>of</strong> bits may be<br />

transported across them. Only individual bits are recognised, not characters<br />

or messages.


52 BYLAAG 2. LAAG-ARGITEKTURE IN DATANETWERKE<br />

2.2. DIE OSI MODEL 51<br />

Figure 2.5: Opdeel en samevoeging deur ’n (N)-entiteit.<br />

Figure 2.4: Multipleksering en de-multipleksering deur ’n (N)-entiteit.<br />

as (N)-dienste bekend. Om die (N)-dienste aan die (N+1)-entiteit bo hom te<br />

verskaf, maak die (N)-entiteit weer gebruik van (N-1)-dienste van die (N-1)entiteit<br />

onder hom. Die (N)-enteiteit wat ’n (N)-diens verskaf staan bekend<br />

as ’n (N)-diens-verskaffer, en aangesien dit van ’n (N-1)-diens gebruik maak<br />

staan dit as ’n (N-1)-diens-gebruiker bekend. Daar is ’n konseptuele punt, <strong>of</strong><br />

koppelvlak, op die grens tussen lae (N) en (N+1) waar die (N)-diens aan die<br />

(N+1)-entiteit verskaf word. Hierdie punt staan as ’n (N)-diens-toegangs-punt<br />

((N)-DTP, (N)-service-access-point, (N)-SAP) bekend.<br />

gestuur word. Die diens wat deur die netwerklaag verskaf word is onafhanklik<br />

van die tipe (asook aantal tipes) kommunikasie media, en sluit<br />

alle roetering en tussen-netwerk funksies in. Verder word vloeibeheer ook<br />

deur hierdie laag hanteer. Vloeibeheer bestaan daaruit dat die lading oor<br />

die netwerk versprei word en kongestie op verbindings voorkom word.<br />

• Die dataverbindingslaag. Hierdie laag verseker die ordelike en foutvrye<br />

oordra van data oor ’n verbinding tussen twee nodes, nie noodwendig die<br />

bron en bestemming nodes nie, maar tussen elke paar nodes op die roete<br />

tussen die bron en bestemming. Enige transmissie foute wat voorkom<br />

moet hier gekorrigeer word.<br />

Wanneer twee toepassings-entiteite (op dieselfde stelsel <strong>of</strong> op verskillende stelsels)<br />

met mekaar wil kommunikeer maak hulle gebruik van voorstellings-dienste wat<br />

deur die voorstellings-entiteite onder hulle verskaf word, hulle staan dus ook as<br />

voorstellings-diens-gebruikers bekend. Die twee toepassings-entiteite wat met<br />

mekaar kommunikeer staan as gelyke entiteite (peer entities) bekend aangesien<br />

hulle op dieselfde laag is. Die kommunikasie proses bestaan uit drie fases, die<br />

verbinding opstel fase, die data oordrag fase en die verbinding terminering fase.<br />

Tydens al die drie fases word daar van die dienste van die voorstellingslae gebruik<br />

gemaak. Tydens die verbinding opstel fase word ’n versameling parameters onderhandel<br />

wat dan die aard van die data oordrag fase gaan bepaal. Sodra die<br />

verbinding opgestel is word daar oorgegaan na die data oordrag fase. Tydens<br />

die data oordrag fase is dit dan nodig dat foute waargeneem en herstel moet<br />

word. Verder is dit moontlik dat data in eenhede opgedeel en genommer moet<br />

word aan die stuur kant en weer ge-orden en saamgevoeg moet word aan die<br />

ontvang kant. Verdere (N)-dienste deur ’n (N)-entiteit aan die (N+1)-entiteit<br />

bokant hom verskaf word tydens die data oordrag fase is vloei beheer, roetering,<br />

sinkronisasie ens. Sodra die data oordrag fase voltooi is word daar oorgegaan<br />

na die verbinding terminering fase waartydens die verbinding getermineer word.<br />

• Die fisieselaag. Hier word meganiese, elektriese/optiese, funksionele en<br />

prosedure karakteristieke gespesifiseer wat daarop gemik is om fisiese verbindings<br />

op te stel, te onderhou en te termineer sodat bisstrome daaroor gestuur<br />

kan word. Slegs individueele bisse word herken, nie karakters <strong>of</strong><br />

boodskappe nie.<br />

2.2.1 Dienste<br />

In die opstel van ’n verbinding tussen twee toepassing-entiteite word ’n virtuele<br />

verbinding wat as ’n gelyke-tot-gelyke (peer-to-peer) verbinding bekend staan<br />

opgestel. Die twee toepassing-entiteite kommunikeer dus nie direk met mekaar<br />

nie, maar wel deur die twee voorstelling-entiteite onder hulle. Tussen die twee<br />

voorstelling-entiteite word weer ’n gelyke-tot-gelyke verbinding opgestel en kommunikeer<br />

die twee entiteite ook nie direk met mekaar nie, maar wel deur die<br />

sessie-entiteite onder hulle. Tussen die twee sessie-entiteite word weer ’n gelyke-<br />

Die notasie (N-1), (N) en (N+1) word gebruik om na ’n laag (die N-de laag) en<br />

die lae direk onder en bo dit te verwys. Met betrekking tot die OSI model kan<br />

(N) die waardes 1 tot 7 aanneem, en verwys (N)=1 na die fisiese-laag terwyl<br />

(N)=7 na die toepassingslaag verwys. Verder word daar van die term entiteit gebruik<br />

gemaak om te verwys na die aktiewe element(e) binne ’n laag (figuur 2.2).<br />

Die term entiteit kan vergelyk word met die term proses wat by bedryfstelsels<br />

gebruik is, behalwe vir die feit dat ’n entiteit nie iets is wat geïmplimenteer is<br />

nie. Daar word dus nou verwys na ’n (N)-entiteit wanneer die aktiewe elemente<br />

van laag (N) ter sprake is. Verskeie skryfwyses kom in die literatuur voor, so<br />

verwys laag-5-entiteit, (5)-entiteit, sessie-entiteit en S-entiteit almal na dieselfde<br />

ding. Laasgenoemde skryfwyse, nl. die eerste letter van die laag se naam kom<br />

algemeen in OSI standaard dokumente voor.<br />

<br />

’n (N)-entiteit verrig (N)-funksies om sodoende ’n versameling (N)-fasilitiete<br />

aan die (N+1)-entiteit bo hom beskikbaar te stel. Hierdie (N)-fasiliteite staan


52 ADDENDUM 2. LAYER ARCHITECTURE IN DATA NETWORKS<br />

2.2. THE OSI MODEL 51<br />

<br />

Application layer<br />

Transport layer<br />

Internet layer<br />

Netwerk-interface layer<br />

Physical layer<br />

<br />

Figure 2.9: TCP/IP architecture<br />

Figure 2.6: Segmentation and reconstruction<br />

one-to-one. Multiplexing is achieved by having one (N)-entity providing a service<br />

to a number <strong>of</strong> (N+1)-entities (Figure 2.4). The inverse <strong>of</strong> this (at the<br />

receiving side) is then de-multiplexing. Furthermore, it is possible that a single<br />

(N+1)-entity would use the services <strong>of</strong> a number <strong>of</strong> (N)-entities. This process<br />

is known as (splitting) while the inverse is known as (recombining) (Figure 2.5).<br />

Sometimes maximum lengths are prescribed for the PDU which is to be exchanged<br />

between two peer entities. It may therefore be necessary for an (N)-<br />

SDU to be divided (segmented) into a number <strong>of</strong> (N)-PDU’s and that the (N)-<br />

PDU’s again be recombined into a single (N)-SDU (Figure 2.6). It is also possible<br />

that a number <strong>of</strong> (N+1)-PDU’s can be combined at a (N)-DTP into a single<br />

(N)-SDU. At the receiving end the (N)-SDU is then split at the (N)-DTP into<br />

the original (N+1)-PDE’de (Figure 2.7). A final possiblity is that a number<br />

<strong>of</strong> (N)-SDU’s are blocked by an (N)-entity in a single (N)-PDU which is again<br />

de-blocked at the receiving end by the receiving (N)-entity into the original<br />

(N)-SDU’s (Figure 2.8).<br />

Figure 2.7: Combination and separation<br />

This discussion gives an indication <strong>of</strong> the complexity (and almost incomprehensibility?)<br />

<strong>of</strong> OSI-speak. We have not even touched upon the four primitive<br />

services (request, indication, response and confirmation), time diagrams, connected<br />

and unconnected services, confirmed and unconfirmed services, the three<br />

communication phases on each layer for different types <strong>of</strong> communication, etc,<br />

etc, etc...<br />

2.3 TCP/IP<br />

link between them.<br />

When the application entity has to send data to its peer entity it submits the<br />

data together with control information in the form <strong>of</strong> an application-protocoldata-unit,<br />

(application-PDU) to the presentation entity below it. The application-<br />

PDU is cast at the application-DTP on a presentation-service-data-unit, (presentation-<br />

SDU). The presentation entity then adds presentation-protocol-control-information,<br />

(presentation-PCI) to form a presentation-PDU which it submits to the session<br />

entity below it. To put it generally: an (N+1)-entity submits an (N+1)-PDU<br />

to the (N)-entity below it. At the (N)-DTP the (N+1)-PDU is imaged on an<br />

(N)-SDU and to this the (N)-entity then adds (N)-PCI to form an (N)-PDU<br />

(Figure 2.3). This (N)-PDU is then submitted to the (N-1)-entity... On the receiving<br />

side the process is then deconvoluted so that the application entity ends<br />

up with the original application-PDU which had been sent to it by its peer.<br />

The five layers <strong>of</strong> TCP/IP (Figure 2.9) are also divided into two groups, i.e.<br />

the application services, which consist <strong>of</strong> the application layer, and the network<br />

services which consist <strong>of</strong> the physical-, network interface- internet- and<br />

transport layers.<br />

The relationship between service users and service providers is not necessarily<br />

All the end user services which in the OSI are incorporated into the top three<br />

layers, are here handled by the applications layer. Available applications are inter<br />

alia TELNET (virtual terminal), FTP (file transfer) and RJE (task transfer<br />

and manipulation).<br />

The transport layer <strong>of</strong> the TCP/IP provides exactly the same services as the<br />

transport layer <strong>of</strong> the OSI.<br />

While the network layer <strong>of</strong> OSI provides both virtual ring and datagram services,<br />

the internet layer <strong>of</strong> TCP/IP provides only a datagram service. This layer<br />

contains the functions required to send data from a source code via a multitude<br />

Figure 2.8: Blocking and de-blocking


54 BYLAAG 2. LAAG-ARGITEKTURE IN DATANETWERKE<br />

2.2. DIE OSI MODEL 53<br />

Figure 2.8: Blokking en ontblokking.<br />

Figure 2.6: Segmentasie en rekonstruksie.<br />

Toepassingslaag<br />

Transportlaag<br />

Internetlaag<br />

Netwerk-koppelvlaklaag<br />

Fisiese-laag<br />

Figure 2.9: TCP/IP argitektuur.<br />

Daar word soms maksimum lengtes bepaal vir die PDE wat tussen twee gelyke<br />

entiteite uitgeruil word. Dit kan dus nodig word dat ’n (N)-DDE in ’n aantal<br />

(N)-PDE’de opgedeel (gesegmenteer) word en dat die (N)-PDE’de weer by die<br />

ontvang kant saamgevoeg word in ’n enkele (N)-DDE (figuur 2.6). Verder kan<br />

’n aantal (N+1)-PDE’de by ’n (N)-DTP saamgevoeg word in ’n enkele (N)-<br />

DDE. By die ontvang kant word die (N)-DDE weer by die (N)-DTP geskei in<br />

die oorspronklike (N+1)-PDE’de (figuur 2.7). ’n Laaste moontlikheid is dat ’n<br />

aantal (N)-DDE’de deur ’n (N)-entiteit geblok word in ’n enkele (N)-PDE wat<br />

weer by die ontvang kant deur die ontvangende (N)-entiteit ontblok word in die<br />

oorspronklike (N)-DDE’de (figuur 2.8).<br />

Figure 2.7: Samevoeging en skeiding.<br />

tot-gelyke verbinding opgestel... Uiteindelik is dit die twee fisiese-entiteite wat<br />

direk met mekaar kommunikeer deur middel van die kommunikasie pad tussen<br />

hulle.<br />

Hierdie bespreking gee ’n aanduiding van die kompleksiteit (en bykans onverstaanbaarheid?)<br />

van OSI-speak. Wat nie aangeraak is, is die vier primitiewe<br />

dienste (versoek, indikasie, respons en bevestiging), tyd-diagramme verbinde en<br />

onverbinde dienste, bevestigde en onbevestigde dienste, die drie kommunikasie<br />

fases op elke laag vir verskillende tipes kommunikasie, ens, ens, ens...<br />

2.3 TCP/IP<br />

Die vyf lae van TCP/IP (figuur 2.9) word ook in twee groepe gedeel, nl. die<br />

toepassingsdienste wat bestaan uit die toepassingslaag en die netwerkdienste<br />

wat bestaan uit die fisiese-, netwerk-koppelvlak-, internet- en transport-lae.<br />

Die toepassing-entiteit wat data aan sy gelyke entiteit wil stuur handig die data<br />

tesame met beheer inligting in die vorm van ’n toepassing-protokol-data-eenheid<br />

(toepassing-PDE, application-protocol-data-unit, application-PDU) oor aan die<br />

voorstelling-entiteit onder hom. Die toepassing-PDE word by die toepassing-<br />

DTP op ’n voorstelling-diens-data-eenheid (voorstelling-DDE, presentation-servicedata-unit,<br />

presentation-SDU) afgebeeld. Hierby voeg die voorstelling-entiteit<br />

weer voorstelling-protokol-beheer-inligting (voorstelling-PBI,presentation-protocolcontrol-information,<br />

presentation-PCI) om ’n voorstelling-PDE te vorm wat hy<br />

aan die sessie-entiteit onder hom oorhandig. In die algemeen: ’n (N+1)-entiteit<br />

handig ’n (N+1)-PDE aan die (N)-entiteit onder hom oor. By die (N)-DTP<br />

word die (N+1)-PDE op ’n (N)-DDE afgebeeld, hierby voeg die (N)-entiteit<br />

dan (N)-PBI om ’n (N)-PDE te vorm (figuur 2.3). Hierdie (N)-PDE word dan<br />

aan die (N-1)-entiteit oorhandig... By die ontvang kant word die proses weer ontrafel<br />

sodat die toepassing-entiteit eindig met die oorspronklike toepassing-PDE<br />

wat deur sy gelyke aan hom gestuur is.<br />

Al die eindgebruiker dienste wat by OSI in die boonste drie lae vervat is word<br />

hier deur die toepassingslaag hanteer. Beskikbare toepassings is onder andere<br />

TELNET (virtuele terminaal), FTP (lêer oordrag) en RJE (taak oordra en<br />

manipulering).<br />

Die transportlaag van TCP/IP lewer basies dieselfde dienste as OSI se transportlaag.<br />

Die verwantskap tussen diens gebruikers en diens verskaffers is nie noodwendig<br />

een-tot-een nie. Multipleksering word bewerkstellig deurdat een (N)-entiteit ’n<br />

diens aan ’n aantal (N+1)-entiteite verskaf (figuur 2.4). Die omgekeerde (by die<br />

ontvang kant) hiervan is dan de multipleksering. Verder is dit ook moontlik dat<br />

’n enkele (N+1)-entiteit die dienste van ’n aantal (N)-entiteite gebruik. Hierdie<br />

proses staan as opdeel (splitting) bekend terwyl die omgekeerde as samevoeging<br />

(recombining) bekend staan (figuur 2.5).


2.4. THE X.25 PROTOCOL 53<br />

<br />

OSI model X.25 protocol<br />

Application layer<br />

Presentation layer<br />

Session layer<br />

Transport layer<br />

Network layer Packet layer<br />

Data link layer Frame layer<br />

Physical layer Physical layer<br />

<br />

Addendum 3<br />

The physical layer<br />

Figure 2.10: The relationship between the OSI model and X.25 protocol<br />

<strong>of</strong> networks to a destination.<br />

The network interface layer <strong>of</strong> TCP/IP corresponds to a combination <strong>of</strong> the<br />

data link layer <strong>of</strong> OSI and the network dependent parts <strong>of</strong> its network layer.<br />

3.1 Introduction<br />

2.4 The X.25 protocol<br />

The lowest layer <strong>of</strong> the OSI model, the physical layer, deals with the conversion<br />

<strong>of</strong> a stream <strong>of</strong> bits to electrical or optical signals, the transmission <strong>of</strong> the signals<br />

through a transmission medium from one point <strong>of</strong> the network to the next,<br />

and the conversion <strong>of</strong> the electrical or optical signals to a stream <strong>of</strong> bits at the<br />

destination.<br />

3.1.1 Linking modes<br />

The X.25 network interface was approved as a recommendation in 1976 by the<br />

CCITT. Revisions followed in 1980 and in 1984. The connection <strong>of</strong> terminals,<br />

computers and other appliances to a packet linked network, is specified by X.25.<br />

In X.25 terminology the appliances that are coupled are called DTE’s (dataterminal<br />

equipment), while the network equipment or node to which the DTE is<br />

coupled, is called a DCE (data circuit-terminating equipment). A DTE typically<br />

has the role <strong>of</strong> communicating with another DTE via the network. The access<br />

<strong>of</strong> the DTE to the network is controlled by the DCE to which it is coupled.<br />

The network is responsible for the handling <strong>of</strong> the communication between the<br />

two DCE’s to which the communicating DTE’s are coupled. Here X.25 only<br />

specifies the communication between DTE and DCE.<br />

There are basically two ways in which the electrical signal representing the bits<br />

may be transmitted. The one is the parallel transmission mode. By this method<br />

there are a number <strong>of</strong> links between the source and destination. A number <strong>of</strong> bits<br />

can therefore be transmitted simultaneously, one bit per link. The transmission<br />

delays at the different links may differ, for instance because the physical lengths<br />

<strong>of</strong> the different conducters may be different. The result is that the bits <strong>of</strong> a data<br />

unit may arrive at different times at the destination. This method is therefore<br />

only suitable for the transmission <strong>of</strong> data over short distances and is normally<br />

used between sub-units <strong>of</strong> the computer system (such as to the printer).<br />

The X.25 protocol is a three-layer protocol <strong>of</strong> which the layers correspond to<br />

the bottom three OSI layers. The relationship is illustrated in Figure 2.10.<br />

The other method is the bit-serial transmission <strong>of</strong> data. Here use is made <strong>of</strong> a<br />

single link (such as a pair <strong>of</strong> conductors), to transmit the data. Only one bit<br />

can be transmitted per time, so that they are sent one-by-one. This method<br />

is generally used when data are to be sent over long distances and this is the<br />

method we shall consider henceforth.<br />

3.1.2 Communication modes<br />

Communication between two parties may take place in various ways. During<br />

a speech, for instance, information is mainly conveyed from one party to the<br />

other. However, during a conversation, information is being exchanged in both<br />

directions between two persons, usually alternating. It may also happen that<br />

information is exchanged during a conversation or a speech in both directions<br />

55


2.4. DIE X.25 PROTOKOL 55<br />

Bylaag 3<br />

OSI model X.25 protokol<br />

Toepassingslaag<br />

Voorstellingslaag<br />

Sessie-laag<br />

Transportlaag<br />

Netwerklaag Pakketlaag<br />

Dataverbindingslaag Raamlaag<br />

Fisiese-laag Fisiese-laag<br />

Die Fisiese laag<br />

Figure 2.10: Die verwantskap tussen die OSI model en X.25 protokol.<br />

Terwyl OSI se netwerklaag beide virtuele kring en datagram dienste verskaf word<br />

slegs ’n datagram diens deur TCP/IP se Internetlaag verskaf. Hierdie laag bevat<br />

die funksies wat nodig is om data vanaf ’n bron node, oor veelvuldige netwerke,<br />

na ’n bestemming node te stuur.<br />

3.1 Inleiding<br />

Die netwerk-koppelvlak-laag van TCP/IP kom ooreen met ’n kombinasie van<br />

OSI se dataverbindingslaag asook die netwerk afhanklike dele van die netwerklaag.<br />

Die onderste laag van die OSI model, die fisiese laag, het te doen met die<br />

omskakeling van ’n stroom bisse na elektriese <strong>of</strong> optiese seine, die stuur van<br />

die die seine deur ’n transmissie medium van een punt van die netwerk na ’n<br />

ander, en die omskakeling van elektriese <strong>of</strong> optiese seine na ’n stroom bisse by<br />

die bestemming.<br />

2.4 Die X.25 protokol<br />

3.1.1 Verbindingsmodusse<br />

Daar is basies twee wyses waarop die elektriese sein wat die bisse voorstel oorgestuur<br />

kan word. Die een is parallelle oorstuur modus. Met hierdie metode is daar<br />

’n aantal verbindings tussen die oorsprong en bestemming. ’n Aantal bisse kan<br />

dus gelyktydig, ’n bis per verbinding, oorgestuur word. Die voortplanting vertragings<br />

op die verskillende verbindings kan van mekaar verskil, bv. omdat die<br />

fisiese lengtes van die verskillende verbindings van mekaar verskil. Die gevolg<br />

is dat die bisse van ’n data eenheid op verskillende tye by die bestemming kan<br />

aankom. Hierdie metode is dus slegs geskik vir die stuur van data oor kort<br />

afstande en word gewoonlik tussen subeenhede van die rekenaarstelsel gebruik<br />

(bv. na die drukker).<br />

Die X.25 netwerk koppelvlak is in 1976 as ’n aanbeveling deur die CCITT<br />

goedgekeur. Hersienings het in 1980 en 1984 gevolg. Die verbinding van terminale,<br />

rekenaars en ander toestelle aan ’n pakket-geskakelde netwerk word deur<br />

X.25 gespesifiseer. In X.25 terminologie word die toestelle wat gekoppel word<br />

DTE’s (data-terminal equipment) genoem terwyl die netwerk toerusting <strong>of</strong> node<br />

waaraan die DTE gekoppel word as ’n DCE (data circuit-terminating equipment)<br />

bekend staan. ’n DTE wil tipies met ’n ander DTE kommunikeer deur<br />

middel van die netwerk. Die toegang van die DTE tot die netwerk word beheer<br />

deur die DCE waaraan dit gekoppel is. Die netwerk is verantwoordelik vir die<br />

hantering van die kommunikasie tussen die twee DCE’s waaraan die kommunikerende<br />

DTE’s gekoppel is. X.25 spesifiseer slegs die kommunikasie tussen<br />

DTE en DCE.<br />

Die X.25 protokol is ’n drie laag protokol waarvan die lae ooreenstem met die<br />

onderste drie OSI lae. Die verwantskap word in figuur 2.10 getoon.<br />

Die ander metode is die bis-seriale transmissie van data. Hier word van ’n enkele<br />

verbinding (paar geleiers) gebruik gemaak om die data oor te stuur. Slegs een<br />

bis kan dus op ’n slag gestuur word, dus word die bisse een na die ander gestuur.<br />

Hierdie metode word algemeen gebruik wanneer data oor lang afstande gestuur<br />

moet word en is die metode wat voortaan beskou word.<br />

3.1.2 Kommunikasiemodusse<br />

Wanneer kommunikasie tussen twee partye geskied kan dit op verskeie maniere<br />

geskied. Tydens ’n toespraak word inligting ho<strong>of</strong>saaklik van die een party na die<br />

ander oorgedra, aan die ander kant word inligting gedurende ’n gesprek tussen<br />

twee persone in beide rigtings, gewoonlik alternerend, uitgeruil. Dit kan egter<br />

<br />

57


3.2. TRANSMISSION MEDIA 57<br />

56 ADDENDUM 3. THE PHYSICAL LAYER<br />

<br />

firstly <strong>of</strong> an encoding method which does not only contain information about the<br />

values <strong>of</strong> the bits, but also sufficient information for the receiver to synchronise<br />

its clock with that <strong>of</strong> the sender. Each frame is also preceded by one or more<br />

reserved characters which may be used to establish byte synchronisation. These<br />

characters are called “sync” characters. Finally. each frame is preceded by a<br />

frame start character and is concluded by a frame end character. These two<br />

characters are used to establish frame synchronisation.<br />

simultaneously. Similarly one can distinguish between three communication<br />

modes when data are exchanged between two pieces <strong>of</strong> computer hardware:<br />

<br />

• Simplex: Data is transmitted in one direction only. An example is the<br />

communication between a computer and a printer. Data are being sent<br />

to the printer, but no data is received from the printer. (In this case<br />

the control signals transmitted from the printer to the computer are not<br />

considered as data.)<br />

3.2 Transmission media<br />

• Half-duplex: Data are sent in an alternating fashion one way or the other<br />

between two appliances. Each <strong>of</strong> these appliances can then only send or<br />

receive at a specific time and they have to switch between sending and<br />

receiving.<br />

The transmission media used in todays networks may be divided into two main<br />

categories. These categories are firstly conducting media like cables and optical<br />

fibres, and secondly radiative media, like radio or satellite broadcasting.<br />

• (Full) Duplex: In this case data are sent simultaneously in both directions<br />

between two appliances. Both appliances must therefore be able to send<br />

and receive simultaneously.<br />

• Open pair conductors<br />

Open pair conductors are the simplest and cheapest type <strong>of</strong> transmission<br />

medium. The two conductors are isolated from each other electrically, but<br />

is electromagnetically open. This type <strong>of</strong> link is satisfactory for connecting<br />

appliances at short distances and low bit rates. The signal is normally in<br />

the form <strong>of</strong> a voltage difference between the two conductors. With this<br />

medium one should guard against a cross coupling <strong>of</strong> signals on different<br />

conductors. Then also is noise pick-up a serious problem. It may typically<br />

happen that noise is picked up by one <strong>of</strong> the pair <strong>of</strong> conductors, resulting<br />

in a higher or lower voltage difference.<br />

3.1.3 Transmission modes<br />

Normally data are sent as multiples <strong>of</strong> fixed-length units between two computers.<br />

This fixed-length unit is normally eight bits and is called a byte, an octet or<br />

a character. Each character, (byte, octet) is sent bit-serial. The destination<br />

therefore receives a string <strong>of</strong> signals representing the bits <strong>of</strong> a character. The<br />

destination appliance has to be able to perform three tasks in order to make<br />

sense <strong>of</strong> the string <strong>of</strong> signals it receives:<br />

• Twisted pair<br />

Beter immunity against noise may be achieved by using a twisted pair. In<br />

this case the two conductors are twisted around each other. When noise<br />

is picked up, it would be picked up by both conductors, and the voltage<br />

difference between the two conductors will not change. Twisted pairs may<br />

also sometimes be shielded; then we call them a shielded twisted pair. One<br />

disadvantage occuring for a twisted pair is the skin effect. As the bitrate,<br />

and therefore the frequency, increases, the current in the conductors will<br />

flow ever closer to the surface. Less <strong>of</strong> the cross section <strong>of</strong> the conductor is<br />

used, and consequently an increase in the resistance will occur. This means<br />

that the signal is more attenuated at higher frequencies than at lower<br />

frequencies. A further loss is experienced at higher frequencies because <strong>of</strong><br />

radiation.<br />

1. It must be able to decide when a bit starts in order to evaluate each bit.<br />

2. The start and end <strong>of</strong> each character has to be identified.<br />

3. The start and end <strong>of</strong> each message (which is a string <strong>of</strong> characters) have<br />

to be identified. A message is also known as a frame.<br />

These three tasks are also called bit- or clock synchronisation, byte- or character<br />

synchronisation and block- or frame synchronisation.<br />

Synchronisation is normally achieved in one <strong>of</strong> two ways. The method depends<br />

on whether the clocks <strong>of</strong> the two DTU’s run independently or whether the clocks<br />

are synchronised.<br />

• Coaxial cable<br />

The disadvantages experienced with a twisted pair, namely that <strong>of</strong> radiation<br />

and the surface effect, are greatly reduced in coaxial cables. Coaxial<br />

cables are also more immune against noise. Very high data rates are possible,<br />

even as high as 400 Mbps.<br />

In the case where the clocks run independently we call it asynchronous transmission.<br />

In this case the bit- and byte resynchronisation is done at the beginning<br />

<strong>of</strong> every byte. This method is usually employed when the characters that are to<br />

be transmitted are generated at random intervals, for instance, when they are<br />

typed on a keyboard. There are therefore random intervals (which are relatively<br />

long) between characters. There can be no frame synchronisation in the case <strong>of</strong><br />

asynchronous transmission.<br />

• Optical fibre<br />

In optical fibres the signal is in the form <strong>of</strong> a light ray. Very high data rates<br />

(1 Gbps and higher) are possible and a further advantage is that optical<br />

The second way <strong>of</strong> synchronisation is synchronous transmission. This method<br />

is used especially when large blocks <strong>of</strong> data are to be sent. The block <strong>of</strong> data<br />

is sent as a continuous stream <strong>of</strong> bits without any delay between every pair<br />

<strong>of</strong> consecutive bytes. To retain the three levels <strong>of</strong> synchronisation, use is made


3.2. TRANSMISSIE MEDIA 59<br />

58 BYLAAG 3. DIE FISIESE LAAG<br />

word as ’n aaneenlopende stroom bisse gestuur sonder dat daar ’n vertraging<br />

tussen elke paar opeenvolgende grepe is. Om die drie vlakke van sinkronisasie te<br />

kan handhaaf word daar eerstens van ’n enkodering metode gebruik gemaak wat<br />

nie net inligting oor die bisse se waardes bevat nie maar ook genoeg inligting<br />

om dit vir die ontvanger moontlik te maak om sy klok met die sender se klok<br />

te sinkroniseer. Verder word elke raam deur een <strong>of</strong> meer gereserveerde karakters<br />

voorafgegaan wat gebruik kan word om greepsinkronisasie te bewerkstellig.<br />

Hierdie karakters staan as “sync” karakters bekend. Laastens word elke raam<br />

ook deur ’n begin van raam karakter voorafgegaan en afgesluit met ’n einde van<br />

raam karakter. Hierdie twee karakters word gebruik om raamsinkronisasie te<br />

bewerkstellig.<br />

wees dat inligting gedurende ’n toespraak <strong>of</strong> gesprek in beide rigtings gelyktydig<br />

uitgeruil word. Op dieselfde wyse kan daar tussen drie kommunikasiemodusse<br />

onderskei word wanneer data tussen twee stukke rekenaar toerusting uitgeruil<br />

word:<br />

• Simpleks: Data word slegs in een rigting oorgedra. ’n Voorbeeld is is die<br />

kommunikasie tussen ’n rekenaar en drukker, data word na die drukker<br />

gestuur maar geen data word van die drukker ontvang nie. (Ons beskou<br />

die beheerseine wat deur die drukker na die rekenaar gestuur word nie as<br />

data nie.)<br />

3.2 Transmissie media<br />

• Half-dupleks: Data word alternerend heen en weer tussen twee stukke<br />

toerusting gestuur. Elke stuk toerusting kan tipies slegs stuur <strong>of</strong> ontvang<br />

en dus moet hulle tussen die stuur en ontvang kan skakel.<br />

Die transmissie media wat in hedendaagse rekenaarnetwerke gebruik word kan in<br />

twee breë katogorieë opgedeel word. Hierdie kategorieë is eerstens die geleidende<br />

media soos kabels en optiese vesel en tweedens uitstralende media waaronder<br />

radio uitsendings en die gebruik van satelliete val.<br />

• (Vol-)Dupleks: Data word hier gelyktydig in beide rigtings tussen twee<br />

stukke toerusting gestuur. Beide stukke toerusting moet dus gelyktydig<br />

kan stuur en ontvang.<br />

3.1.3 Transmissiemodusse<br />

• Oop paar geleiers.<br />

Oop paar geleiers is die eenvoudigste en goedkoopste tipe transmissie<br />

medium. Die twee geleiers is elektries van mekaar geisoleer maar is elektromagneties<br />

oop. Hierdie tipe verbinding is aanvaarbaar om toerusting<br />

oor kort afstande en teen lae bistempos met mekaar te verbind. Die sein<br />

is gewoonlik in die vorm van ’n spanning verskil tussen die twee geleiers.<br />

Daar moet met hierdie tipe medium gewaak word teen kruiskoppeling van<br />

seine op verskillende geleierpare. Verder is die optel van ruis ’n groot<br />

probleem. Dit kan tipies gebeur dat ruis deur slegs een van die geleiers<br />

in ’n paar opgetel word sodat die ’n kleiner <strong>of</strong> groter resulterende spanningsverskil<br />

verkry word.<br />

Data word gewoonlik as veelvoude van ’n vaste lengte eenheid tussen twee rekenaars<br />

gestuur. Die vaste lengte eenheid is gewoonlik agt bisse en word ’n greep,<br />

oktet <strong>of</strong> karakter genoem. Elke karakter (greep, oktet) word bis-seriaal gestuur.<br />

Die bestemming ontvang dus ’n string seine wat die bisse van die karakter voorstel.<br />

Daar is drie take wat die bestemming moet kan uitvoer om in staat te wees<br />

om sin te maak van die string seine wat dit ontvang:<br />

1. Dit moet kan vasstel wanneer ’n bis begin om sodoende elke bis se waarde<br />

te kan vasstel.<br />

2. Die begin en einde van elke karakter moet geïdentifiseer word.<br />

• Vlegpaar.<br />

Beter ruis immuniteit kan verkry word met die gebruik van ’n vlegpaar.<br />

Hier is die twee geleiers om mekaar gedraai. Indien ruis opgetel word<br />

sal dit deur beide geleiers opgetel word, gevolglik sal die spanning verskil<br />

tussen die twee geleiers nog dieselfde wees. Vlegpare word soms ook<br />

afgeskerm, dan praat ons van ’n afgeskermde vlegpaar. ’n Nadeel wat by<br />

vlegpaar ’n rol speel is die oppervlakeffek (skin effect). Soos die bistempo,<br />

en dus die frekwensie, toeneem sal die stroom in die geleiers al nader aan<br />

die oppervlak vloei. Minder van die geleier se deursnee word gebruik en<br />

gevolglik is daar ’n toename in weerstand. Die sein word dus meer verswak<br />

by hoër frekwensies as by lae frekwensies. Verdere verliese word by hoë<br />

frekwensies ondervind as gevolg van uitstraling.<br />

3. Die begin en einde van elke boodskap (string karakters) moet geïdentifiseer<br />

word. ’n Boodskap staan ook as ’n raam bekend.<br />

Hierdie drie take staan ook as bis- <strong>of</strong> kloksinkronisasie, greep- <strong>of</strong> karaktersinkronisasie<br />

en blok- <strong>of</strong> raamsinkronisasie bekend.<br />

Sinkronisasie word in die algemeen op een van twee maniere verkry. Die metode<br />

hang af van <strong>of</strong> die twee DTE’s se klokke onafhanklik van mekaar loop en <strong>of</strong> die<br />

klokke met mekaar gesinkroniseer is.<br />

• Koaksiale kabel.<br />

Die nadele ten opsigte van oppervlak effek en uitstraling wat by vlegpaar<br />

ondervind is word by koaksiale kabels verminder. Koaksiale kabels het<br />

ook weer ’n groter ruis immuniteit as vlegpaar. Baie hoë datatempos is<br />

moontlik, self tot 400 Mbps.<br />

Indien die klokke onafhanklik van mekaar loop praat ons van asinkrone transmissie.<br />

Hier word bis- en greep hersinkronisasie aan die begin van elke greep gedoen.<br />

Hierdie metode word gewoonlik gebruik indien die karakters wat gestuur<br />

moet word op lukraak intervalle gegenereer word, bv. by ’n sleutelbord ingetik<br />

word. Daar bestaan dus willekeurige intervalle (wat relatief lank is) tussen<br />

karakters. Verder is daar geen sprake van raamsinkronisasie met asinkrone<br />

transmissie.<br />

<br />

Die tweede metode van sinkronisasie is sinkrone transmissie. Hierdie metode<br />

word veral gebruik wanneer groot blokke data gestuur moet word. Die blok data


3.4. MODULATION 59<br />

58 ADDENDUM 3. THE PHYSICAL LAYER<br />

<br />

• Errors<br />

Another consideration is the error rate <strong>of</strong> the medium at different data<br />

rates. Is the error rate acceptably low, and is it possible to recover the<br />

errors without losing too much <strong>of</strong> the rate <strong>of</strong> data transmission?<br />

fibre is totally immune against electomagnetic interference. Losses are<br />

minimal. The cost involved in optical fibre, however, is quite high. Special<br />

optical emitters and receivers have to be employed, and the connections<br />

are difficult and expensive. Optical cable is also mechanically weaker than<br />

coaxial cable.<br />

<br />

• Security<br />

One should look at the vulnerability <strong>of</strong> the network against unwarranted<br />

access. Fraudulent access may be passive— where the transgressor is<br />

just eavesdropping, or it may be active — the transgressor modifies the<br />

information....<br />

• Microwaves<br />

For microwave radio transmissions line-<strong>of</strong>-sight is required, i.e. the emitter<br />

and receiver have to be able to “see” each other. A typical example is<br />

satellite links, where use is made <strong>of</strong> communication satellites.<br />

• Security and number <strong>of</strong> nodes<br />

If one is dealing with a small number <strong>of</strong> nodes in a limited area, one can<br />

make use <strong>of</strong> a LAN and install the medium oneself. However, as the area<br />

increases, for instance when it is spread over a city, use should rather<br />

be made <strong>of</strong> a medium provided by a third party (such as the telephone<br />

network). If the area is spread over the entire country, or maybe the entire<br />

earth, then a communication satellite is probably the way to go.<br />

3.3 Media selection criteria<br />

When a network is set up, there are a number <strong>of</strong> criteria for the selection <strong>of</strong> the<br />

transmission medium. Not all factors are relevant, however, in every situation.<br />

They are also interdependent.<br />

• Environment<br />

One should consider the electromagnetic environment. In a factory, for<br />

instance, there may be much electromagnetic interference because <strong>of</strong> electric<br />

motors. In such an environment a medium should be chosen having<br />

high immunity against noise. Then local authority ordinances and rental<br />

contracts may be factors. The local authority may prohibit the installing<br />

<strong>of</strong> cables over or under a street. On the other hand the rental contract may<br />

specify that no satellite dish may be installed on the ro<strong>of</strong> <strong>of</strong> a building.<br />

• Cost<br />

As the technology improves, the cost is reduced. One should, however, not<br />

only look at the cost <strong>of</strong> the medium (for instance, the price <strong>of</strong> cable per<br />

metre) but the cost <strong>of</strong> special hardware and s<strong>of</strong>tware must also be taken<br />

into consideration. Then also the cost <strong>of</strong> possible future extension <strong>of</strong> the<br />

network must be kept in mind.<br />

• Maintenance and reliability<br />

The cost and time involved to fix interruptions play a major role. A<br />

contingency plan should probably be considered in the form <strong>of</strong> backup<br />

media if the link is down.<br />

• Speed<br />

When speed is considered, there are two factors that come into play. First<br />

is response time. Especially for real time systems one should take into<br />

account the response time for every type <strong>of</strong> transaction. Response time<br />

again is determined by two components, i.e. the time to transmit the<br />

request and then the result, and the time it takes to process the request.<br />

The speed <strong>of</strong> the medium used only plays a role with the first <strong>of</strong> these<br />

factors.<br />

3.4 Modulation<br />

The second factor that affects the speed is the average data rate, which is<br />

especially important when large volumes <strong>of</strong> data are to be transmitted.<br />

The telephone network was originally designed for speech communication. Speech<br />

consists <strong>of</strong> a mixture <strong>of</strong> (audio) frequencies ranging from 400 to 3400 Hz. The<br />

telephone network was therfore designed to transmit signals in the frequncy<br />

range 400 to 3400 Hz. Signals below and above this frequency range is not<br />

passed. In the case <strong>of</strong> digital data two voltages are normally used to represent<br />

0’s and 1’s. It may therefore happen that some data would have too low<br />

frequencies, especially when long strings <strong>of</strong> 0’s and 1’s are sent. The frequency<br />

restrictions <strong>of</strong> the telephone network therefore prevents such digital signals from<br />

being transmitted. Data sent via the telephone thus have to be converted first to<br />

a form that is acceptable for the telephone network. To convert the digital signal<br />

<strong>of</strong> the computer to an audio signal that is acceptable for the telephone network,<br />

use is made <strong>of</strong> a modem. Before the signal is sent, it has to be MOdulated, and<br />

the signal received at the destination is then DEModulated.<br />

• Availability<br />

The consideration here is that the medium must be available when it is<br />

required, and sufficient capacity must be available to handle the volume<br />

<strong>of</strong> data. If the telephone network is used, it may happen that no line is<br />

available during the peak telephone usage.<br />

• Extendability<br />

A network <strong>of</strong>ten has to be expanded, either by installing more nodes in a<br />

room (or building, or factory, or campus) or by connecting more rooms ( or<br />

buildings, factories or campuses) to the network. Factors to be considered<br />

are cost and the work involved to do the expansion. One can also investigate<br />

whether it is possible to make use <strong>of</strong> multiplexers or concentrators<br />

with the medium chosen (does the medium have the necessary capacity<br />

to handle the increased traffic <strong>of</strong> more nodes?).


3.4. MODULASIE 61<br />

60 BYLAAG 3. DIE FISIESE LAAG<br />

gekyk word <strong>of</strong> dit moontlik is om multipleksers <strong>of</strong> konsentreerders met die<br />

geselekteerde medium te gebruik (het die medium die nodige kapasiteit<br />

om ’n groter aantal nodes se verkeer te hanteer?).<br />

• Foute.<br />

Daar moet gekyk word na die fouttempo van die medium teen verskillende<br />

data tempos. Is dit aanvaarbaar laag en is dit moonlik om sonder te veel<br />

verlies van data tempo te herstel van die foute wat voorkom?<br />

• Optiese vesel.<br />

By optiese vesel is die sein in die vorm van ’n ligbundel. Baie hoë datatempos<br />

(1 Gbps en hoër) is moontlik en verder is optiese vesel heeltemal immuun<br />

teen elektromagnetiese steurings. Verliese is ook baie laag. Die<br />

koste verbonde aan optiese vesel is egter hoog, spesiale optiese send- en<br />

ontvangseenhede moet gebruik word, die maak van koppelings is moeilik<br />

en duur. Verder is optiese vesel ook meganies swakker as koaksiale kabels.<br />

• Sekuriteit.<br />

Daar moet gekyk word na hoe maklik dit vir indringers is om op die<br />

netwerk in te breek. Inbraak kan passief wees- die inbreker luister net af,<br />

<strong>of</strong> dit kan aktief wees- die inbreker verander aan die inligting....<br />

• Mikrogolwe.<br />

By mikrogolf radio uitsendings is lyn van sig kommunikasie ter sprake,<br />

m.a.w. die sender en ontvanger moet mekaar kan “sien”. ’n Tipiese voorbeeld<br />

is satelliet verbindings waar van kommunikasie satelliete gebruik<br />

gemaak word.<br />

• Sekuriteit en aantal nodes.<br />

Indien daar ’n klein aantal nodes in ’n beperkte gebied ter sprake is kan die<br />

onderneming van ’n LAN gebruik maak en self die medium installeer, soos<br />

die gebied groter word, bv. oor die stad versprei, moet die onderneming<br />

dalk eerder van ’n medium wat deur ’n derde party (telefoon netwerk)<br />

verskaf word gebruik maak. Indien die gebied oor die hele land (aardbol)<br />

versprei is, is ’n kommunikasie satelliet dalk eerder die uitweg wat gevolg<br />

moet word.<br />

3.3 Media seleksie kriteria<br />

Daar is ’n aantal faktore wat ’n rol speel by die selektering van ’n transmissie<br />

medium wanneer ’n netwerk opgestel word. Nie alle faktore speel egter in elke<br />

situasie ’n rol nie. Die faktore beïnvloed ook mekaar.<br />

• Omgewing.<br />

Daar moet gekyk word na die elekromagnetiese omgewing, in ’n fabriek<br />

kan daar dalk baie elektromagnetiese steurings as gevolg van elektriese<br />

masjiene wees. In so ’n omgewing moet ’n medium gekies word wat ’n hoë<br />

ruis immuniteit het. Verder is veral plaaslike wetgewing en huur kontrakte<br />

ter sprake. Plaaslike wetgewing kan ’n onderneming dalk verbied om sy<br />

eie kabels oor <strong>of</strong> onderdeur ’n straat te span. Aan die anderkant kan hy<br />

dalk deur ’n huurkontrak verbied word om ’n satellietskottel om die gebou,<br />

waarin hy kantore het, se dak te installeer.<br />

• Koste.<br />

Soos tegnologie verbeter kom die koste af. Daar moet egter nie net na<br />

die koste van die medium (bv. kabel per meter) gekyk word nie maar ook<br />

na die koste van spesiale apparatuur (koppeleenhede) en programatuur.<br />

Verder moet die koste van uitbreiding ook in gedagte gehou word.<br />

• Instandhouding/betroubaarheid<br />

Die koste en tyd verbonde aan herstel van breuke speel hier ’n groot rol.<br />

Verder moet daar ook gekyk word na die beskikbaarheid van rugsteun<br />

verbindings indien ’n verbinding afgaan.<br />

• Spoed.<br />

By spoed is daar twee faktore wat ’n rol speel. Eerstens is daar responstyd.<br />

Veral by intydse stelsels moet daar na die responstyd van elke tipe<br />

transaksie gekyk word. Responstyd bestaan uit twee komponente, nl. die<br />

tyd om die versoek en dan die resultaat oor te stuur en die tyd wat dit<br />

neem om die versoek te verwerk. Die spoed van die medium wat gebruik<br />

word speel egter net by die eerste van hierdie twee faktore ’n rol.<br />

Die tweede faktor wat by spoed ’n rol speel is die gemiddelde data tempo,<br />

wat veral belangrik is by die oorstuur van groot volumes data.<br />

3.4 Modulasie<br />

• Beskikbaarheid.<br />

Hier moet daar gekyk word na die beskikbaarheid van die medium wanneer<br />

dit benodig word asook na die beskikbaarheid van kapasiteit om die<br />

volume data te kan hanteer. Indien die telefoon netwerk gebruik word kan<br />

dit gebeur dat daar nie ’n lyn beskikbaar is tydens tye van piek telefoon<br />

gebruik.<br />

Die telefoon netwerk is aanvanklik ontwerp om spraak kommunikasie te hanteer.<br />

Spraak bestaan uit ’n mengsel (audio) frekwensies wat wissel tussen 400 en 3400<br />

Hz. Die telefoon netwerk is dan ook ontwerp om alle seine met frekwensies<br />

tussen 400 en 3400 Hz deur te laat. Alle seine onder en bo hierdie gebied word<br />

nie deurgelaat nie. In die geval van digitale data word twee spanningsvlakke<br />

gewoonlik gebruik om 0’e en 1’e voor te stel. Dit kan dus nou gebeur dat<br />

’n klomp data wat gestuur word ’n te lae frekwensie het, veral as daar lang<br />

stringe 0’e <strong>of</strong> 1’e gestuur word. Vanwee die frekwensie beperking van die telefoon<br />

netwerk kan sulke digitale seine dus nie daaroor gestuur word nie. Data wat oor<br />

• Uitbreibaarheid.<br />

Dit is soms nodig om ’n netwerk uit te brei, hetsy deur meer nodes in ’n<br />

vertrek (gebou, fabriek, kampus) te plaas <strong>of</strong> deur nog vertrekke (geboue,<br />

fabrieke, kampusse) by die netwerk in te skakel. Faktore waarna gekyk<br />

moet word is koste en moeite verbonde aan ’n uitbreiding. Daar kan ook


3.5. BANDWIDTH 61<br />

60 ADDENDUM 3. THE PHYSICAL LAYER<br />

3.5 Bandwidth<br />

<br />

Bandwidth is defined as the difference between the maximum and minimum<br />

frequencies that can be handled by the medium. The bandwidth <strong>of</strong> the telephone<br />

network is therefore 3000 Hz (3400-400). Bandwidth is a measure <strong>of</strong> the rate<br />

at which data can be transmitted by a medium. Two other terms used in this<br />

connection, are baud and bitrate (also written bit rate). Baud is the number<br />

<strong>of</strong> signal changes that can occur per second, while bitrate describes the number<br />

<strong>of</strong> bits that can be transferred per second. Normally baud and bitrate are the<br />

same thing, but in the event <strong>of</strong> quadrature modulation, where every signal level<br />

can represent two bits, the bitrate is double the baud rate.<br />

There are several ways in which the modulation can be done. In all cases a<br />

carrier wave is used. When the carrier wave is unchanged, it means that no<br />

information is tansmitted. The carrier wave is a sine wave and has a frequency<br />

which is suitable for the telephone network. The carrier wave can be written as<br />

a function <strong>of</strong> time as:<br />

d(t) = A sin(2πft) + θ<br />

<br />

where A is the amplitude and f is the frequency <strong>of</strong> the carrier wave, while θ<br />

represents the phase <strong>of</strong> the carrier wave. All three these properties may be<br />

varied. It may for instance, be decided that a 0-bit is represented by one value<br />

<strong>of</strong> one <strong>of</strong> these properties (e.g. the amplitude) while a different value <strong>of</strong> the<br />

same property will represent a 1-bit. This conversion <strong>of</strong> a stream <strong>of</strong> bits to a<br />

carrier wave <strong>of</strong> which one or more property is varied to represent the stream <strong>of</strong><br />

bits, is called modulation.<br />

According to Nyquist the maximum number <strong>of</strong> binary numbers that can be<br />

transferred is equal to twice the bandwidth. A generalisation <strong>of</strong> his formula<br />

is that: C = 2B log2 M. In this equation C is the bitrate in bps, B is the<br />

bandwidth in Hz and M is the number <strong>of</strong> signal levels used to represent data.<br />

(I.e. in quadrature modulation M is equal to 4.) However, one should remember<br />

that Nyquist did not take interference into account.<br />

Shannon, However, does take the signal strength <strong>of</strong> both the data signals and<br />

the noise ito account. According to Shannon: C = B log2(1 + S<br />

R ). Once again,<br />

C is the bitrate in bps and B is the bandwidth in Hz. Furthermore, S is the<br />

signal strength in watt and R is the noise level in watt. The ratio S<br />

R is known<br />

as the signal-to-noise ratio. The signal-to-noise ratio can also be expressed in<br />

dB: s<br />

r = 10 log10( S<br />

R ) dB.<br />

• The first method <strong>of</strong> modulation is amplitude modulation. This is where a<br />

carrier wave with constant frequency is used, but with variable amplitude.<br />

A certain amplitude represents a 0-bit, and another amplitude represents<br />

a 1-bit. The problem with amplitude variation is that it is very sensitive<br />

to noise. Attenuation is also a considerable factor.<br />

Shannon’s limit is an absolute upper limit, but in practice this limit is not really<br />

achieved.<br />

• Frequency modulation, on the other hand, is more immune against noise<br />

and is also not so prone to attenuation. In frequency modulation use is<br />

made <strong>of</strong> two carrier waves with different frequencies. The one frequency<br />

represents a 0-bit, the other a 1-bit. This method is known as fequency<br />

shift transformation. This method is used in modems handling lower data<br />

rates.<br />

3.6 Attenuation and distortion<br />

3.6.1 Transmission <strong>of</strong> bits over a digital link<br />

Bits may be transferred over a digital link, which is not subject to the limitations<br />

applying to the (analog) telephone network, by alternating a physical property<br />

like voltage or current. For instance, one voltage level can repressent a bit with<br />

value 0 while another voltage level could represent a bit <strong>of</strong> value 1. By plotting<br />

the voltage or the current as a function <strong>of</strong> time, g(t), it is then possible to analyse<br />

the signal by means <strong>of</strong> a Fourier analysis. According to Fourier’s theory, any<br />

function which is more or less periodic may be written as the sum <strong>of</strong> a (possibly<br />

∞<br />

bn sin(2πnft)<br />

infinite) number <strong>of</strong> sines and cosines:<br />

∞<br />

g(t) = an cos(2πnft) +<br />

n=0<br />

n=0<br />

• The third and last characteristic <strong>of</strong> the carrier wave that can be varied,<br />

is its phase. Both the amplitude and the frequency <strong>of</strong> the carrier wave is<br />

kept constant. One way to impliment the modulation, is to make use <strong>of</strong><br />

two carrier waves with the same frequency and amplitude, but with phases<br />

differing by 180◦ . The one carrier wave then represents a 0-bit and the<br />

other a 1-bit. As the data is transmitted, one <strong>of</strong> the carrier waves is sent,<br />

depending whether it should be a 0 or a 1. In this method it is necessary<br />

that a reference carrier wave should reside at the receiver, for comparison<br />

with the received signal. This method is known as phase coherent<br />

phase shift distortion. This method requires rather complex demodulation<br />

circuits. An alternative method involves a phase shift for every binary<br />

number that is sent. In this case a phase shift <strong>of</strong> 90◦ represents a 0 and<br />

a phase shift <strong>of</strong> 270◦ a 1. Use can also be made <strong>of</strong> four (or more) phases.<br />

Where for instance four phases are used, each phase represents two binary<br />

numbes; i.e. 45◦ represents 00, 135◦ 01, 225◦ 10 and 315◦ represents 11.<br />

In this expression f is the fundamental frequency, while an and bn are the<br />

amplitudes <strong>of</strong> the n’th harmonic <strong>of</strong> the Fourier component’s cosine and sine<br />

terms. Then also the frequency <strong>of</strong> the n’th harmonic is equal to n times the<br />

fundamental frequency. When a stream <strong>of</strong> bits is therefore to be transferred as<br />

an electronic signal, then what is actually transferred is a number <strong>of</strong> sine waves<br />

<strong>of</strong> increasing frequency.<br />

• Combinations <strong>of</strong> the three methods <strong>of</strong> modulation are also possible. With<br />

quadrature modulation use is made <strong>of</strong> two amplitude levels and two phase<br />

shifts so that 2 bits can be represeted with each signal combination. In<br />

this way, three bits can be represeted per signal combination if use would<br />

be made for instance <strong>of</strong> 4 phase shifts and 2 frequencies.


3.5. BANDWYDTE 63<br />

62 BYLAAG 3. DIE FISIESE LAAG<br />

• Kombinasies van die drie modulasie metodes is ook moontlik. Met kwadratuur<br />

modulasie word twee amplitude vlakke en twee faseverskuiwings gebruik<br />

sodat 2 bisse met elke seinkombinasie voorgestel kan word. So kan drie<br />

bisse per seinkombinasie voorgestel word indien bv. 4 faseverskuiwings en<br />

2 frekwensies gebruik word.<br />

die telefoon netwerk gestuur moet word, moet dus eers omgeskakel word na ’n<br />

vorm wat vir die telefoon netwerk aanvaarbaar is. Om die rekenaar se digitale<br />

sein om te skakel na ’n audio sein wat vir die telefoon netwerk aanvaarbaar<br />

is word van ’n modem gebruik te maak. Voordat data gestuur word word dit<br />

eers geMOduleer en die sein wat by die bestemming ontvang word, word dan<br />

geDEModuleer.<br />

3.5 Bandwydte<br />

Daar is verskeie wyses waarop modulasie gedoen kan word. In alle gevalle is daar<br />

’n dragolf ter sprake. Indien die dragolf onveranderd is beteken dit dat daar<br />

geen inligting gestuur word nie. Die dragolf is sinusvormig en het ’n frekwensie<br />

wat deur die telefoon netwerk hanteer kan word. Die dragolf kan as ’n funksie<br />

van tyd geskryf word:<br />

d(t) = Asin(2πft) + θ<br />

Bandwydte word gedefinieer as die verskil tussen die maksimum en minimum<br />

frekwensies wat deur ’n medium hanteer kan word. Die bandwydte van die<br />

telefoon netwerk is dus 3000 Hz (3400-400). Bandwydte is ’n maat van die<br />

tempo waarteen data oor ’n medium gestuur kan word. Nog twee terme wat<br />

hier tersprake kom is baud en bistempo. Baud is die aantal seinveranderings<br />

wat per sekonde kan voorkom terwyl bistempo die aantal bisse per sekonde is<br />

wat gestuur kan word. Normaalweg is baud en bistempo dieselfde, maar in die<br />

geval van kwadratuur modulasie, waar elke seinvlak twee bisse kan voorstel is<br />

die bistempo dubbel die baud tempo.<br />

Hier is A die amplitude en f die frekwensie van die dragolf terwyl θ die fase van<br />

die dragolf is. Al drie hierdie eienskappe kan verander word. So kan besluit word<br />

dat ’n 0-bis deur een waarde van een van hierdie eienskappe (bv. amplitude)<br />

voorgestel word terwyl ’n verskillende waarde van dieselfde eienskap ’n 1-bis<br />

voorstel. Hierdie omskakeling van ’n stroom bisse na ’n dragolf waarvan een<br />

(<strong>of</strong> meer) eienskap verander word om die stroom bisse voor te stel staan as<br />

modulasie bekend.<br />

Volgens Nyquist is die maksimum aantal binere syfers wat gestuur kan word<br />

gelyk aan twee maal die bandwydte. ’n Veralgemening van sy bewering is:<br />

C = 2B log2 M. Hier is C die bistempo in bps, B is die bandwydte in Hz en M<br />

is die aantal seinvlakke wat per seineenheid voorgestel kan word. (M.a.w. met<br />

kwadratuur modulasie is M gelyk aan 4.) Dit is egter belangrik om te onthou<br />

dat Nyquist glad nie steurings in aanmerking geneem het nie.<br />

• Die eerste metode van modulasie is amplitude modulasie. Hier word ’n<br />

dragolf met konstante frekwensie gebruik maar word die dragolf se amplitude<br />

verander. ’n Sekere amplitude stel ’n 0-bis voor en ’n ander amplitude<br />

’n 1-bis. Amplitude modulasie is egter baie gevoelig vir ruis. Verder speel<br />

verswakking van die sein ook ’n groot rol.<br />

Shannon bring egter wel die seinsterkte van beide dataseine en ruis in aanmerking.<br />

Volgens Shannon is: C = B log2 (1 + S<br />

R ). Weereens is C bistempo in bps<br />

en B die bandwydte in Hz. Verder is S die seinsterkte in watt en R die ruissterkte<br />

in watt. S<br />

R staan as die sein tot ruis verhouding bekend. Die sein tot<br />

ruis verhouding kan ook in dB gegee word: s<br />

r = 10 log10( S<br />

R ) dB.<br />

Shannon se limiet is ’n absolute bogrens maar in die praktyk is dit egter moeilik<br />

om naby die waarde te kom.<br />

• Frekwensie modulasie daarenteen is meer immuun teen ruis en is ook nie<br />

so gevoelig vir verswakking van die sein nie. By frekwensie modulasie word<br />

daar van twee dragolwe met verskillende frekwensies gebruik gemaak. Die<br />

een frekwensie stel dan ’n 0-bis voor en die ander ’n 1-bis. Hierdie metode<br />

staan as frekwensieskuifvervorming bekend. Hierdie is dan ook die metode<br />

wat gebruik word met modems wat laer data tempos hanteer.<br />

3.6 Attenuasie en distorsie<br />

3.6.1 Transmissie van bisse oor ’n digitale verbinding<br />

Bisse kan oor ’n digitale verbinding, wat nie onderhewig is aan die beperkings<br />

wat by die (analoog) telefoonnetwerk geld, gestuur word deur ’n fisiese eienskap<br />

soos spanning <strong>of</strong> stroom te wissel. So kan een spanningvlak bv. ’n bis met<br />

die waarde 0 voorstel terwyl ’n ander spanningvlak ’n 1 bis voorstel. Deur<br />

die spanning <strong>of</strong> stroom as ’n funksie van tyd, bv. g(t), voor te stel is dit<br />

dan moontlik om die gedrag van die sein wiskundig, d.m.v. Fourier analise, te<br />

analiseer. Volgens Fourier analise kan enige funksie wat naastenby periodies is<br />

geskryf word as die som van ’n (moontlik oneindige) aantal sinusse en cosinusse:<br />

∞<br />

g(t) =<br />

• Die derde en laaste eienskap van die dragolf wat kan verander is sy fase.<br />

Beide die frekwensie en amplitude van die dragolf word konstant gehou.<br />

Een metode om amplitude modulasie te implementeer is om twee dragolwe<br />

met dieselfde frekwensies en amplitudes maar met fases wat met 180◦ verskil<br />

te hê. Die een dragolf stel dan ’n 0-bis en die ander ’n 1-bis voor. Soos<br />

die data gestuur word, word een van die dragolwe gestuur, afhangende<br />

van <strong>of</strong> ’n 0 <strong>of</strong> ’n 1 gestuur moet word. Met hierdie metode is dit nodig<br />

dat ’n verwysing dragolf by die ontvanger moet wees waarteen die ontvangde<br />

sein gemeet kan word. Hierdie metode staan as fase-koherente<br />

faseskuifvervorming bekend. Hierdie metode benodig dan ook komplekse<br />

demodulering stroombane. ’n Alternatiewe metode behels dat daar met<br />

elke binere syfer wat gestuur word ’n fase verskuiwing plaasvind. Hierdie<br />

metode staan as differentiale faseskuifvervorming bekend. Hier stel ’n fase<br />

verskuiwing van 90◦ ’n 0 voor en ’n fase verskuiwing van 270◦ ’n 1. Daar<br />

kan ook van vier (<strong>of</strong> meer) fases gebruik maak. In die geval van vier fases<br />

stel elke fase twee binere syfers voor, dus 45◦ stel 00 voor, 135◦ 01, 225◦ 10 en 315◦ stel 11 voor.<br />

<br />

∞<br />

bn sin(2πnft)<br />

an cos(2πnft) +<br />

n=0<br />

n=0


3.7. SIGNAL PROPAGATION DELAY 63<br />

62 ADDENDUM 3. THE PHYSICAL LAYER<br />

3.6.2 Attenuation<br />

<br />

amplitude. One should however keep in mind that, although an impulse<br />

may be only half a second in duration, 1200 bits will be distorted if data<br />

are being transmitted at a rate <strong>of</strong> 2400 bps.<br />

<br />

• Cross coupling:<br />

We have already mentioned this kind <strong>of</strong> noise when we discussed open<br />

conductor pairs. It occurs as a result <strong>of</strong> electric and magnetic coupling<br />

between different conductors. As a result <strong>of</strong> this a signal on one conductor<br />

will appear as a small, but detrimental signal on another conductor. You<br />

may have experienced the so-called “crossed lines” which occur from time<br />

to time on the telephone network.<br />

3.7 Signal propagation delay<br />

As a signal propagates along a transmission medium, it amplitude decreases.<br />

This phenomenon is called signal attenuation or weakening. Attenuation is not<br />

constant for all frequencies, but typically increases as the frequency increases.<br />

The result is that the different Fourier components <strong>of</strong> a signal are attenuated<br />

differently, with the higher frequencies that are attenuated most. When the<br />

Fourier components are then again combined, a signal is obtand that is not<br />

only weaker, but that is also distorted. To take the attenuation into account,<br />

a maximum length is specified for each type <strong>of</strong> cable to ensure that the signal<br />

arriving at the receiver is <strong>of</strong> sufficient magnitude to be recognised. Should<br />

the maximum lengths be exceeded, it becomes necessary to use amplifiers or<br />

repeaters in the transmission line, at these maximum lengths, in order to recover<br />

the original strength <strong>of</strong> the signal. Seeing that the attenuation varies with<br />

frequency, it is necessary that the amplifiers or repeaters should be such that<br />

they amplify all frequencies to their original values.<br />

A signal (whether electric or optic or radio) always takes a finite time to travel<br />

from source to destination. The delay between send and receive <strong>of</strong> a signal is<br />

known as propagation delay. When source and destination are close together,<br />

the delay is small. In space electromagnetic signals (radio, light) travel at a<br />

speed <strong>of</strong> 3 ∗ 108 meters per second. In ’n twisted pair, however, the speed <strong>of</strong> a<br />

signal may only be <strong>of</strong> the order <strong>of</strong> 2 ∗ 108 meters per second.<br />

3.6.3 Delay distortion<br />

In data communication, data are sent in blocks or frames <strong>of</strong> bits. Then, typically,<br />

an acknowledgement is returned when the bits have been received. It is therefore<br />

important that we should know for a data link what the return time is, i.e. the<br />

time from when the first bit <strong>of</strong> the frame is sent until the time when the last<br />

bit <strong>of</strong> the acknowledgement is received. The return time depends on both the<br />

propagation delay and the transmission delay (this is the time it takes to send<br />

the frame at the bitrate <strong>of</strong> the link)<br />

The rate at which the different Fourier components are propagated along a transmission<br />

medium, is different for different frequencies. Consequently different<br />

Fourier components <strong>of</strong> a signal do not arrive simultaneously at the destination.<br />

This phenomenon is known as delay distortion. As the rate at which the bits are<br />

transferred increases, it may happen that some <strong>of</strong> the Fourier components <strong>of</strong> a<br />

particular bit may be delayed so much that they only arrive simultaneously with<br />

the next bit. The result is that the bits will be interpreted incorrectly. Delay<br />

distortion is also called inter-symbol interference. The effect <strong>of</strong> delay distortion<br />

increasesas the bitrate and the distance <strong>of</strong> transfer increase.<br />

3.6.4 Noise<br />

If no data are being sent over a transmission medium, then ideally there will be<br />

no electric signal on the medium. However, the real situation is that random<br />

electrical pulses will exist on the medium. These random pulses are called noise.<br />

Different kinds <strong>of</strong> noise can be identified :<br />

• White noise:<br />

White noise (also known as thermal or gaussian noise) is caused by the<br />

natural motion <strong>of</strong> electrons in the transmission medium. The strength <strong>of</strong><br />

white noise at 0 Kelvin is 0 watt and it increases as the temperature <strong>of</strong><br />

the medium increases. This noise consists <strong>of</strong> components with random<br />

frequencies and amplitudes.<br />

• Impulse noise:<br />

As indicated by its name, this noise consists <strong>of</strong> discrete pulses. These<br />

pulses are produced by switching elements in telephone exchanges or by<br />

lightning. Another source <strong>of</strong> impulse noise may be electrical motors on a<br />

factory floor. The source <strong>of</strong> this kind <strong>of</strong> noise is therefore extermnal to the<br />

medium. The impulses are usually <strong>of</strong> short duration, and have variable


3.7. SEIN VOORTPLANTING VERTRAGING 65<br />

64 BYLAAG 3. DIE FISIESE LAAG<br />

Witruis se sterkte by 0 Kelvin is 0 watt en neem toe soos die temperatuur<br />

van die medium toeneem. Die ruis bestaan uit komponente met lukraak<br />

frekwensies en amplitudes.<br />

In hierdie uitdrukking is f die fundamentele frekwensie terwyl an en bn die amplitudes<br />

van die n’e harmoniek <strong>of</strong> Fourier komponent se kosinus en sinus terme<br />

is, verder is die frekwensie van die n’e harmoniek gelyk aan n maal die fundamentele<br />

frekwensie. Wanneer ’n stroom bisse dus as ’n elektroniese sein gestuur<br />

word, word daar in werklikheid ’n klomp sinusvormige seine van toenemende<br />

frekwensie gestuur.<br />

• Impulsruis:<br />

Soos die naam aandui bestaan hierdie ruis uit diskrete pulse. Die pulse<br />

word veroorsaak deur skakelelemente in sentrales <strong>of</strong> weerlig. Nog ’n bron<br />

van impulsruis is elektriese masjiene op ’n fabriekvloer. Die bron van die<br />

ruis is dus ekstern tot die medium. Sulke impulse is gewoonlik van korte<br />

duur en het wisselende amplitudes. Daar moet egter in ag geneem word<br />

dat al is ’n impuls ’n halwe sekonde lank sal daar 1200 bisse onderhewig<br />

wees aan distorsie indien data teen ’n tempo van 2400 bps gestuur word.<br />

3.6.2 Attenuasie<br />

• Kruiskoppeling:<br />

Hierdie tipe ruis is reeds genoem tydens die bespreking van oop geleierpare.<br />

Dit kom voor as gevolg van die elektriese en elektromagnetiese koppeling<br />

tussen verskillende geleiers. Die gevolg is dat die sein wat lang een geleier<br />

gestuur word nou ook as ’n klein maar soms nadelige sein op ’n ander<br />

geleier voorkom. Vergelyk sogenaamde “gekruisde lyne” wat van tyd tot<br />

tyd op die telefoonnet voorkom.<br />

3.7 Sein voortplanting vertraging<br />

Soos ’n sein langs ’n transmissie medium voortgeplant word raak sy amplitude<br />

kleiner. Hierdie verskynsel staan as sein attenuasie <strong>of</strong> verswakking bekend. Attenuasie<br />

is ook nie konstant vir alle frekwensies nie, tipies raak attenuasie groter<br />

soos frekwensie toeneem. Die gevolg is dat die verskillende Fourier komponente<br />

van ’n sein verskillend verswak word, met die hoër frekwensie die meeste verswak.<br />

Wanneer die Fourier komponente dan weer bymekaargetel word word ’n<br />

sein verkry wat nie net verswak is nie maar ook vervorm is. Om vir attenuasie<br />

voorsiening te maak word daar vir elke tipe kabel maksimum lengtes gespesifiseer<br />

om te verseker dat die sein wat by die ontvanger aankom groot genoeg is<br />

om herken te kan word. Indien oor die maksimum lengtes gegaan word is dit<br />

nodig om versterkers <strong>of</strong> herhalers in die transmissielyn, op hierdie maksimum<br />

lengtes, te plaas om die sein tot sy oorspronklike seinsterkte te herstel. Aangesien<br />

attenuasie ook met frekwensie wissel is dit nodig dat die versterkers <strong>of</strong><br />

herhalers wat gebruik word alle frekwensies tot die selfde seinsterkte versterk.<br />

Dit neem ’n sein (elektries, lig <strong>of</strong> radio) altyd ’n eindige tyd om van oorsprong na<br />

bestemming te beweeg. Die vertraging tussen die stuur en ontvang van ’n sein<br />

staan as voortplanting vertraging bekend. Indien die bron en bestemming naby<br />

aan mekaar is, is die voortplanting vertraging klein. In die ruimte beweeg ’n<br />

elektromagnetiese sein (radio, lig) teen 3 ∗ 108 meter per sekonde, in ’n flegpaar<br />

is die spoed van ’n elektriese sein egter slegs in die orde van 2 ∗ 108 meter per<br />

sekonde.<br />

3.6.3 Vertragingsdistorsie<br />

Met datakommunikasie word data in blokke <strong>of</strong> rame van bisse gestuur, verder<br />

word daar tipies ’n erkenning op terug gestuur wanneer ’n raam ontvang is. Dit<br />

is dus belangrik om vir ’n dataverbinding te weet wat die omkeertyd is, dit wil<br />

sê die tyd vandat die eerste bis van die raam gestuur is totdat die laaste bis van<br />

die erkenning ontvang is. Omkeertyd is afhanklik van beide die voortplanting<br />

vertraging en die transmissie vertraging (die tyd wat dit neem om die raam te<br />

stuur teen die verbinding se bis tempo). ie relatiewe ge<br />

Die tempo waarteen die verskillende Fourier komponente van ’n sein langs ’n<br />

transmissie medium voortgeplant word verskil van frekwensie tot frekwensie.<br />

Die gevolg is dat die verskillende Fourier komponente van ’n sein nie gelyktydig<br />

by die bestemming aankom nie. Hierdie verskynsel staan as vertragingsdistorsie<br />

bekend. Soos die tempo waarteen bisse gestuur word toeneem gebeur dit<br />

dat sommige van die Fourier komponente van een bis soveel vertraag word dat<br />

dit eers tydens die opvolgende bis ontvang word. Die gevolg is dan dat van<br />

die bisse verkeerd geïnterpreteer word. Vertragingsdistorsie staan dan ook as<br />

tussensimbool steuring bekend. Die effek van vertragingsdistorsie neem toe soos<br />

die bistempo asook die afstand waaroor die data gestuur word toeneem.<br />

3.6.4 Ruis<br />

Indien geen data oor ’n transmissie medium gestuur word sal daar in die ideale<br />

geval geen elektriese sein op die medium teenwoordig wees nie. In werklikheid<br />

is daar wel lukraak elektriese seine op die medium teenwoordig. Hierdie lukraak<br />

elektriese seine staan as ruis bekend. Verskillende tipes ruis kan geïdentifiseer<br />

word:<br />

<br />

• Witruis:<br />

Witruis (staan ook as termiese <strong>of</strong> gausiese ruis bekend) word veroorsaak<br />

deur die normale beweging van elektrone in die transmissie medium.


74 ADDENDUM 4. THE DATA LINK LAYER<br />

<br />

Character Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Parity<br />

bit<br />

I 1 0 0 1 0 0 1 1<br />

N 1 0 0 1 1 1 0 0<br />

L 1 0 |0| 1 1 0 |0| 1<br />

I 1 0 0 1 0 0 1 1<br />

G 1 0 0 0 1 1 1 0<br />

T 1 0 1 0 1 0 0 1<br />

I 1 0 0 1 0 0 1 1<br />

N 1 0 |0| 1 1 1 |0| 0<br />

G 1 0 0 0 1 1 1 0<br />

BST 0 1 0 1 1 1 0 0<br />

<br />

Addendum 4<br />

Figure 4.1: Example <strong>of</strong> a block sum test Even parity is used for the rows and<br />

odd parity for the columns. If the four marked bits are inverted, the error will<br />

not be detected.<br />

The data link layer:<br />

Examples and analyses <strong>of</strong><br />

protocols<br />

is more generally used. In the next paragraphs we shall consider in more<br />

detail the protocols making use <strong>of</strong> this mechanism <strong>of</strong> error control.<br />

We are now going to study the methods use to determine whether the information<br />

that was received was correct or not. At a later stage we shall go into<br />

methods to request a repeat <strong>of</strong> the information if it was not received correctly.<br />

4.1 Error detection<br />

4.1.1 Errors do occur!<br />

4.1.2 Parity<br />

Parity is one <strong>of</strong> the simplest and most generally used methods to do error<br />

detection. Parity is used where small numbers <strong>of</strong> information bits are involved<br />

and where the possibility <strong>of</strong> an error occuring is small. A single bit, the parity<br />

bit, is added to every information element or to every character. In the case <strong>of</strong><br />

even parity, the parity bit is chosen such that an even number <strong>of</strong> 1 bits occurs<br />

in the character plus the parity bit. Where use is made <strong>of</strong> odd parity, there has<br />

to be an odd number <strong>of</strong> 1 bits. The receiver simply counts the number <strong>of</strong> 1 bits<br />

in every character and if there is an even (odd) number, the character has been<br />

received correctly. The sender and receiver has naturally to decide beforehand<br />

which parity will be used.<br />

When information is transmitted by electromagnetic waves from one point to<br />

another, distortion <strong>of</strong> the information may occur because <strong>of</strong> electromagnetic interference.<br />

The result may be that bits, <strong>of</strong> which the values were supposed to be<br />

1’s, become 0’s and vice versa. It is neccessary to ensure that the probability <strong>of</strong><br />

correct information reaching the destination, is large. It is therefore neccessary<br />

to be able to derive with much confidence whether the information has been received<br />

correctly or not. If the information has been received incorrectly, it must<br />

be possible to obtain the correct information. There are two ways to approach<br />

the problem in order to achieve the above goals:<br />

Parity will detect all errors where an odd number <strong>of</strong> bits are involved (in a<br />

character). If an even number <strong>of</strong> bits are involved, the error will not be detected.<br />

4.1.3 Block sum test<br />

1. Forwards error control. This is where a sufficient amount <strong>of</strong> additional<br />

or redundand information is sent together with every character or frame<br />

to enable the receiver to test whether the information had been received<br />

correctly or not, as well as to determine the original information from<br />

that which was received, should the information not be received correctly.<br />

This method is not used very generally because too much redundant information<br />

has to be sent together with a frame in order to guarantee the<br />

neccessary level <strong>of</strong> error correction.<br />

When infromation is sent in frames, the use <strong>of</strong> a single parity bit can be extended<br />

to the use <strong>of</strong> an additional set <strong>of</strong> parity bits, the so-called block sum test (BST),<br />

which is calculated over the entire frame’s characters. In this method a parity<br />

bit is still calculated for every individual character. But then for every bit<br />

position another parity bit is calculated. I.e. for all the most significant bits a<br />

parity bit is calculated, and similarly for the second most significant bits, etc.<br />

up to the least significant bits and parity bits.<br />

2. Feed-back error control, also called error detection by repeat transmission.<br />

This method is more generally known as ARQ (automatic repeat request).<br />

In ARQ the minimum additional information is sent together with every<br />

character or frame to enable the receiver to decide whether the received<br />

information is correct or not. It is then the responsibility <strong>of</strong> the receiver to<br />

request the correct information from the sender. This way <strong>of</strong> error control<br />

73


76 BYLAAG 4. DIE DATAVERBINDINGSLAAG<br />

Karakter Bis 6 Bis 5 Bis 4 Bis 3 Bis 2 Bis 1 Bis 0 Pariteitbis<br />

I 1 0 0 1 0 0 1 1<br />

N 1 0 0 1 1 1 0 0<br />

L 1 0 |0| 1 1 0 |0| 1<br />

I 1 0 0 1 0 0 1 1<br />

G 1 0 0 0 1 1 1 0<br />

T 1 0 1 0 1 0 0 1<br />

I 1 0 0 1 0 0 1 1<br />

N 1 0 |0| 1 1 1 |0| 0<br />

G 1 0 0 0 1 1 1 0<br />

BST 0 1 0 1 1 1 0 0<br />

Bylaag 4<br />

Figure 4.1: Voorbeeld van ’n bloksomtoets. Ewe pariteit is vir die rye gebruik<br />

en onewe pariteit vir die kolomme. Indien die vier gemerkte bisse geïnverteer<br />

word sal die fout nie waargeneem word nie.<br />

Die Dataverbindingslaag:<br />

Voorbeelde en analise van<br />

protokolle<br />

in meer detail kyk na protokolle wat van hierdie foutbeheer meganisme<br />

gebruik maak.<br />

Daar sal nou slegs gekyk word na metodes wat gebruik kan word om vas te stel<br />

<strong>of</strong> die inligting wat ontvang is korrek ontvang is al dan nie. Daar sal later gekyk<br />

word na metodes om inligting weer aan te vra indien dit nie korrek ontvang is<br />

nie.<br />

4.1 Foutwaarneming<br />

4.1.1 Foute kom voor!<br />

4.1.2 Pariteit<br />

Pariteit is een van die die eenvoudigste en mees algemene metodes om foutwaarneming<br />

te doen. Pariteit word gebruik waar klein hoeveelhede inligting<br />

bisse ter sprake is en daar ’n klein waarskynlikheid is dat ’n fout kan voorkom.<br />

’n Enkele bis, die pariteitbis, word by elke inligting element <strong>of</strong> karakter gevoeg.<br />

Die pariteitbis se waarde word so gekies dat daar ’n ewe aantal 1 bisse in die<br />

karakter plus pariteitbis voorkom in die geval van ewe pariteit. Indien onewe<br />

pariteit gebruik word moet daar ’n onewe aantal bisse met die waarde 1 wees.<br />

Die ontvanger tel dan bloot die aantal 1 bisse in elke karakter, indien daar ’n<br />

ewe (onewe) aantal is, is die karakter korrek ontvang. Die sender en ontvanger<br />

moet egter vooraf ooreenkom watter pariteit gebruik gaan word.<br />

Wanneer inligting deur middel van elektromagnetiese golwe van een punt na ’n<br />

ander gestuur word kan dit gebeur dat distorsie van die inligting plaasvind as<br />

gevolg van elektromagnetiese steurings. Die gevolg is dan dat bisse waarvan<br />

die waardes 1’e moes wees nou 0’e is en anders om. Dit is egter wenslik om<br />

te verseker dat die waarskynlikheid dat inligting die bestemming korrek bereik<br />

groot is. Dit is dus nodig om met ’n groot mate van vertroue te kan aflei <strong>of</strong><br />

inligting korrek ontvang is al dan nie. Indien inligting foutief ontvang is moet dit<br />

ook moontlik wees om die korrekte inligting te verkry. Daar is twee benaderings<br />

wat gevolg kan word om bogenoemde doel te bereik:<br />

Pariteit sal alle foute waar ’n onewe aantal bisse (in ’n karakter) by betrokke is<br />

uitvang. Indien ’n ewe aantal bisse betrokke is sal die fout nie uitgevang word<br />

nie.<br />

1. Voorwaartse foutbeheer. Hier word genoeg addisionele <strong>of</strong> oortollige inligting<br />

saam met elke karakter <strong>of</strong> raam gestuur om die ontvanger in staat te<br />

stel om te toets <strong>of</strong> die inligting korrek ontvang is al dan nie asook om die<br />

oorspronklike inligting, uit dit wat ontvang is, af te lei indien die inligting<br />

nie korrek ontvang is nie. Hierdie metode word nie oor die algemeen gebruik<br />

nie aangesien daar te veel oortollige inligting met ’n raam gestuur<br />

moet word om die verlangde vlak van fout herstel te kan waarborg.<br />

4.1.3 Bloksomtoets<br />

Wanneer inligting in rame gestuur word kan die gebruik van ’n enkele pariteitbis<br />

uitgebrei word na die gebruik van ’n addisionele stel pariteitbisse, die bloksomtoets<br />

(BST), wat oor die hele raam se karakters bereken word. Met hierdie<br />

metode word daar nog steeds ’n pariteitbis vir elke individuele karakter bereken.<br />

Daar word verder vir elke bis posisie nog ’n pariteitbis bereken. Dit wil sê daar<br />

2. Terugvoer foutbeheer <strong>of</strong> ook foutwaarneming met hertransmissie. Hierdie<br />

metode staan algemeen bekend as ARQ (automatic repeat request) bekend.<br />

Met ARQ word slegs genoeg addisionele inligting met elke karakter <strong>of</strong> raam<br />

gestuur om die ontvanger in staat te stel om te besluit <strong>of</strong> dit wat ontvang<br />

is korrek is al dan nie. Die ontvanger is dan daarvoor verantwoordelik om<br />

die korrekte inligting van die sender aan te vra. Hierdie is die foutbeheer<br />

metode wat algemeen gebruik word. Ons sal in die opvolgende paragrawe<br />

<br />

75


76 ADDENDUM 4. THE DATA LINK LAYER<br />

4.1. ERROR DETECTION 75<br />

<br />

The process may also be considered as follows (Figure 4.1): The binary values<br />

<strong>of</strong> the characters in the frame that has to be sent, are written below each other.<br />

Each row contains a character while the most significant bit <strong>of</strong> every character<br />

appears in the left hand column, and so forth up to the least significant bits,<br />

which appear in the right hand column. A parity bit is then calculated for every<br />

character or row. This bit is known as the row-parity bit. Then a parity bit,<br />

the column parity bit, is calculated for every column.<br />

<br />

If a two-bit error occurs in a row, it will not be detected by the row-parity bits.<br />

Such an error, however, will be detected by the column bits <strong>of</strong> the particular<br />

columns (except if a two bit error occurs in the columns as well). Such a situation<br />

is illustrated in Figure 4.1. If the four marked bits are received incorrectly, so<br />

that there are two columns and two rows sharing the two-bit errors, the errors<br />

will not be detected.<br />

1 1 0 0 0 0 1 0 1 0<br />

1 0 0 1 1 1 1 0 1 0 1 1 0 1 1 0 0 0 0<br />

1 0 0 1 1<br />

1 0 0 1 1<br />

1 0 0 1 1<br />

0 0 0 0 1<br />

0 0 0 0 0<br />

0 0 0 1 0<br />

0 0 0 0 0<br />

0 0 1 0 1<br />

0 0 0 0 0<br />

0 1 0 1 1<br />

0 0 0 0 0<br />

1 0 1 1 0<br />

1 0 0 1 1<br />

0 1 0 1 0<br />

0 0 0 0 0<br />

1 0 1 0 0<br />

1 0 0 1 1<br />

0 1 1 1 0<br />

0 0 0 0 0<br />

1 1 1 0<br />

The probability that an error will be detected, is nevertheless improved by the<br />

block sum test.<br />

4.1.4 Cyclic redundant test<br />

The most general type <strong>of</strong> error occuring in information transmitted by electromagnetic<br />

waves, is an error burst. In this kind <strong>of</strong> error a series <strong>of</strong> consecutive<br />

bits are distorted. Such an error burst starts and ends with a bit that is incorrect.<br />

The bits in between need not neccessarily be incorrect also. The length<br />

<strong>of</strong> an error burst is defined by the number <strong>of</strong> bits between the two faulty bits,<br />

including the faulty bits. When the length <strong>of</strong> an error burst is calculated, the<br />

burst has to be followed by a series <strong>of</strong> correct bits which is as long or longer<br />

than the error burst.<br />

It was found that both the parity and block sum tests are not effective for the<br />

detection <strong>of</strong> error bursts. The alternative method used to detect the occurence<br />

<strong>of</strong> error bursts is based on the use <strong>of</strong> polynomial codes.<br />

Figure 4.2: Calculation <strong>of</strong> a CRT. The message to be sent is 1101011011, the generator<br />

polynomial is 10011 and the message multiplied by 24 is 11010110110000.<br />

The message plus CRT which is sent is 11010110111110.<br />

By means <strong>of</strong> polynomial codes a series <strong>of</strong> bits are considered as a polynomial <strong>of</strong><br />

which the coefficients can be only 0 or 1. Therefore a k-bit frame is considered<br />

to be a polynomial with k terms ranging from xk−1 to x0 . The most significant<br />

bit in the frame is the coefficient <strong>of</strong> the term xk−1 , the second most significant<br />

bit is the coefficient <strong>of</strong> the term xk−2 etc. until the least significant bit, which<br />

is the coefficient <strong>of</strong> the term x0 . The series <strong>of</strong> bits 10011 therefore represents a<br />

4th order, 5 term, polynomial. The polynomial is therefore 1∗x 4 + 0∗x 3 + 0∗<br />

x2 +1∗x 1 +1∗x 0 . Normally terms with zero coefficients are omitted. Therefore<br />

we can also write the polynomial as x4 + x1 + 1.<br />

For every frame that is sent a number <strong>of</strong> test bits are calculated and added to<br />

the back <strong>of</strong> the frame. The receiver <strong>of</strong> the frame then does a calculation which<br />

includes the entire frame, with its test bits. If no errors are present, a known<br />

value is always obtained. If this known value is not obtained, it means that<br />

an error has occurred. However, even if the known value has been obtained,<br />

there still is a small chance that an error has occurred. The number <strong>of</strong> test bits<br />

calculated per frame, is adapted to the worst case <strong>of</strong> error that can be expected.<br />

The most common is 16 and 32 bits. These test bits are known as a cyclic<br />

redundancy test (CRT).


78 BYLAAG 4. DIE DATAVERBINDINGSLAAG<br />

4.1. FOUTWAARNEMING 77<br />

word vir al die mees beduidende bisse ’n pariteitbis bereken, net so vir die<br />

tweede mees beduidende bisse en so aan tot vir die mins beduidende bisse en<br />

pariteitbisse.<br />

Die proses kan ook soos volg beskou word (figuur 4.1): Die binêre waardes<br />

van die karakters in die raam wat gestuur moet word, word eers onder mekaar<br />

geskryf. Elke ry bevat dan ’n karakter terwyl elke karakter se mees beduidende<br />

bis in die linker kolom voorkom en so aan tot die mins beduidende bisse in<br />

die regter kolom. Daar word dan ’n pariteitbis vir elke karakter <strong>of</strong> ry bereken.<br />

Hierdie bis staan as die ry-pariteitbis bekend. Daarna word daar vir elke kolom<br />

’n pariteitbis, die kolom-pariteitbis, bereken.<br />

1 1 0 0 0 0 1 0 1 0<br />

1 0 0 1 1 1 1 0 1 0 1 1 0 1 1 0 0 0 0<br />

1 0 0 1 1<br />

1 0 0 1 1<br />

1 0 0 1 1<br />

0 0 0 0 1<br />

0 0 0 0 0<br />

0 0 0 1 0<br />

0 0 0 0 0<br />

0 0 1 0 1<br />

0 0 0 0 0<br />

0 1 0 1 1<br />

0 0 0 0 0<br />

1 0 1 1 0<br />

1 0 0 1 1<br />

0 1 0 1 0<br />

0 0 0 0 0<br />

1 0 1 0 0<br />

1 0 0 1 1<br />

0 1 1 1 0<br />

0 0 0 0 0<br />

1 1 1 0<br />

Indien daar ’n tweebis-fout in ’n ry voorkom sal dit nie deur die ry-pariteitbis<br />

waargeneem word nie. So ’n fout sal wel deur die twee betrokke kolomme se<br />

kolom-pariteitbisse waargeneem word, tensy daar in elke kolom ook ’n tweebisfout<br />

voorkom. So ’n situasie word in figuur 4.1 getoon. Indien die vier gemerkte<br />

bisse foutief ontvang word, daar is dus twee kolomme en twee rye wat tweebisfoute<br />

deel, sal die fout nie waargeneem word nie.<br />

Die waarskynlikheid dat ’n fout uitgevang sal word, word met die gebruik van<br />

die bloksomtoets verhoog.<br />

4.1.4 Sikliese oortolligheidstoets<br />

Die mees algemene tipe fout wat voorkom in inligting wat deur middel van<br />

elektromagnetiese golwe gestuur word is ’n foutsarsie. Met hierdie tipe fout<br />

is daar dan ’n string opeenvolgende bisse wat vervorm word. So ’n foutsarsie<br />

begin en eindig met ’n bis wat foutief is, die bisse wat tussenin voorkom hoef<br />

nie noodwendig foutief te wees nie. Die lengte van ’n foutsarsie word gedefineer<br />

deur die aantal bisse tussen twee foutiewe bisse, die foutiewe bisse ingesluit.<br />

Wanneer die lengte van ’n foutsarsie bereken word moet die foutsarsie gevolg<br />

word deur ’n string korrekte bisse wat net so lank <strong>of</strong> langer is as die foutsarsie.<br />

Daar is gevind dat beide pariteit en bloksomtoetse nie effektief is in die opspoor<br />

van foutsarsies nie. Die alternatief wat gebruik word om die voorkoms van<br />

foutsarsies waar te neem is gebaseer op die gebruik van polinomiale kodes.<br />

Figure 4.2: Berekening van ’n SOT. Die boodskap wat gestuur moet word<br />

is 1101011011, die generator polinoom is 10011 en die boodskap met 24 verminigvuldig<br />

is 11010110110000. Die boodskap plus SOT wat gestuur word is<br />

11010110111110.<br />

Met polinomiale kodes word ’n string bisse beskou as ’n polinoom waarvan die<br />

koëffisiënte slegs 0 <strong>of</strong> 1 kan wees. Dus sal ’n k-bis raam beskou word as ’n<br />

polinoom met k terme wat strek van xk−1 tot x0 . Die mees beduidende bis in<br />

die raam is die koëffisiënt van die term xk−1 , die tweede mees beduidende bis<br />

van die term xk−2 en so aan tot die mins beduidende bis wat die koëffisiënt van<br />

die term x0 is. Die string bisse 10011 stel dus ’n 4’e orde, 5 term, polinoom<br />

voor. Die polinoom is dus 1∗x 4 + 0∗x 3 + 0∗x 2 + 1∗x 1 + 1∗x 0 . Normaalweg<br />

word die terme met nul koëffisiënte weggelaat. Dus kan ons die polinoom ook<br />

skryf as x4 + x1 + 1.<br />

Daar word vir elke raam wat gestuur word ’n enkele groep toetsbisse bereken en<br />

agteraan die raam gelas. Die ontvanger van die raam doen dan ’n berekening<br />

wat die hele raam, toetsbisse ingesluit, dek. Indien geen foute voorkom word ’n<br />

bekende waarde altyd verkry. Indien hierdie bekende waarde nie verkry word nie<br />

dui dit daarop dat ’n fout voorgekom het. Indien die bekende waarde wel verkry<br />

word is daar egter tog nog steeds ’n klein kans dat ’n fout wel voorkom. Die


78 ADDENDUM 4. THE DATA LINK LAYER<br />

4.2. BASIC ARQ PROTOCOLS 77<br />

<br />

the packets and the correct receipt <strong>of</strong> packets must be acknowledged, to ensure<br />

the error free receipt. The packets also have to be numbered to ensure<br />

that they are transfered in the correct sequence to the network layer <strong>of</strong> the receiver.<br />

In order to be able to handle these functions, the data link layer adds<br />

its PBI to the packet, thereby producing a frame. The PBI consists inter alia<br />

<strong>of</strong> synchronisation fields, control fields containing sequence numbers and abba<br />

recognitions, error detection fields and other fields which we shall discuss later<br />

when we discuss HDLC.<br />

A brief summary <strong>of</strong> the method is as follows: Modulo-2 arithmetic is used in all<br />

the calculations. Addition and subtraction is therefore identical to the exclusive<br />

or. Also long division is the same as ordinary binary division except that the<br />

subtraction is replaced by the exclusive or. In modulo-2 division we say that<br />

the divisor goes into the divident when the divident and the divisor have an<br />

equal number <strong>of</strong> bits (and the most significant bits <strong>of</strong> both are 1’s).<br />

<br />

The sender and the receiver must decide in advance on a generator polynomial,<br />

say G(x), that will be used. Both the most and least significant bits <strong>of</strong> G(x)<br />

have to be 1’s. Let G(x) be r + 1 bits long. Let also the message to be sent,<br />

B(x), be longer than G(x).<br />

Several variations <strong>of</strong> ARQ are possible. Every frame that is received may be<br />

acknowledged individually by means <strong>of</strong> special acknowledgement frames (ACK),<br />

or the acknowledgement may be ”piggy-backed” by a data frame, or it is possible<br />

to make use <strong>of</strong> negative acknowledgements (NAC) if frames are received<br />

incorrectly or not in the correct sequence. Each frame sent has to be stored<br />

at the sender in a buffer. When an ACK is received for that frame, it may be<br />

removed from the buffer. However, a time elapsed mechanism has also to be<br />

provided at the sender to ensure that it does not wait indefinitely for an ACK<br />

which may have gone missing. In this case, as well as when a NAC is recieved,<br />

the particular frame has to be sent again. For the handling <strong>of</strong> ACK’s and NAC’s<br />

there are several possibilities:<br />

1. Multiply B(x) by 2r . Effectively this means that r bits, all <strong>of</strong> them 0’s,<br />

are added to the end <strong>of</strong> B(x).<br />

2. Divide B(x) ∗ 2 r by G(x). Modulo-2 division has to be used.<br />

3. Subtract the result, R(x), which was obtained by the division, from B(x)∗<br />

2r . (Modulo-2 subtraction). Let this result be called T(x).<br />

4. Send T(x) to the receiver.<br />

1. Stop-and-wait: The sender sends only one frame and then waits until it<br />

receives a ACK/NAC for that frame. If an ACK is received, it sends the<br />

next frame. Otherwise, if the time limit is exceeded or if a NAC is received,<br />

the same frame is sent again. In Stop-and-wait it is thus only necessary<br />

to have a buffer for a single frame at the sender. There is also no problem<br />

getting the frames in the right sequence at the receiver. Should the<br />

receiver receive a frame out <strong>of</strong> the correct sequence, because a frame (or<br />

more than one frame) went missing, it simply ignores it and sends a NAC<br />

for the frame it needs. This protocol is especially useful for half-duplex<br />

communication, where the two nodes take turns to send. The protocol<br />

however, has too low a throughput in the case <strong>of</strong> full duplex communication,<br />

especially when the propagation delay exceeds the transmission<br />

delay. But, if the point-to-point link is short, the throughput <strong>of</strong> this protocol<br />

may still be acceptable. In the next paragraph we shall look more<br />

closely at the quantitative analysis <strong>of</strong> the Stop-and-wait protocol.<br />

5. The receiver divides (modulo-2) T(x) by G(x). If the result that is now<br />

obtained is 0, the message was received correctly. If a non-zero result is<br />

obtained the message is incorrect.<br />

Suppose the frame B(x)=1101011011 has to be sent and the generator polynomial<br />

is G(x)=x4 + x1 + 1=10011 (Figure 4.2). The value <strong>of</strong> r is therefore 4, i.e.<br />

the polynomial is r + 1 bits long. The frame is first multiplied by 24 to yield<br />

B(x) ∗ 24 =11010110110000. After B(x) ∗ 24 has been divided by G(x) a result<br />

R(x)=1110 is obtained. R(x) is subtracted modulo-2 from B(x) ∗ 24 to yield<br />

T(x)=11010110111110.<br />

There are several generator polynomials that are considered as standards, eg.:<br />

• CRC-12 = x 12 + x 11 + x 3 + x 2 + x 1 + 1 = 1100000001111<br />

• CRC-16 = x 16 + x 15 + x 2 + 1 = 11000000000000101<br />

2. Go-back-N, or continuous transmission: In this protocol the sender continues<br />

to send frames without waiting for an ACK. Each frame is kept<br />

in a buffer at the sender until a ACK is received for that frame. When<br />

the ACK is received, that frame may be removed from the buffer, and the<br />

buffer can be used for the next frame. Should however, a NAC be received<br />

for a frame, or if the time limit for that frame is exceeded, that frame as<br />

well as all the frames following it are sent again. The sender therefore<br />

requires a sufficient number <strong>of</strong> buffers to store all the frames for which<br />

the ACK’s are still outstanding. Then also the sender has to have a clock<br />

mechanism whereby the waiting time for the ACK can be recorded for<br />

each <strong>of</strong> the frames. On the receiver end, error tests have to be performed<br />

to see if every frame is error-free and in the correct sequence. If it is not,<br />

a NAC should be sent to indicate which frame is expected. When a frame<br />

has been received error-free and in the correct sequence, it is transferred<br />

• CRC-CCITT = x 16 + x 12 + x 5 + 1 = 10001000000100001<br />

CRC-16 and CRC-CCITT will detect all single bit errors, all errors involving an<br />

odd number <strong>of</strong> bits and all error bursts shorter than 16 bits. It will also detect<br />

more than 99.99% <strong>of</strong> error bursts <strong>of</strong> 17 bits or more.<br />

4.2 Basic ARQ protocols<br />

Communication between nodes in a network is usually synchrone. Consequently<br />

it is neccessary that individual packets should contain synchronisation information<br />

in order to achieve bit synchronisation between sender and receiver. A<br />

further requirement is that it must be possible to determine the correctness <strong>of</strong>


80 BYLAAG 4. DIE DATAVERBINDINGSLAAG<br />

4.2. BASIESE ARQ PROTOKOLLE 79<br />

sinkronisasie tussen sender en ontvanger te bewerkstellig. Verder moet die korrektheid<br />

van pakkette vasgestel kan word en moet die erkenning van pakkette<br />

wat korrek ontvang is gedoen kan word om die foutlose ontvangs daarvan te<br />

waarborg. Dit is ook nodig dat pakkette genommer word om te verseker dat<br />

hulle in die korrekte volgorde aan die ontvanger se netwerklaag oorgedra word.<br />

Om hierdie funksies te kan hanteer voeg die dataverbindingslaag sy PBI by<br />

die pakket om sodoende ’n raam te vorm. Die BPI bestaan onder andere uit<br />

sinkronisasie velde, beheer velde wat volgorde nommers en abba erkennings bevat,<br />

foutwaarneming velde en nog ander velde wat met HDLC se bespreking<br />

beskryf sal word.<br />

aantal toetsbisse wat per raam bereken word, word aangepas by die ergste geval<br />

fout wat verwag word. Die algemeenste is 16 en 32 bisse. Hierdie toetsbisse<br />

staan as ’n sikliese oortolligheidstoets (SOT) bekend.<br />

Die metode kan kortliks soos volg opgesom word: Modulo-2 rekenkunde word<br />

gebruik in al die berekenings, optel en aftrekking is dus identies aan eksklusiewe<br />

<strong>of</strong>. Verder is lang deling dieselfde as gewone binêre deling behalwe dat die<br />

aftrekking deur eksklusiewe <strong>of</strong> vervang kan word. Met modulo-2 deling sê ons<br />

dat die deler in die deeltal “ingaan” indien die deeltal en deler eweveel bisse het<br />

(en die mees beduidende bisse van altwee 1’e is).<br />

Verskei variasies van ARQ is moontlik, elke raam wat korrek ontvang is kan individueel<br />

erken word met spesiale erkennings (ERK) rame, die erkenning kan deur<br />

’n dataraam “ge-abba” word, dit is ook moontlik om van negatiewe erkennings<br />

(NEK) gebruik te maak indien rame foutief <strong>of</strong> uit volgorde ontvang word. Elke<br />

raam wat gestuur word moet by die sender in ’n buffer gestoor word. Sodra ’n<br />

ERK vir ’n raam ontvang word kan daardie raam uit die buffer verwyder word.<br />

Daar moet egter by die sender ook ’n tydverstreke meganisme ingebou word om<br />

te verseker dat hy nie onbeperk wag vir ’n ERK wat self weg geraak het nie.<br />

In hierdie geval asook wanneer ’n NEK ontvang word moet die betrokke raam<br />

weer oor gestuur word. Wat die hantering van ERK’e en NEK’e betref is daar<br />

ook verskillende moontlikhede:<br />

Die sender en ontvanger moet vooraf besluit op die generator polinoom, sê G(x),<br />

wat gebruik gaan word. Beide die mees en mins beduidende bisse van G(x) moet<br />

1’e wees. Laat G(x) r + 1 bisse lank wees. Laat verder B(x), die boodskap wat<br />

gestuur moet word, langer wees as G(x).<br />

1. Vermenigvuldig B(x) met 2r . Daar word dus effektief r bisse, almal 0’e,<br />

agter aan B(x) gevoeg.<br />

2. Deel B(x) ∗ 2 r deur G(x), modulo-2 deling moet gebruik word.<br />

3. Trek die res, R(x), wat met die deling verkry is van B(x)∗2r af. (Modulo-2<br />

aftrekking.) Noem die resultaat T(x).<br />

4. Stuur T(x) aan die ontvanger.<br />

1. Stop-en-Wag: Die sender stuur slegs een raam en wag dan totdat hy ’n<br />

ERK/NEK vir daardie raam ontvang. Indien hy ’n ERK ontvang stuur<br />

hy die volgende raam. Anders, indien ’n tydverstreke plaasvind <strong>of</strong> hy ’n<br />

NEK ontvang stuur hy die raam oor. Met Stop-en-Wag is dit dus slegs<br />

nodig om ’n buffer vir ’n enkele raam by die sender te hê. Verder is daar<br />

ook geen probleem om die rame in volgorde te kry by die ontvanger nie.<br />

Indien die ontvanger ’n raam buite volgorde kry omdat ’n raam (<strong>of</strong> meer<br />

as een raam) weggeraak het, ignoreer hy dit bloot en stuur ’n NEK vir die<br />

raam waarvoor hy wag. Hierdie protokol is veral geskik vir half-dupleks<br />

kommunikasie waar die twee nodes om die beurt stuur. Die protokol het<br />

egter ’n onnodig lae deurvoer in die geval van vol-dupleks kommunikasie,<br />

veral as die voortplanting vertraging groter as die transmissie vertraging<br />

is. Indien die punt-tot-punt verbinding egter kort is, is die deurvoer van<br />

die protokol nog aanvaarbaar. Daar sal in die volgende paragraaf aandag<br />

gegee word aan die kwantitatiewe analise van die Stop-en-Wag protokol.<br />

5. Die ontvanger deel (modulo-2) T(x) deur G(x). Indien die res wat nou<br />

verkry word 0 is, is die boodskap korrek ontvang. Indien ’n nie-nul res<br />

verkry word is daar fout met die boodskap.<br />

Gestel die raam B(x)=1101011011 moet gestuur word en die generator polinoom<br />

is G(x)=x4 + x1 + 1=10011 (figuur 4.2). Die waarde van r is dus 4, maw die<br />

polinoom is r + 1 bisse lank. Die raam word dus eers met 24 vermenigvuldig<br />

om B(x) ∗ 24 =11010110110000 te lewer. Nadat B(x) ∗ 24 deur G(x) gedeel is<br />

word ’n res R(x)=1110 verkry. R(x) word modulo-2 van B(x) ∗ 24 afgetrek om<br />

T(x)=11010110111110 te lewer.<br />

Daar is verskeie generator polinome wat as standaarde beskou word, bv.:<br />

• CRC-12 = x 12 + x 11 + x 3 + x 2 + x 1 + 1 = 1100000001111<br />

• CRC-16 = x 16 + x 15 + x 2 + 1 = 11000000000000101<br />

2. Gaan-N-Terug <strong>of</strong> kontinue transmissie: Met hierdie protokol stuur die<br />

sender aanhoudend rame sonder om te wag vir ’n ERK. Elke raam word<br />

in ’n buffer by die sender gehou totdat ’n ERK vir die raam ontvang is.<br />

Met die ontvangs van ’n ERK vir ’n raam kan die raam verwyder word en<br />

die buffer vir ’n volgende raam gebruik word. Indien ’n NEK vir ’n raam<br />

ontvang word, <strong>of</strong> tydverstreke vir die raam plaasvind word daardie raam<br />

en al die rame wat daarop volg weer gestuur. Die sender moet dus genoeg<br />

buffers hê om al die rame waarvoor nog vir ERK’e gewag word in te stoor.<br />

Verder moet die sender oor ’n tydhou meganisme beskik waarmee vir elke<br />

raam tyd gehou kan word van hoe lank vir ’n ERK gewag word. Aan die<br />

ontvanger se kant moet daar weer getoets word <strong>of</strong> ’n raam foutloos is en<br />

<strong>of</strong> dit in volgorde is. Indien nie moet ’n NEK gestuur word om aan te dui<br />

• CRC-CCITT = x 16 + x 12 + x 5 + 1 = 10001000000100001<br />

CRC-16 en CRC-CCITT sal alle enkel-bis en dubbel-bis foute, alle foute waar<br />

’n onewe aantal bisse betrokke is en alle foutsarsies korter as 16 bisse uitvang.<br />

Verder sal meer as 99.99% foutsarsies wat 17 bisse en langer is uitgevang word.<br />

4.2 Basiese ARQ protokolle<br />

<br />

Kommunikasie tussen nodes in ’n netwerk is gewoonlik asinkroon gevolglik is<br />

daar nodigheid dat individuele pakkette sinkronisasie inligting bevat om bis


4.3. ANALYSIS OF THE STOP-AND-WAIT PROTOCOL 79<br />

<br />

to the network layer <strong>of</strong> the receiver. It is obvious that the throughput <strong>of</strong><br />

this protocol, because <strong>of</strong> its pipe-line operation, will be superior to that<br />

<strong>of</strong> the Stop-and-wait protocol.<br />

<br />

Addendum 5<br />

3. Selective repeat or selective reject: This protocol is basically the same<br />

as the Go-back-N, except that only the frame that was received incorrectly<br />

will be NAC’ed and will be sent again. In this case the receiver<br />

should possess over a sufficiently large buffer to store the frames that have<br />

been received out <strong>of</strong> the right sequence, to first sort them before passing<br />

them on to the network layer in the correct sequence. This protocol has<br />

lately become more attractive, because <strong>of</strong> the improvements in memory<br />

technology and the accompanying drop in prices.<br />

Network layer: Route<br />

control capability<br />

5.1 Introduction<br />

The purpose <strong>of</strong> the network layer is to transfer packets from their source on<br />

one end <strong>of</strong> the communication subnet, to their destination on the other end <strong>of</strong><br />

the subnet. The network layer makes use <strong>of</strong> the services <strong>of</strong> the data link layer,<br />

to transfer frames over the various physical links ranging from the source to<br />

the destination. The path from source to destination may pass a number <strong>of</strong><br />

nodes. Because the data link layer is concerned only with the transfer <strong>of</strong> frames<br />

from one point <strong>of</strong> a link to the next, it differs from the network layer. The<br />

result is that the network layer is the lowest layer <strong>of</strong> the OSI model handling<br />

endpoint-to-endpoint traffic.<br />

To achieve its purpose, the network layer has to know the topology <strong>of</strong> the<br />

communication subnet so that routes may be chosen through the subnet. The<br />

network layer has to choose the routes in such a way that no links will be<br />

overloaded while other links are standing idle. If the source and the destination<br />

are in different networks, it is the task <strong>of</strong> the network layer to span the differences<br />

between the networks.<br />

The network layer provides four services to the transport layer above it, i.e.:<br />

1. Routing <strong>of</strong> packets through the subnet.<br />

2. Congestion control.<br />

3. Flow control.<br />

4. Interlinking <strong>of</strong> different networks (internetworking).<br />

5.1.1 Routing<br />

In most subnets it is neccessary that packets should ”jump” a few times from<br />

node to node. The exceptions are the so-called broadcasting networks, like<br />

103


4.3. ANALISE VAN DIE STOP-EN-WAG PROTOKOL. 81<br />

watter raam verwag word. Sodra ’n raam foutloos en in volgorde ontvang<br />

is kan dit deurgegee word aan die netwerklaag van die ontvanger. Dit is<br />

duidelik dat die deurvoer van hierdie protokol as gevolg van sy pyplyn<br />

werking beter as die van die Stop-en-Wag protokol is.<br />

Bylaag 5<br />

Netwerklaag:<br />

Roetebeheerfunksie<br />

3. Selektiewe Herhaal <strong>of</strong> Selektiewe Verwerp: Hierdie protokol werk basies<br />

dieselfde as Gaan-N-Terug behalwe dat slegs die raam wat foutief ontvang<br />

word ge-NEK word en oor gestuur word. Dit is dus hier nodig dat die<br />

ontvanger oor ’n groot genoeg buffer beskik om rame wat uit volgorde<br />

is in te stoor sodat hulle eers gesorteer kan word voordat hulle dan in<br />

volgorde aan die netwerklaag deurgegee word. Met die verbetering in<br />

geheue tegnologie en die gepaardgaande daling in geheue pryse raak hierdie<br />

protokol al hoe meer aantreklik.<br />

5.1 Inleiding<br />

Die netwerklaag se doel is om pakkette vanaf hulle oorsprong aan een kant van<br />

die kommunikasie subnet tot by hulle eindbestemming aan die anderkant van<br />

die subnet te kry. Die netwerklaag maak van die dienste van die dataverbindingslaag<br />

gebruik vir die oordra van rame oor die verskillende fisiese vebindings<br />

wat vanaf oorsprong tot eindbestemming strek. Die pad vanaf oorsprong tot<br />

bestemming kan oor ’n hele aantal nodes strek. Daar is dus onmiddellik ’n<br />

onderskeid wat met die dataverbindingslaag getref kan word aangsien laasgenoemde<br />

slegs gemoeid is met die oordra van rame van een punt van ’n verbinding<br />

na die ander. Ons het dus dat die netwerklaag die laagste laag in die OSI<br />

model is wat eindpunt-tot-eindpunt verkeer hanteer.<br />

Om in sy doel te kan slaag is dit dus nodig dat die netwerklaag oor kennis van<br />

die topologie van die kommunikasie subnet beskik sodat roetes deur die subnet<br />

gekies kan word. Die netwerklaag moet ook roetes so kies dat geen verbindings<br />

oorlaai word nie terwyl ander verbindings niks het om te doen nie. Indien die<br />

oorsprong en eindbestemming in verskillende netwerke geleë is, is dit ook die<br />

netwerklaag se taak om die verskille tussen die netwerke te oorkom.<br />

Die netwerklaag lewer vier dienste aan die transportlaag bokant hom, nl.:<br />

1. Roetering van pakkette deur die subnet.<br />

2. Kongestie beheer.<br />

3. Vloei beheer.<br />

<br />

4. Tussenverbinding van verskillende netwerke (internetworking).<br />

105


5.1. INTRODUCTION 105<br />

104 ADDENDUM 5. NETWORK LAYER<br />

5.1.2 Congestion and flow control<br />

<br />

CSMA/CD networks and satellite/radio networks like the ALOHA system. But<br />

even in these cases it is still neccessary that routing should be done if the source<br />

and the destination are on different networks.<br />

<br />

When too many packets are in a section <strong>of</strong> the subnet, the functioning may deteriorate.<br />

This situation is known as congestion. Under normal circumstances,<br />

the number <strong>of</strong> packets delivered by the subnet, is proportional to the number<br />

<strong>of</strong> packets introduced into the subnet, provided that the number <strong>of</strong> packets imported<br />

are within its capacity. Except for the few packets that pick up errors<br />

along the way and that have to be sent again, all packets that are imported are<br />

delivered. However, when the packets imported exceed the capacity <strong>of</strong> the network,<br />

the intermediary nodes will not be able to handle the number <strong>of</strong> packets,<br />

so that they will start losing packets. Should the number <strong>of</strong> packets be further<br />

increased, the functioning <strong>of</strong> the subnet will deteriorate further up to the point<br />

that almost no packets will be delivered.<br />

At every node, therefore, use is made <strong>of</strong> some algorithm to decide on which<br />

outgoing link a package that was received should be sent <strong>of</strong>f. If the network<br />

makes use <strong>of</strong> datagrams, the choice is made for every packet that is received.<br />

However, if the network makes use <strong>of</strong> virtual rings, the choice is made only once<br />

during the set-up <strong>of</strong> the virtual ring. All packets to be sent over the virtual<br />

ring, will then be sent via the same outgoing link.<br />

Irrespective <strong>of</strong> whether the type <strong>of</strong> network is a datagram or virtual ring, there<br />

are still a number <strong>of</strong> properties that are desirable in the routing algorithm. Some<br />

<strong>of</strong> these properties are correctness, simplicity, robustsness, stability, fairness and<br />

optimality.<br />

One <strong>of</strong> the reasons why congestion occurs, is because the intermediary nodes are<br />

too slow in doing the neccessary bookkeeping about the filling and emptying <strong>of</strong><br />

the buffers, the updating <strong>of</strong> tables, etc. Another reason is that the traffic exceeds<br />

the capacity <strong>of</strong> the subnet. In both cases queues <strong>of</strong> packets will build up at the<br />

nodes <strong>of</strong> the subnet, flooding the buffers. When all the buffers <strong>of</strong> a node are full,<br />

the node cannot receive any more packets and all new packets arriving have to<br />

be ”discarded”. Each node which had sent a packet which had been discarded,<br />

will record a timeout on that packet and will send it again. The sender node also<br />

cannot get rid <strong>of</strong> the packet before it had been acknowledged, so that its own<br />

buffer is also kept occupied. The result is that the sending node will also get to<br />

the stage when it has no more space in its buffers. In this way a congestion will<br />

cause a build-up effect which will wash back to the source <strong>of</strong> the packets.<br />

The essence <strong>of</strong> correctness and simplicity is self evident. Robustness is neccessary,<br />

because when a large network is established, it should be functioning for a<br />

long period (maybe even years) without any network-wide interruptions. However,<br />

during that time some hardware or s<strong>of</strong>tware are bound to fail. Nodes and<br />

links will sometimes be down and the topology will be changing all the time.<br />

Then also, there will be a persistant fluctuation in the traffic on the network.<br />

The routing algorithm should be able to handle all these problems and should<br />

keep routing the traffic without an initiation <strong>of</strong> the network to be required every<br />

time. To do so, the network algorithm will have to monitor the operation <strong>of</strong> the<br />

network, decide on routing based on the present topology and traffic through<br />

the network, and implement these decisions. This means that in the routing<br />

algortithm congestion control comes into play.<br />

Congestion control is when excessive loads on some nodes is avoided, by requesting<br />

nodes carrying a lesser load to postpone their transmissons for a while.<br />

From this it is obvious that congestion control should address a global problem.<br />

Flow control, on the other hand, is the management <strong>of</strong> the traffic over a pointto-point<br />

link between two nodes. The purpose <strong>of</strong> flow control is to ensure that a<br />

fast node will not send packets faster than they can be received by a slow node<br />

at the other end <strong>of</strong> the point-to-point link. In flow control a direct feed-back<br />

from receiver to sender usually takes place.<br />

The routing algorithm is stable if the changes it makes go smoothly. Therefore<br />

small alterations in the network traffic and network topology should result<br />

in small alterations in the present routing. Instability is the situation where<br />

the routing algorithm adjusts the routing through the network because <strong>of</strong> the<br />

changes in the state <strong>of</strong> the network, and this results in a change in the traffic<br />

through the network which then again requires an adjustment, etc.<br />

5.1.3 Internetworking<br />

A routing algorithm is fair if all packets will have to wait an equal time at all<br />

nodes before being transferred. This definition can also be adjusted to include<br />

different classes <strong>of</strong> priorities. If priorites (or service qualities as they are also<br />

known) are assigned, then all packets <strong>of</strong> the same priority should have to wait<br />

the same time.<br />

Internetworking, just like congestion control, is closely associated with the routing<br />

function <strong>of</strong> the network layer. In the case <strong>of</strong> internetworking the routing<br />

problems are, however, compounded because the source and the destination <strong>of</strong><br />

the packets are not in the same subnet. So, for instance, is it possible that the<br />

two networks containing the source and the destination nodes are not directly<br />

linked. Then it is the task <strong>of</strong> the network layer to find a route through one or<br />

more intermediary subnets. Over and above the routing problems, matters can<br />

be even worse when the different subnets do not use the same protocols. Then<br />

conversions between the different protocols have to be performed. Just imagine<br />

the problems that will arise when packets have to be sent along both datagram<br />

and virtual ring networks. A further problem may be that the addressing <strong>of</strong><br />

different networks may differ.<br />

Optimality is a property that concerns the global operation <strong>of</strong> the routing algorithm.<br />

Optimality includes different measurable aspects. One <strong>of</strong> these is that<br />

the waiting time <strong>of</strong> packets should be kept as short as possible. If there are a<br />

large number <strong>of</strong> packets which all have a small waiting time before being sent,<br />

but a few with a long waiting time, then the average waiting time will be small.<br />

But from the viewpoint <strong>of</strong> the packets which have to wait long, this situation is<br />

not a fair one.


5.1. INLEIDING 107<br />

106 BYLAAG 5. NETWERKLAAG<br />

delde wagtyd laag wees. Die situasie is egter nie regverdig vanuit di oogpunt<br />

van die enkele pakkette wat lang wagtye beleef.<br />

5.1.1 Roetering<br />

5.1.2 Kongestie en vloei beheer<br />

Dit is in die meeste subnette nodig dat pakkette ’n aantal keer van node tot<br />

node moet “spring”. Die uitsondering is sogenaamde uitsaai netwerke soos<br />

CSMA/CD netwerke en satelliet/radio netwerke soos die ALOHA stelsel. Dit<br />

is in hierdie gevalle nog steeds nodig om roetering te doen indien oorsprong en<br />

eindbestemming op verskillende netwerke is.<br />

Sodra daar te veel pakkette in ’n gedeelte van ’n subnet is kan werkverrigting<br />

degradeer. Hierdie toedrag van sake staan as kongestie bekend. Onder normale<br />

omstandighede is die aantal pakkette wat deur die subnet afgelewer word<br />

eweredig aan die aantal pakkette wat in die subnet ingevoer is mits die aantal<br />

pakkette wat ingevoer word binne die subnet se dravermoë <strong>of</strong> kapasiteit is. Behalwe<br />

vir die enkele pakkette wat foute langs die pad optel en herversend moet<br />

word, word alle pakkette wat ingevoer word dus afgelewer. Sodra die aantal<br />

pakkette wat ingevoer word egter die kapasiteit van die netwerk oorskrei kan<br />

die intermediêre nodes nie meer die hoeveelheid pakkette hanteer nie met die<br />

gevolg dat hulle pakkette begin verloor. Indien die invoer verder verhoog word,<br />

sal die subnet se werkverrigting nog verder verswak tot die punt dat byna geen<br />

pakkette afgelewer word nie.<br />

Daar word dus by elke node op die subnet van een <strong>of</strong> ander roetering algoritme<br />

gebruik gemaak om te besluit op watter uitgaande verbindig ’n pakket wat<br />

ontvang is uitgestuur moet word. Indien die netwerk van datagramme gebruik<br />

maak word die keuse vir elke pakket wat ontvang word gedoen. Indien die<br />

netwerk egter van vituele kringe gebruik maak word die keuse eenmaal gedoen<br />

tydens die opstel van ’n virtuele kring. Alle pakkette wat dan oor die betrokke<br />

virtuele kring gestuur word sal dan op dieselfde uitgaande verbinding uitgestuur<br />

word.<br />

Nieteenstaande die tipe netwerk, datagram <strong>of</strong> virtuele kring, is daar tog ’n<br />

aantal eienskappe wat wenslik is van ’n roetering algoritme. Van die eienskappe<br />

is korrektheid, eenvoud, robuustheid, stabiliteit, regverdigheid en optimaliteit.<br />

Een oorsaak van kongestie is dat die intermediêre nodes te stadig is om die<br />

nodige boekhouding te doen rondom buffers vul en leegmaak, tabelle op datum<br />

hou ens. Nog ’n oorsaak is verkeer wat hoër is as die kapasiteit van die subnet.<br />

In beide gevalle gaan daar toue van pakkette by die nodes in die subnet opbou<br />

en dus gaan die buffers vol raak. Sodra al die buffers van ’n node vol is kan die<br />

node nie meer pakkette ontvang nie en moet enige nuwe pakkette wat aankom<br />

“weggegooi” word. Elke node wat ’n pakket gestuur het wat “weggegooi” is gaan<br />

’n tydverstreke op daardie pakket kry en dit dus weer stuur. Die stuurende node<br />

kan ook nie van die pakket ontslae raak voordat die pakket nie erken is nie, dus<br />

word ’n buffer ook by hom opgehou. Die gevolg is dat die stuurende node ook<br />

na ’n tyd oor geen oop buffers beskik nie en sodoende gaan die kongestie ’n<br />

opdamming veroorsaak wat terug beweeg na die bron van die pakkette.<br />

Die noodsaaklikheid van korrektheid en eenvoud is vanselfsprekend. Wat robuustheid<br />

betref is dit nodig om te besef dat nadat ’n groot netwerk aan die gang<br />

gesit is dit vir ’n lang tydberk (jare!) moet kan funksioneer sonder enige netwerkwye<br />

onderbrekings. Maar gedurende daardie tyd sal daar beslis apparatuur en<br />

programatuur wees wat faal. Nodes en verbidings sal afgaan en die topologie<br />

sal dus voortdurend verander. Verder is daar ook voortdurende wisseling in<br />

die verkeer wat deur die netwerk vloei. Die roetering algoritme moet al hierdie<br />

probleme kan hanteer en verkeer aanhoudend roeteer sonder dat die netwerk<br />

met elke verandering van vooraf geïnisieer word. Dit is dus nodig dat die roetering<br />

algoritme voortdurend die netwerk se werking monitor, roetering besluite<br />

neem op grond van die huidige topologie en verkeer wat deur die netwerk vloei<br />

en om dan hierdie besluite te implimenteer. Daar is dus sprake van kongestie<br />

beheer by die roetering algoritme.<br />

Kongestie beheer kom daarop neer dat verhoed word dat sommige nodes buitensporig<br />

oorlaai word deurdat nodes wat ’n ligter las dra versoek word om hulle<br />

transmissies ’n rukkie uit te stel. Dit is dus duidelik dat kongestie beheer ’n<br />

globale probleem moet aanspreek.<br />

Aan die anderkant hanteer vloei beheer die verkeer oor ’n punt-tot-punt verbinding<br />

tussen twee nodes. Die doel van vloei beheer is om te sorg dat ’n vinnige<br />

node nie pakkette vinniger stuur as wat ’n stadiger node aan die ander kant<br />

van die punt-tot-punt verbinding hulle kan ontvang nie. Vloei beheer behels<br />

gewoonlik die direkte terugvoer vanaf die ontvanger na die sender van pakkette.<br />

Die roetering algoritme is stabiel indien die veranderings wat dit aangebring<br />

glad verloop. Klein veranderings in netwerk verkeer en netwerk topologie moet<br />

dus klein veranderings in die huidige roetering teweeg bring. Onstabiliteit is die<br />

situasie waar die roetering algoritme die roetering deur die netwerk aanpas op<br />

grond van veranderings in die netwerk se huidige stand, net om weer te veroorsaak<br />

dat die verkeer deur die netwerk verander waarop daar weer ’n aanpassing<br />

gemaak moet word... en so aan.<br />

5.1.3 Netwerk tussenverbinding<br />

’n Roetering algoritme is regverdig indien alle pakkette by alle nodes ewe lank<br />

wag voordat hulle aangestuur word. Hierdie definisie kan ook aangepas word<br />

om verskillende klasse van prioriteite in te sluit. Indien daar van prioriteite, <strong>of</strong><br />

kwaliteite van diens soos dit ook bekend staan, gebruik maak, moet alle pakkette<br />

met dieselfde prioriteit dus ewe lank wag.<br />

Netwerk tussenverbinding is net soos kongestie beheer nou gekoppel aan die<br />

roetering funksievan die netwerklaag. Met netwerk tussenverbinding word die<br />

roetering probleme egter vererger aangesien die oorsprong en eindbestemming<br />

van pakkette nie in dieselfde subnet is nie. Dit is byvoorbeeld moontlik dat<br />

die twee netwerke wat die oorsprong en eindbestemming nodes bevat nie direk<br />

verbind is nie. Dit is dan die taak van die netwerklaag om ’n roete deur een<br />

<strong>of</strong> meer intermediêre subnette te vind. Behalwe die probleme rondom roeter-<br />

Optimaliteit het weer te doen met die globale werking van die roetering algoritme.<br />

Verskillende aspekte kan gemeet word wanneer dit kom by optimaliteit.<br />

Een moontlikheid is om die gemiddelde wagtyd van pakkette so kort as moontlik<br />

te hou. Indien daar dus ’n groot aantal pakkette is wat almal kort wagtye voor<br />

versending deurbring met enkele pakkette wat lank moet wag, gaan die gemid-


5.2. ROUTING ALGORITHMS 107<br />

106 ADDENDUM 5. NETWORK LAYER<br />

5.2 Routing algorithms<br />

<br />

Virtual Source Intermediary Destination<br />

ring node node(s) node<br />

V1 5 2 3 4<br />

V2 1 2 3 6<br />

V3 2 3 6 7 8<br />

V4 4 3 6 5<br />

<br />

V5 4 3 2 5<br />

.<br />

.<br />

.<br />

.<br />

The entries in the route table <strong>of</strong> node 3 will then be as follows:<br />

Virtual Exit<br />

ring link<br />

V1 4<br />

V2 6<br />

V3 6<br />

V4 6<br />

As mentioned abopve, it is the purpose <strong>of</strong> routing to find a route through a<br />

subnet along which packets may be sent from a given source to a specific destination.<br />

One possibility is to let the packets travel along a virtual ring, which<br />

would mean that all packets belonging to a specific communication session would<br />

follow the same route. Another possibility is that packets may travel independently<br />

as datagrams through the subnet. In both cases a route table at each<br />

node comes into play. In the case <strong>of</strong> a virtual ring, the route table will have an<br />

entry for each virtual ring to indicate on which exit link the route <strong>of</strong> the ring<br />

would lie. For datagrams the route table will have an entry for each possible<br />

destination giving the exit link for the best route to that destination. In this<br />

last case it is also possible to have a table containing a number <strong>of</strong> exit links,<br />

each for a different route, arranged from best to worst. When a packet arrives<br />

at a node, the node checks its route table to determine along which exit link the<br />

packet has to be sent to finally reach its destination. These route tables have<br />

to be compiled by the routing algorithm <strong>of</strong> the network layer.<br />

V5 2<br />

.<br />

.<br />

Consider for example the network in Figure 5.1. In the case <strong>of</strong> datagrams the<br />

entries in the route table <strong>of</strong> (say) node 5 may appear as follows:<br />

Each time a new virtual ring is set up, a new entry is made in the route table.<br />

Information from a datagram route table may be used in the process. It is therefore<br />

possible to have virtual rings from the same source to the same destination<br />

running along different paths, such as virtual rings V4 and V5 in the example.<br />

When a virtual ring is terminated, its entry is removed from the route tables.<br />

Routing algorithms may be classified in different fashions. We distinguish for<br />

instance, between non-adaptable or static routing algorithms and adaptable or<br />

dynamic routing algorithms. In static routing algorithms the routing is not<br />

based on the continuous measurement or estimation <strong>of</strong> the traffic, or on the<br />

changes in the topology. In fact, the routing tables are determined in advance<br />

when the network is set up, and is then installed on the different nodes. On the<br />

other hand dynamic routing algorithms continually adapt the routing tables to<br />

changes in the traffic through the subnet, as well as to changes in the topology<br />

<strong>of</strong> the subnet.<br />

Destination Exit Fraction<br />

link<br />

1 1 0.9<br />

2 0.1<br />

2 2 0.9<br />

1 0.1<br />

3 6 0.6<br />

2 0.4<br />

4 6 0.6<br />

2 0.4<br />

.<br />

.<br />

.<br />

Another distinguishing factor is where the algorithm is executed. Some algorithms,<br />

for instance, are executed on a specific node and calculate route tables<br />

for all the nodes in the subnet. Such a node is known as the route control<br />

centre. The route tables then have to be distributed throughout the network.<br />

These algorithms are called centralised routing algorithms. The alternative is<br />

decentralised routing algorithms where each node calculates its own route table.<br />

A further distinguishing factor is the way in which optimality is calculated. One<br />

possiblity is to find for each source-destination pair the the shortest or cheapest<br />

path. We call this the shortest path routing. We shall consider this type <strong>of</strong><br />

algorithm in more detail. The other possibility is to minimise the network-wide<br />

average waiting times. By this method it is possible that more than one route<br />

may exist between a given source-destination pair, as shown in the example <strong>of</strong><br />

the datagram route tables above. Algorithms minimising network wide mean<br />

waiting times are known as multipad or bifurcation routing algorithms.<br />

The exit link is identified as the node at the other end <strong>of</strong> the point-to-point<br />

link. There are more than one path to each <strong>of</strong> the other nodes. The choice<br />

<strong>of</strong> path can be done randomly. For each packet arriving a random number is<br />

generated in the interval [0, 1]. Suppose the destination <strong>of</strong> a packet is node 4.<br />

If the random number generated is less than 0.6, the packet is sent to node 6,<br />

otherwise it is sent to node 2. This means that node 5 will send 60% <strong>of</strong> the<br />

packets destined for node 4 to node 6, and 40% to node 2.<br />

In virtual rings, the routing tables will be specifying paths around the different<br />

virtual rings. Suppose that the following virtual rings have been set up by<br />

the network in Figure 5.1 (The numbers <strong>of</strong> the virtual rings are, for simplicity,<br />

considered to be constant throughout the network):


5.2. ROETERING ALGORITMES 109<br />

108 BYLAAG 5. NETWERKLAAG<br />

60% van die pakkette wat vir node 4 bestem is na node 6 toe stuur en 40% na<br />

node 2.<br />

Die roetering tabelle met virtuele kringe word weer rondom die verskillende<br />

virtuele kringe georganiseer. Gestel dat die volgende virtuele kringe deur die<br />

netwerk in figuur 5.1 opgestel is (die virtuele kringe se nommers word ter vereenvoudiging<br />

as konstant regdeur die netwerk beskou):<br />

ing kan sake nog verder vererger word deurdat die verskillende subnette nie<br />

dieselfde protokolle gebruik nie. Daar moet dan omskakelings tussen verskillende<br />

protokolle gedoen word. Dink maar aan die probleme wat ervaar sal word<br />

indien pakkette deur beide datagram en virtuele kring subnette gestuur moet<br />

word. Nog ’n probleem is dat adressering in verskillende netwerke van mekaar<br />

verskil.<br />

Virtuele Oorsprong Intermediêre Eindbestemming<br />

kring node node(s) node<br />

V1 5 2 3 4<br />

V2 1 2 3 6<br />

V3 2 3 6 7 8<br />

V4 4 3 6 5<br />

5.2 Roetering algoritmes<br />

V5 4 3 2 5<br />

.<br />

.<br />

.<br />

.<br />

Die inskrywings in die roete tabel van node 3 lyk dan soos volg:<br />

Virtuele Uitgaande<br />

kring verbinding<br />

V1 4<br />

V2 6<br />

V3 6<br />

V4 6<br />

V5 2<br />

.<br />

.<br />

Soos reeds genoem is dit die doel van roetering om ’n roete deur ’n subnet te<br />

verkry waarlangs pakkette vanaf ’n gegewe oorsprong tot ’n gegewe eindbestemming<br />

gestuur kan word. Een moontlikheid is dat pakkette langs ’n virtuele kring<br />

beweeg, in welke geval alle pakkette van ’n gegewe kommunikasie sessie langs<br />

dieselfde roete sal beweeg. ’n Ander moontlikheid is dat pakkette afsonderlik<br />

as datagramme deur die subnet beweeg. In beide gevalle is daar sprake<br />

van ’n roete tabel by elke node. In die geval van virtuele kringe sal die roete<br />

tabel ’n inskrywing vir elke virtuele kring bevat wat aandui op watter uitgaande<br />

verbinding die virtuele kring se roete lê. By datagramme sal die roetetabel vir<br />

elke moontlikke eindbestemming ’n inskrywing hê wat die uitgaande verbinding<br />

bevat vir die beste roete na daardie eindbestemming. In laasgenoemde geval is<br />

dit ook moontlik om ’n tabel te hê wat ’n aantal uitgaande verbindings bevat,<br />

elk vir ’n ander roete, wat van beste tot slegste gerangskik is. Sodra ’n pakket<br />

dus by ’n node aankom kyk die node net in sy roete tabel om vas te stel langs<br />

watter uitgaande verbinding die pakket gestuur moet word om uiteindelik by sy<br />

eidbestemming aan te kom. Hierdie roete tabelle moet deur die netwerklaag se<br />

roetering algoritme opgestel word.<br />

Elke keer wat ’n nuwe virtuele kring opgestel word, word ’n nuwe inskrywing<br />

in die roete tabel gemaak. Inligting soos vervat in ’n datagram roete tabel kan<br />

in die proses gebruik. Dit is dus dan ook moontlik om virtuele kringe vanaf<br />

dieselfde oorsprong na dieselfde eindbestemming te hê wat langs verskillende<br />

paaie loop soos virtuele kringe V4 en V5 in die voorbeeld. Wanneer ’n virtuele<br />

kring getermineer word, word sy inskrywing uit die roete tabelle verwyder.<br />

Beskou byvoorbeeld die netwerk in figuur 5.1. In die geval van datagramme kan<br />

die inskrywings in (sê) node 5 we roete tabel soos volg lyk:<br />

Roetering algoritmes kan op verskillende maniere geklassifiseer word. Een onderskeid<br />

is tussen nie-aanpasbare <strong>of</strong> statiese roetering algoritmes en aanpasbare<br />

<strong>of</strong> dinamiese roetering algoritmes. Met statiese roetering algoritmes word die<br />

roetering nie gebasseer op die voortdurende meting <strong>of</strong> skatting van verkeer <strong>of</strong><br />

verandering in topologie nie. Die roetering tabelle word eerder vooruit bepaal<br />

en dan op die verskillende nodes geïnstalleer met die opstel van die netwerk.<br />

Dinamiese roetering algoritmes aan die ander hand pas voorturend die roete<br />

tabelle aan by veranderinge in die verkeer wat deurdie subnet beweeg asook<br />

veranderinge in die topologie van die subnet.<br />

Bestemming Uitgaande Breukdeel<br />

verbinding<br />

1 1 0.9<br />

2 0.1<br />

2 2 0.9<br />

1 0.1<br />

3 6 0.6<br />

2 0.4<br />

4 6 0.6<br />

2 0.4<br />

.<br />

.<br />

.<br />

Nog ’n onderskeid wat getref kan word is aan die hand van waar die algoritme<br />

uitgevoer word. Daar is byvoorbeeld algoritmes wat op ’n spesifieke node uitgevoer<br />

word en roete tabelle vir al die nodes in die subnet bereken. So ’n<br />

node staan dan bekend as ’n roete beheer sentrum. Dit is dan nodig dat die<br />

roete tabelle deur die netwerk versprei word. Hierdie algoritmes staan as gesentraliseerde<br />

roetering algoritmes bekend. Die alternatief is gedesentraliseerde<br />

algoritmes waar elke node sy eie roete tabel bereken.<br />

Die uitgaande verbinding word geïdentifiseer as die node aan die ander punt van<br />

die punt-tot-punt verbinding. Daar is meer as een mmontlike pad na elkeen van<br />

die ander nodes. Die keuse van watter een van die paaie gebruik moet word kan<br />

lukraak gedoen word. Met elke pakket wat aankom word daar eers ’n waarde<br />

lukraak in die interval [0, 1] gegenereer. Gestel die bestemming vir ’n pakket is<br />

node 4. Indien die kansgetal wat gegenereer is kleiner is as 0.6 word die pakket<br />

na node 6 aangestuur, anders word dit na node 2 aangestuur. Node 5 sal dus


5.2. ROUTING ALGORITHMS 109<br />

108 ADDENDUM 5. NETWORK LAYER<br />

<br />

j is given by l(i, j). If nodes i and j are not directly linked, the cost between<br />

them is given by l(i, j) = ∞. Also the cost <strong>of</strong> the shortest path from each node<br />

v to the source node b is given by A(v). The exit link (next node) on this path<br />

is given by O(v). For each node the pair [O(v),A(v)] is calculated. With the<br />

iterations <strong>of</strong> the algorithm the value A(v) may become smaller and O(v) may<br />

change to indicate the cost and the exit link on a shorter path. Node O(v)<br />

finally, is the parent <strong>of</strong> node v in the shortest path tree <strong>of</strong> node b.<br />

<br />

The algorithm has two parts, i.e. an initialisation step and a step that is repeated<br />

until the algorithm terminates. The algorithm works as follows (with b the<br />

source node):<br />

1. Initial ring step:<br />

• Place the source node in the set N, therefore N = {b}.<br />

• Calculate [O(v),A(v)] for each node v not in N:<br />

<br />

[b,l(b,v)] if nodes v and b are directly linked<br />

[O(v), A(v)] =<br />

[·, ∞] anders<br />

• Place node b as the root node in the shortest path tree.<br />

2. Iterative step:<br />

Figure 5.1: Example network<br />

• From the nodes not in N, find the node w with the smallest A(w).<br />

5.2.1 Shortest path routing<br />

• Add w to N.<br />

• Add node w as a child <strong>of</strong> node O(w) in the shortest path tree.<br />

• Recalculate [O(v),A(v)] for all nodes v which are not in N.<br />

[O(v), A(v)] = inf cost([O(v),A(v)], [w, A(w) + l(v, w)]).<br />

• Repeat this step until all nodes are in N.<br />

In shortest path routing an attempt is made to minimise the cost <strong>of</strong> the route<br />

between every source-destination pair. It may therefore also be called lowest<br />

cost routing. The cost <strong>of</strong> a link may depend on various factors. It may inter<br />

alia be a function <strong>of</strong> the physical length, <strong>of</strong> the bandwidth and <strong>of</strong> the security<br />

<strong>of</strong> the link. The number <strong>of</strong> intermediate nodes on a route may also contribute<br />

to the cost <strong>of</strong> the route. We consider two centralised algorithms, one due to<br />

Dijkstra and the other due to Ford and Fulkerson.<br />

Example<br />

Consider the network in Figure 5.1. Choose node 4 as the source node, then we<br />

get:<br />

Dijkstra’s algorithm<br />

Step N [O(v),A(v)]<br />

1 2 3 5 6 7 8<br />

Initiating {4} [·, ∞] [·, ∞] [4, 4] [·, ∞] [·, ∞] [·, ∞] [·, ∞]<br />

1 {3,4} [·, ∞] [3, 8] [4, 4] [·, ∞] [3, 9] [·, ∞] [·, ∞]<br />

2 {2,3,4} [2, 11] [3, 8] [2, 13] [3, 9] [·, ∞] [·, ∞]<br />

3 {2,3,4,6} [2, 11] [6, 11] [3, 9] [6, 13] [·, ∞]<br />

4 {1,2,3,4,6} [2, 11] [6, 11] [6, 13] [·, ∞]<br />

5 {1,2,3,4,5,6} [6, 11] [6, 13] [·, ∞]<br />

6 {1,2,3,4,5,6,7} [6, 13] [7, 16]<br />

7 {1,2,3,4,5,6,7,8} [7, 16]<br />

FINAL [2, 11] [3, 8] [4, 4] [6, 11] [3, 9] [6, 13] [7, 16]<br />

This algorithm determines the shortest or cheapest path from a specific node,<br />

the source node, to all the other nodes in a network. However, the algorithm<br />

requires information about the global topology <strong>of</strong> the network. The algorithm,<br />

in a step-by-step procedure, builds a shortest path tree <strong>of</strong> the network. The<br />

algorithm terminates when a shortest path has been found to the furthest node.<br />

The root node in the tree is then the one for which the shortest paths to all the<br />

other nodes are required. After the kth step has been performed, the shortest<br />

paths to the k nodes closest to the source will be available. The nodes to which<br />

the shortest routes have already been found, are placed in a set N. If there are<br />

M nodes in the network, the algorithm will require M steps to construct the<br />

shortest path tree.<br />

For each step the [O(v),A(v)] pair <strong>of</strong> the node with the lowest cost (shortest<br />

path) is underlined. The values cannot change and therefore they are not shown<br />

in the table any more. The shortest path tree built for node 4 (in the network<br />

<strong>of</strong> Figure 5.1), is shown in Figure 5.2.<br />

Some information is required for the algorithm, such as the distance or cost<br />

between each pair <strong>of</strong> nodes in the network. The cost between node i and node


5.2. ROETERING ALGORITMES 111<br />

110 BYLAAG 5. NETWERKLAAG<br />

stap vir stap ’n kortste pad boom van die netwerk op. Die algoritme termineer<br />

sodra die kortste pad na die verste node gevind is. Die wortel node in die boom<br />

is dan die een waarvoor die kortste paaie na al die ander nodes verlang word.<br />

Nadat die k’e stap uitgevoer is sal die kortste paaie na die k nodes naaste aan<br />

die bron node beskikbaar wees. Die nodes waarheen kortste paaie reeds gevind<br />

is word in ’n versameling N geplaas. Indien daar M nodes in die netwerk is sal<br />

die algoritme M stappe benodig om die kortste pad boom op te stel.<br />

Vir die algoritme word die volgende inligting benodig: Die afstand <strong>of</strong> koste<br />

tussen elke paar nodes in die netwerk. Die koste tussen node i en node j word<br />

gegee deur l(i, j), Indien nodes i en j nie direk verbind is word die koste tussen<br />

hulle gegee deur l(i, j) = ∞. Verder word die koste van die kortste pad vanaf<br />

elke node v na die bron node b gegee deur A(v). Die uitgaande verbinding<br />

(volgende node) op hierdie pad word gegee deur O(v). Vir elke node word die<br />

paar [O(v), A(v)] bereken. Soos die algoritme itereer kan A(v) kleiner word en<br />

O(v) verander om die koste van en uitgaande verbinding op ’n korter pad aan te<br />

dui. Node O(v) is dan uiteindelik die ouer van node v in die kortste pad boom<br />

van node b.<br />

Die algoritme het twee dele, nl. ’n inisiërings stap en ’n stap wat herhaal word<br />

totdat die algoritme termineer. Die algoritme lyk soos volg (met node b die<br />

bron node):<br />

1. Inisiëring stap:<br />

• Plaas die bron node in die versameling N, dus N = {b}.<br />

• Bereken [O(v), A(v)] vir elke node v nie in N nie:<br />

<br />

[b, l(b, v)] as nodes v en b direk verbind is<br />

[O(v), A(v)] =<br />

[·, ∞] anders<br />

Figure 5.1: Voorbeeld netwerk<br />

• Plaas node b as wortel node in die kortste pad boom.<br />

2. Iteratiewe stap:<br />

Nog ’n onderskeid kan getref word op die wyse waarop optimaliteit bereken<br />

word. Die een moontlikheid is om vir elke gegewe oorsprong-eindbestemming<br />

paar die kortste <strong>of</strong> goedkoopste pad te vind. Hier word dus gepraat van kortste<br />

pad roetering. Ons sal in meer detail ingaan op hierdie tipe algoritmes. Die<br />

ander moontlikheid is dat die netwerkwye gemiddelde wagtye geminimeer word.<br />

Dit is in hierdie geval moontlik dat daar meer as een roete tussen ’n gegewe<br />

oorsprong-eindbestemming paar kan bestaan soos in die voorbeeld van datagram<br />

roetetabelle hierbo. Algoritmes wat netwerkwye gemiddelde wagtye minimeer<br />

staan as multipad <strong>of</strong> bifurkasie roetering algoritmes bekend.<br />

• Kry uit die nodes wat nie in N is nie die node w met die kleinste<br />

A(w).<br />

• Voeg w by N.<br />

• Voeg node w as ’n kind van node O(w) in die kortste pad boom by.<br />

• Herbereken [O(v), A(v)] vir alle nodes v wat nie in N is nie.<br />

5.2.1 Kortste pad roetering<br />

[O(v), A(v)] = inf koste([O(v), A(v)], [w, A(w) + l(v, w)]).<br />

• herhaal hierdie stap totdat alle nodes in N is.<br />

Voorbeeld<br />

Beskou die netwerk in figuur 5.1. Neem node 4 as die bron node, dan het ons:<br />

Met kortste pad roetering word daar gepoog om die koste van die roete tussen<br />

elke oorsprong-eindbestemming paar te minimeer. Ons kan dus ook praat van<br />

laagste koste roetering. Die koste van ’n verbinding kan verskillende vorms<br />

aanneem. Dit kan ’n funksie wees van onder andere die fisiese lengte, bandwydte<br />

en sekuriteit van die verbinding. Verder kan die aantal intermediêre nodes op<br />

’n roete deel uitmaak van die roete se koste. Ons beskou twee gesentraliseerde<br />

algoritmes, een te danke aan Dijkstra en die ander aan Ford en Fulkerson.<br />

Stap N [O(v),A(v)]<br />

1 2 3 5 6 7 8<br />

Inisiëring {4} [·, ∞] [·, ∞] [4, 4] [·, ∞] [·, ∞] [·, ∞] [·, ∞]<br />

1 {3,4} [·, ∞] [3, 8] [4, 4] [·, ∞] [3, 9] [·, ∞] [·, ∞]<br />

2 {2,3,4} [2, 11] [3, 8] [2, 13] [3, 9] [·, ∞] [·, ∞]<br />

3 {2,3,4,6} [2, 11] [6, 11] [3, 9] [6, 13] [·, ∞]<br />

4 {1,2,3,4,6} [2, 11] [6, 11] [6, 13] [·, ∞]<br />

5 {1,2,3,4,5,6} [6, 11] [6, 13] [·, ∞]<br />

6 {1,2,3,4,5,6,7} [6, 13] [7, 16]<br />

7 {1,2,3,4,5,6,7,8} [7, 16]<br />

FINAAL [2, 11] [3, 8] [4, 4] [6, 11] [3, 9] [6, 13] [7, 16]<br />

Dijkstra se algoritme<br />

<br />

Hierdie algoritme vind die kortste <strong>of</strong> goedkoopste pad vanaf ’n spesifieke node,<br />

die bron node, na al die ander nodes in ’n netwerk. Die algoritme benodig egter<br />

inligting aangaande die globale topologie van die nerwerk. Die algoritme bou


5.2. ROUTING ALGORITHMS 111<br />

110 ADDENDUM 5. NETWORK LAYER<br />

The Ford and Fulkerson algorithm<br />

<br />

<br />

The algorithm <strong>of</strong> Ford and Fulkerson also has two parts, just as was the case for<br />

the algorithm <strong>of</strong> Dijkstra, i.e. an initiating step and a step that is repeated until<br />

the algorithm terminates. The iterative step, however, in this case terminates as<br />

soon as it performs an iteration in which no change takes place. The algorithm<br />

is (let node b be the source node):<br />

1. Initiating step:<br />

Let A(b) = 0, for all the other nodes [O(v),A(v)] = [·, ∞].<br />

2. Iterative step: For all nodes v = b:<br />

• Calculate A(w)+l(v,w) for all nodes w linked directly to v. Use the<br />

present values A(w) <strong>of</strong> each node w.<br />

• Calculate<br />

[O(v),A(v)] = minw([w, A(w) + l(v,w)]).<br />

The value O(v) is the parent <strong>of</strong> each node v in the shortest path tree. These<br />

values can therefore be used to set up the shortest path tree for node b.<br />

Example<br />

Once again consider the network <strong>of</strong> Figure 5.1. Suppose again that node 4 is<br />

the source node, then we get:<br />

Step [O(v),A(v)]<br />

1 2 3 5 6 7 8<br />

Initiation [·, ∞] [·, ∞] [·, ∞] [·, ∞] [·, ∞] [·, ∞] [·, ∞]<br />

1 [·, ∞] [·, ∞] [4,4] [·, ∞] [3,9] [6, 13] [7, 16]<br />

2 [·, ∞] [3,8] [4,4] [6, 11] [3,9] [6, 13] [7, 16]<br />

3 [2, 11] [3,8] [4,4] [6, 11] [3,9] [6, 13] [7, 16]<br />

4 [2, 11] [3,8] [4,4] [6, 11] [3,9] [6, 13] [7, 16]<br />

From the values <strong>of</strong> O(v) we once again get the shortest path tree as shown in<br />

Figure 5.2.<br />

Figure 5.2: Shortest path tree for node 4 <strong>of</strong> the network in figuur 5.1


5.2. ROETERING ALGORITMES 113<br />

112 BYLAAG 5. NETWERKLAAG<br />

Met elke stap word die node met die laagste koste (kortste afstand) se [O(v), A(v)]<br />

paar onderstreep. Die waardes kan nie weer verander dus word hulle ook nie<br />

verder in die tabel getoon nie. Die kortste pad boom wat vir node 4 (in die<br />

netwerk van figuur 5.1) op gebou is word in figuur 5.2 getoon.<br />

Ford en Fulkerson se algoritme<br />

Die algoritme van Ford en Fulkerson het nes Dijkstra se algoritme twee dele,<br />

nl. ’n inisiërings stap en ’n stap wat herhaal word totdat die algoritme termineer.<br />

Die iteratiewe stap termineer nou egter sodra dit ’n iterasie gedoen het<br />

waartydens geen verandering plaasgevind het nie. Die algoritme lyk soos volg (<br />

Die algoritme het twee dele, nl. ’n inisiërings stap en ’n stap wat herhaal word<br />

totdat die algoritme termineer. Die algoritme lyk soos volg (gestel node b is die<br />

bron node):<br />

1. Inisiëring stap:<br />

Stel A(b) = 0, vir al die ander nodes [O(v), A(v)] = [·, ∞].<br />

2. Iteratiewe stap: Vir alle nodes v = b:<br />

• Bereken A(w)+l(v,w) vir alle nodes w wat direk met v verbind is.<br />

Gebruik die huidige waardes A(w) van elke node w.<br />

• Bereken<br />

[O(v), A(v)] = minw([w, A(w) + l(v, w)]).<br />

Die waarde O(v) is die ouer van elke node v in die kortste pad boom. Hierdie<br />

waardes kan dus gebruik word om die kortste pad boom vir node b op te stel.<br />

Voorbeeld<br />

Beskou weereens die netwerk in figuur 5.1. Neem weer node 4 as die bron node,<br />

dan het ons:<br />

Stap [O(v),A(v)]<br />

1 2 3 5 6 7 8<br />

Inisiëring [·, ∞] [·, ∞] [·, ∞] [·, ∞] [·, ∞] [·, ∞] [·, ∞]<br />

1 [·, ∞] [·, ∞] [4, 4] [·, ∞] [3, 9] [6, 13] [7, 16]<br />

2 [·, ∞] [3, 8] [4, 4] [6, 11] [3, 9] [6, 13] [7, 16]<br />

3 [2, 11] [3, 8] [4, 4] [6, 11] [3, 9] [6, 13] [7, 16]<br />

4 [2, 11] [3, 8] [4, 4] [6, 11] [3, 9] [6, 13] [7, 16]<br />

Uit die waardes van O(v) word dan weereens die kortste pad boom soos in<br />

figuur 5.2 verkry.<br />

Figure 5.2: Kortste pad boom vir node 4 van die netwerk in figuur 5.1

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!