Accueil technologie Contrôle de flux

Contrôle de flux



introduction

Le "flux" mentionedhere, bien entendu, referstothedataflow.Whendataistransmittedbetweentwoserialports, datalossoftenoccurs, ortheprocessingspeedsofthetwocomputersaredifferent, suchasthecommunicationbetweenadesktopcomputerandasingle-chipcomputer, andthereceivingenddatabufferisfull, socontinuetosendatthistimeTheincomingdatawillbelost.Weusemodemsfordatatransmissiononthenetwork, andthisproblemisparticularlyprominent.Flowcontrolcansolvethisproblem.Whenthereceivingendcannotprocessthedata, itsendsa "nolongerreceiving" signal andthesendingendstopssendinguntilitreceivesthe "cancontinuesending" signalbeforesendingdata.Therefore, flowcontrolcancontroltheprocessofdatatransmissionandpreventdataloss.TwocommonlyusedflowcontrolsinPCsarehardwareflowcontrol ( y compris rts/cts, dtr/dsr, etc.) et le contrôle de flux logicielxon/xoff (continuer/arrêter).

Comment ça fonctionne

Lorsque le tampon de données en fin de réception n'est pas en mesure de traiter les données, il envoie un signal « ne plus recevoir » et les extrémités d'envoi s'arrêtent jusqu'à ce que la fin d'envoi envoie les données après avoir reçu le signal « peut continuer à envoyer ».

Hardwareflowcontrol

Le contrôle de flux matériel doit être connecté au câble correspondant. Les méthodes courantes de contrôle de flux matériel sont :

WhenusingRTS / CTSflowcontrol, theRTSandCTSlinesatbothendsofthecommunicationmustbeconnectedcorrespondingly, andthedataterminalequipment (suchasacomputer) usesRTStostartthedataflowofthemodemorotherdatacommunicationequipment.Datacommunicationequipment (suchasamodem) usesCTStostartandpausethedatastreamfromthecomputer.Theprocessofthishardwarehandshakemethodis: setahigh-orderflag (canbe75% ofthebuffersize) andalow-orderflag (canbe25% ofthebuffersize) forthereceivingendbuffersizethroughtheprogram.Whentheamountofdatareachesthehighlevel, thereceivingendsetstheCTSlinelow (sendslogic0) .WhentheprogramatthetransmittingenddetectsthatCTSislow, itstopssendingdatauntilthedatavolumeinthebufferatthereceivingendislowerthanthelowlevel.SetCTShigh .RT est utilisé pour indiquer si l'appareil récepteur est prêt à recevoir des données.

Le mode de fonctionnement du contrôle de flux DTR/DSR est similaire à celui du contrôle de flux RTS/CTS, je ne le répéterai donc pas.

Contrôle de flux logiciel

Duetocablelimitations, hardwareflowcontrolisgenerallynotusedinordinarycontrolcommunications, butsoftwareflowcontrolisused.SoftwareflowcontrolisoftenimplementedthroughXON / XOFF.Theprocessofthissoftwarehandshakemethodis: whentheamountofdataintheinputbufferofthereceivingendexceedsthesethigh, XOFFcharactersaresenttothedatasendingend (decimal19orControl-S, thedeviceprogrammingmanualwillexplainindetail), ThesendingendimmediatelystopssendingdataafterreceivingtheXOFFcharacter; whenthedatavolumeintheinputbufferofthereceivingendislowerthanthesetlow, itwillsendtheXONcharacter (decimal17orControl-Q) tothedatasendingendtosendAfterreceivingtheXONcharacter, theterminalimmediatelystartstosenddata.Generally, youcanfindoutwhatcharactersaresentfromthesourceprogramofthedevice.

Comparaisondesdeuxméthodesdecontrôle

Lorsque des données binaires sont transmises via un contrôle de flux logiciel, des caractères d'indicateur peuvent également apparaître dans le flux de données et provoquer un mauvais fonctionnement. Il s'agit d'un contrôle de flux logiciel.

Cet article provient du réseau, ne représente pas la position de cette station. Veuillez indiquer l'origine de la réimpression
HAUT