Раздробяване

Reasons

ThelinklayerhasthefeatureofmaximumtransmissionunitMTU,whichlimitsthemaximumlengthofdataframes,anddifferentnetworktypeshaveanupperlimit.TheMTUofEthernetis1500,youcanusethenetstat-icommandtocheckthisvalue.IfthereisadatapackettobetransmittedattheIPlayerandthelengthofthedatapacketexceedstheMTU,theIPlayerwillfragmentthedatapacketsothatthelengthofeachfragmentislessthanorequaltotheMTU.WeassumethataUDPdatapacketistobetransmitted,theMTUofEthernetis1500bytes,thegeneralIPheaderis20bytes,theUDPheaderis8bytes,andthepayloadpartofthedataisreservedfor1500-20-8=1472bytes.Ifthedatapartislargerthan1472bytes,fragmentationwilloccur.

Подробно въведение

Шардингът е тип разделяне на база данни, което разделя големи бази данни на по-малки, по-бързи и по-лесни за управление части. Тези части се наричат ​​фрагменти от данни. Думата фрагмент означава малка част от цялото.

JasonTeesaid:"Inshort,ashardingdatabaseneedstodividethedatabaseintomultiplesmalldatabasesthathavenocommonground,andtheycanbespreadacrossmultipleservers."

p>

Technicallyspeaking,shardingissynonymouswithhorizontalpartitioning.Inpractice,thistermisoftenusedtorefertoalldatabasepartitionsthatmakealargedatabaseeasiertomanage.

Thecoreconceptofshardingisbasedonanidea:thesizeofthedatabaseandthenumberoftransactionsperunittimeonthedatabaseincreaselinearly,andtheresponsetimeofqueryingthedatabaseincreasesexponentially.

Inaddition,thecostofcreatingandmaintainingalargedatabaseinoneplacewillincreaseexponentially,becausethedatabasewillrequirehigh-endcomputers.Conversely,datafragmentscanbedistributedtoalargenumberofmuchcheapercommercialservers.Intermsofhardwareandsoftwarerequirements,datafragmentationisrelativelyunrestricted.

Insomecases,databaseshardingcanbedonesimply.Splittingtheuserdatabasebygeographiclocationisacommonexample.Usersontheeastcoastareassignedtooneserver,andusersonthewestcoastareassignedtoanotherserver.Assumingthatnouserhasmultiplegeographiclocations,thistypeofpartitioniseasytomaintainandcreaterules.

Butdatashardingcanbeamorecomplicatedprocessinsomecases.Forexample,ifadatabaseholdsverylittlestructureddata,shardingmaybeverycomplicated,andtheresultingfragmentationmaybedifficulttomaintain.

Фрагментация

Fragmentationprocess

ForeachIPdatagramsentbythesender,itsidentificationfieldcontainsavalue.Thisvalueiscopiedtoeachfragmentwhenthedatagramisfragmented.Theflagfieldusesonebittoindicate"moreslices".Exceptforthelastslice,everyotherslicethatcomposesthedatagrammustsetthisbitto1.Thefragmentoffsetfieldreferstothepositionofthefragmentoffsetfromthebeginningoftheoriginaldatagram.Inaddition,whenthedatagramisfragmented,thetotallengthofeachfragmentshouldbechangedtothelengthofthefragment.

И накрая, има бит в полето за флаг, наречено "нефрагментиран" бит. Ако този бит е на 1, IP няма да фрагментира дейтаграмата. Вместо това дейтаграмата се отхвърля и ICMP съобщение за грешка се изпраща до инициатора.

AftertheIPdatagramisfragmented,eachfragmentbecomesapacketwithitsownIPheader,andisindependentofotherpacketswhenselectingaroute.Inthisway,thesepiecesofdatagrammaybeoutofsequencewhentheyarriveatthedestination,butthereisenoughinformationintheIPheaderforthereceivingendtoassemblethesepiecesofdatagramcorrectly.

Техническа информация

IP заглавката съдържа информацията, необходима за фрагментиране и реорганизация:

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ -+-+-+-+-+-+-+-+-+-+

|Идентификация|R|DF|MF|FragmentOffset|

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ -+-+-+-+-+-+-+-+-+-+

||||

Identification:TheidentificationfieldoftheIPdatapacketsentbythesenderisasinglevalue,whichiscopiedtoeachsliceduringfragmentation.

R: Keepunused.

DF: Не фрагментирайте, "Не фрагментирайте" бит. Ако това е на 1, IP плейърът няма да фрагментира дейтаграмата.

MF:MoreFragment, "още фрагменти", с изключение на последния фрагмент, този бит трябва да бъде зададен на 1 за всеки друг фрагмент, който съставя дейтаграмата.

FragmentOffset:Thepositionofthefragmentoffsetfromthebeginningoftheoriginaldatapacket.Thenumberofbytesoftheoffsetisthisvaluemultipliedby8.

Inaddition,whenthedatagramisfragmented,thetotallengthofeachfragmentshouldbechangedtothelengthofthefragment.

Related Articles
TOP