Beruflich Dokumente
Kultur Dokumente
This quote from the start of Stallings DCC8e Ch2 illustrates a key issue which this
chapter explores, providingacontextforthedetailedmaterialinthefollowingpartsof
thetext.
Whencomputers,terminals,and/orotherdataprocessingdevicesexchange
data,theproceduresinvolvedcanbequitecomplex.eg.filetransfer.There
mustbeadatapathbetweenthetwocomputers.Butalsoneed:
Source to activate communications Path or inform network of destination
Source must check destination is prepared to receive
File transfer application on source must check destination file management
system will accept and store file for his user
May need file format translation
Insteadofimplementingthecomplexlogicforthisasasinglemodule,thetask
isbrokenupintosubtasks,implementedseparately.Inaprotocolarchitecture,
themodulesarearrangedinaverticalstack,eachlayerinthestackperformsa
relatedsubsetofthefunctions.Itreliesonthenextlowerlayertoperformmore
Communicationisachievedbyhavingthecorresponding,orpeer,layersin
twosystemscommunicate.Thepeerlayerscommunicatebymeansof
formattedblocksofdatathatobeyasetofrulesorconventionsknownasa
protocol.Thekeyfeaturesofaprotocolare:
Syntax:Concernstheformatofthedatablocks
Semantics:Includescontrolinformationforcoordinationanderrorhandling
Timing:Includesspeedmatchingandsequencing
TheTCP/IPprotocolarchitectureisaresultofprotocolresearchand
developmentconductedontheexperimentalpacketswitchednetwork,
ARPANET,fundedbytheDefenseAdvancedResearchProjectsAgency
(DARPA),andisgenerallyreferredtoastheTCP/IPprotocolsuite.This
protocolsuiteconsistsofalargecollectionofprotocolsthathavebeenissued
asInternetstandardsbytheInternetActivitiesBoard(IAB).
Ingeneralterms,communicationscanbesaidtoinvolvethreeagents:
applications(eg.filetransfer),computers(eg.PCs&servers),andnetworks.
Theseapplications,andothers,executeoncomputersthatcanoftensupport
multiplesimultaneousapplications.Computersareconnectedtonetworks,and
thedatatobeexchangedaretransferredbythenetworkfromonecomputerto
another.Thus,datatransferinvolvesfirstgettingthedatatothecomputerin
whichtheapplicationresidesandthengettingthedatatotheintended
applicationwithinthecomputer.Canthinkofpartitioningthesetasksinto3
layersasshown.
TCP/IP doesnt have an official layer model (& it predates the OSI Reference
Model well introduce later), but it does have a working layer model, as
shown.
Thephysicallayercoversthephysicalinterfacebetweenadatatransmission
device(e.g.,workstation,computer)andatransmissionmediumornetwork.
Thislayerisconcernedwithspecifyingthecharacteristicsofthetransmission
medium,thenatureofthesignals,thedatarate,andrelatedmatters.
Thenetworkaccesslayerisconcernedwiththeexchangeofdatabetweenan
endsystem(server,workstation,etc.)andthenetworktowhichitisattached.
Thesendingcomputermustprovidethenetworkwiththeaddressofthe
destinationcomputer,sothatthenetworkmayroutethedatatotheappropriate
destination.Thesendingcomputermaywishtoinvokecertainservices,suchas
priority,thatmightbeprovidedbythenetwork.Thespecificsoftwareusedat
thislayerdependsonthetypeofnetworktobeused;differentstandardshave
beendevelopedforcircuitswitching,packetswitching(e.g.,framerelay),
LANs(e.g.,Ethernet),andothers.Thusitmakessensetoseparatethose
functionshavingtodowithnetworkaccessintoaseparatelayer.
Theinternetlayerprovidesproceduresusedtoallowdatatotraversemultiple
interconnectednetworks,toprovidecommunicationsbetweendevicesare
attachedtodifferentnetworks.TheInternetProtocol(IP)isusedatthislayerto
providetheroutingfunctionacrossmultiplenetworks.Thisprotocolis
implementednotonlyintheendsystemsbutalsoinrouters.Arouterisa
processorthatconnectstwonetworksandwhoseprimaryfunctionistorelay
datafromonenetworktotheotheronitsroutefromthesourcetothe
destinationendsystem.
Thehosttohostlayer,ortransportlayer,collectsmechanismsinacommon
layersharedbyallapplicationstoprovidereliabledeliveryofdata.Regardless
ofthenatureoftheapplications,thereisusuallyarequirementthatdatabe
exchangedreliably,ensuringthatallofthedataarrivesatthedestination
applicationandthatthedataarrivesinthesameorderinwhichtheyweresent.
Thesemechanismsforprovidingreliabilityareessentiallyindependentofthe
natureoftheapplications.TheTransmissionControlProtocol(TCP)isthe
mostcommonlyusedprotocoltoprovidethisfunctionality.
Finally,theapplicationlayercontainsthelogicneededtosupportthevarious
userapplications.Foreachdifferenttypeofapplication,suchasfiletransfer,a
separatemoduleisneededthatispeculiartothatapplication.
Forsuccessfulcommunication,everyentityintheoverallsystemmusthavea
uniqueaddress.Actually,twolevelsofaddressingareneeded.Eachhostona
subnetworkmusthaveauniqueglobalinternetaddress;thisallowsthedatato
bedeliveredtotheproperhost.Eachprocesswithahostmusthaveanaddress
thatisuniquewithinthehost;thisallowsthehosttohostprotocol(TCP)to
deliverdatatotheproperprocess.Theselatteraddressesareknownasports.
Consider asimpleoperationwhereaprocessonhostA,wishestosenda
messagetoanotherprocessonhostB.TheprocessatAhandsthemessage
downtoTCPwithinstructionstosendittohostB.TCPhandsthemessage
downtoIPwithinstructionstosendittohostB.NotethatIPneednotbetold
theidentityofthedestinationport.Next,IPhandsthemessagedowntothe
networkaccesslayer(e.g.,Ethernetlogic)withinstructionstosendittorouter
J(thefirsthoponthewaytoB).
Tocontrolthisoperation,controlinformationaswellasuser
datamustbetransmitted,assuggestedinStallingsDCC8eFigure2.2.The
sendingprocessgeneratesablockofdataandpassesthistoTCP.TCPmay
breakthisblockintosmallerpiecestomakeitmoremanageable.Toeachof
thesepieces,TCPappendscontrolinformationknownastheTCPheader,
formingaTCPsegment.
FormostapplicationsrunningaspartoftheTCP/IPprotocolarchitecture,the
transportlayerprotocolisTCP.TCPprovidesareliableconnectionforthe
transferofdatabetweenapplications.Aconnectionissimplyatemporary
logicalassociationbetweentwoentitiesindifferentsystems.Alogical
connectionreferstoagivenpairofportvalues.Forthedurationofthe
connectioneachentitykeepstrackofTCPsegmentscomingandgoingtothe
otherentity,inordertoregulatetheflowofsegmentsandtorecoverfromlost
ordamagedsegments.
formatforTCP,whichisaminimumof20octets,or160bits.TheSourcePort
andDestinationPortfieldsidentifytheapplicationsatthesourceand
destinationsystemsthatareusingthisconnection.TheSequenceNumber,
AcknowledgmentNumber,andWindowfieldsprovideflowcontrolanderror
control.Thechecksumisa16bitframechecksequenceusedtodetecterrorsin
theTCPsegment.Chapter20providesmoredetails.
InadditiontoTCP,thereisoneothertransportlevelprotocolthatisin
commonuseaspartoftheTCP/IPprotocolsuite:theUserDatagramProtocol
(UDP).UDPdoesnotguaranteedelivery,preservationofsequence,or
protectionagainstduplication.UDPenablesaproceduretosendmessagesto
otherprocedureswithaminimumofprotocolmechanism.Sometransaction
orientedapplicationsmakeuseofUDP;egSNMP(SimpleNetwork
ManagementProtocol).Becauseitisconnectionless,UDPhasverylittletodo.
Essentially,itaddsaportaddressingcapabilitytoIP.
Becauseitisconnectionless,UDPhasverylittletodo.justaddingaport
addressingcapabilitytoIP.ThisisbestseenbyexaminingtheUDPheader,
showninStallingsDCC8eFigure2.3b.TheUDPheaderalsoincludesa
checksumtoverifythatnoerroroccursinthedata;theuseofthechecksumis
optional.
Fordecades,thekeystoneoftheTCP/IPprotocolarchitecturehasbeenIP.
StallingsDCC8eFigure2.4ashowstheIPheaderformat,whichisaminimum
of20octets,or160bits.Theheader,togetherwiththesegmentfromthe
transportlayer,formsanIPlevelPDUreferredtoasanIPdatagramoranIP
packet.Theheaderincludes32bitsourceanddestinationaddresses.The
HeaderChecksumfieldisusedtodetecterrorsintheheadertoavoid
misdelivery.TheProtocolfieldindicateswhichhigherlayerprotocolisusing
IP.TheID,Flags,andFragmentOffsetfieldsareusedinthefragmentationand
reassemblyprocess.Chapter18providesmoredetail.
In1995,theInternetEngineeringTaskForce(IETF),whichdevelopsprotocol
standardsfortheInternet,issuedaspecificationforanextgenerationIP,
knownthenasIPng.Thisspecificationwasturnedintoastandardin1996
knownasIPv6.IPv6providesanumberoffunctionalenhancementsoverthe
existingIP,designedtoaccommodatethehigherspeedsoftoday'snetworks
andthemixofdatastreams,includinggraphicandvideo,thatarebecoming
moreprevalent.Butthedrivingforcebehindthedevelopmentofthenew
protocolwastheneedformoreaddresses.ThecurrentIPusesa32bitaddress
tospecifyasourceordestination.WiththeexplosivegrowthoftheInternet
andofprivatenetworksattachedtotheInternet,thisaddresslengthbecame
insufficienttoaccommodateallsystemsneedingaddresses.AsStallings
DCC8eFigure2.4bshows,IPv6includes128bitsourceanddestination
addressfields.Ultimately,allinstallationsusingTCP/IPareexpectedto
AnumberofapplicationshavebeenstandardizedtooperateontopofTCP.We
mentionthreeofthemostcommonhere.
TheSimpleMailTransferProtocol(SMTP)providesabasic
electronicmailtransportfacilityfortransferringmessagesamongseparate
hosts.TheSMTPprotocoldoesnotspecifythewayinwhichmessagesareto
becreated;somelocaleditingornativeelectronicmailfacilityisrequired.The
targetSMTPmodulewillstoretheincomingmessageinauser'smailbox.
TheFileTransferProtocol(FTP)isusedtosendfilesfrom
onesystemtoanotherunderusercommand.Bothtextandbinaryfilesare
accommodated.FTPsetsupaTCPconnectiontothetargetsystemforthe
exchangeofcontrolmessages.Onceafiletransferisapproved,asecondTCP
dataconnectionissetupforthedatatransfer,withouttheoverheadofany
headersorcontrolinformationattheapplicationlevel.Whenthetransferis
EachlayerintheTCP/IPprotocolsuiteinteractswithitsimmediateadjacent
layers.Thisuseofeachindividuallayerisnotrequiredbythearchitecture.As
StallingsDCC8eFigure2.5suggests,itispossibletodevelopapplicationsthat
directlyinvoketheservicesofanyoneofthelayers.Mostapplicationsrequire
areliableendtoendprotocolandthusmakeuseofTCP.Somespecial
purposeapplicationsdonotneedtheservicesofTCP.Someofthese
applications,suchastheSimpleNetworkManagementProtocol(SNMP),use
analternativeendtoendprotocolknownastheUserDatagramProtocol
(UDP);othersmaymakeuseofIPdirectly.Applicationsthatdonotinvolve
internetworkingandthatdonotneedTCPhavebeendevelopedtoinvokethe
networkaccesslayerdirectly.
TheOpenSystemsInterconnection(OSI)referencemodelwasdevelopedby
theInternationalOrganizationforStandardization(ISOwhichis not an
acronym but a word, derived from the Greek isos, meaning equal)asamodel
foracomputerprotocolarchitectureandasaframeworkfordeveloping
protocolstandards.TheOSImodelconsistsofsevenlayers.Thedesignersof
OSIassumedthatthismodelandtheprotocolsdevelopedwithinthismodel
wouldcometodominatecomputercommunications,eventuallyreplacing
proprietaryprotocolimplementationsandrivalmultivendormodelssuchas
TCP/IP.Thishasnothappened.Althoughmanyusefulprotocolshavebeen
developedinthecontextofOSI,theoverallsevenlayermodelhasnot
flourished.Instead,theTCP/IParchitecturehascometodominate.
ThereareanumberofreasonswhytheTCP/IParchitecturehascometo
dominate.PerhapsthemostimportantisthatthekeyTCP/IPprotocolswere
matureandwelltestedatatimewhensimilarOSIprotocolswereinthe
developmentstage.Whenbusinessesbegantorecognizetheneedfor
interoperabilityacrossnetworks,onlyTCP/IPwasavailableandreadytogo.
AnotherreasonisthattheOSImodelisunnecessarilycomplex,withseven
layerstoaccomplishwhatTCP/IPdoeswithfewerlayers.Stallings DCC8e
Figure2.7illustratesthelayersoftheTCP/IPandOSIarchitectures,showing
roughlythecorrespondenceinfunctionalitybetweenthetwo.
TheprincipalmotivationforthedevelopmentoftheOSImodelwastoprovide
aframeworkforstandardization.Withinthemodel,oneormoreprotocol
standardscanbedevelopedateachlayer.Themodeldefinesingeneralterms
thefunctionstobeperformedatthatlayerandfacilitatesthestandardsmaking
processintwowaysbyallowingstandardstobedevelopedindependentlyand
simultaneouslyforeachlayer,andbecausechangesinstandardsinonelayer
neednotaffectalreadyexistingsoftwareinanotherlayer.
Stallings DCC8e Figure2.8illustratestheuseoftheOSImodel
assuchaframework.Theoverallcommunicationsfunctionisdecomposedinto
sevendistinctlayers,makingtheinterfacesbetweenmodulesassimpleas
possible.Inaddition,thedesignprincipleofinformationhidingisused:Lower
layersareconcernedwithgreaterlevelsofdetail;upperlayersareindependent
ofthesedetails.Eachlayerprovidesservicestothenexthigherlayerand
TheservicesbetweenadjacentlayersintheOSIarchitectureareexpressedin
termsofprimitivesandparameters.Aprimitivespecifiesthefunctiontobe
performed,andtheparametersareusedtopassdataandcontrol
information.Theactualformofaprimitiveisimplementationdependent.
Anexampleisaprocedurecall.ThelayoutofStallings DCC8eFigure
2.10asuggeststhetimeorderingoftheseevents.Forexample,considerthe
transferofdatafroman(N)entitytoapeer(N)entityinanothersystem.
Thefollowingstepsoccur:
1. Thesource(N)entityinvokesits(N1)entitywitharequestprimitive
includingneededparameters,suchasthedatatobetransmittedandthe
destinationaddress.
2. Thesource(N1)entitypreparesan(N1)PDUtobesenttoitspeer(N
1)entity.
TheInternet,untilrecently,hasbeendominatedbyinformationretrieval
applications,email,andfiletransfer,plusWebinterfacesthatemphasizedtext
andimages.Increasingly,theInternetisbeingusedformultimediaapplications
thatinvolvemassiveamountsofdataforvisualizationandsupportofrealtime
interactivity.Streamingaudioandvideoareperhapsthebestknownofsuch
applications.
Althoughtraditionallythetermmultimediahasconnotedthe
simultaneoususeofmultiplemediatypes(e.g.,videoannotationofatext
document),thetermhasalsocometorefertoapplicationsthatrequirereal
timeprocessingorcommunicationofvideooraudioalone.Thus,voiceoverIP
(VoIP),streamingaudio,andstreamingvideoareconsideredmultimedia
applicationseventhougheachinvolvesasinglemediatype.
Trafficonanetworkorinternetcanbedividedintotwobroadcategories:
elasticandinelastic.
Elastictrafficcan
adjust,overwideranges,tochangesindelayandthroughputacrossaninternet
andstillmeettheneedsofitsapplications.Thisisthetraditionaltypeoftraffic
supportedonTCP/IPbasedinternetsandisthetypeoftrafficforwhich
internetsweredesigned.ElasticapplicationsincludecommonInternetbased
applications,suchasfiletransfer,electronicmail,remotelogon,network
management,andWebaccess.Buttherearedifferencesamongthe
requirementsoftheseapplications.
Inelastictrafficdoesnoteasilyadapt,ifatall,tochangesin
delayandthroughputacrossaninternet.Theprimeexampleisrealtimetraffic,
suchasvoiceandvideo.Therequirementsforinelastictrafficmayincludethe
following:minimumthroughputmayberequired,maybedelaysensitive,may