Кіріспе

Медиаға қол жеткізуді басқару әдісі, ең алдымен ерте Ethernet-те қолданылады. Carrier sense multiple access with collision detection (CSMA/CD) – бұл ортаға қол жеткізуді басқару (MAC) әдісі, негізінен ерте Ethernet технологиясында жергілікті желілерде қолданылады. Ол басқа станциялар хабар таратпағанша хабарды жіберуді кейінге шегеру үшін тасымалдағышты сезімталдандыруды пайдаланады. Бұл соқтығысуды анықтаумен біріктіріледі, онда хабарды жіберіп жатқан станция кадрды жіберіп жатқанда басқа станциялардан келетін хабарларды сезіну арқылы соқтығысуды анықтайды. Егер мұндай соқтығысу жағдайы анықталса, станция сол кадрды жіберуді тоқтатады, кедергі (jam) сигналын жібереді, содан кейін кадрды қайта жіберуге тырысудан бұрын кездейсоқ уақыт аралығын күтеді. CSMA/CD – таза тасымалдағыш сезімімен көптеген қатынау (CSMA) әдісінің өзгертілген түрі. CSMA/CD соқтығысу анықталғанда дереу хабар таратуды тоқтату арқылы CSMA өнімділігін жақсартуға көмектеседі, соның салдарынан қайтадан талқылауға дейін қажетті уақытты қысқартады. 1990 жылдары Ethernet коммутаторларының кеңінен таралғандығымен, IEEE 802.3 2011 жылы Ethernet ретрансляторларын қолданудан шығарды, бұл CSMA/CD және жартылай дуплекс режимін азайтып, олардың маңыздылығын төмендетті.

Процедура

Жіберуді бастау үшін келесі процедура қолданылады. Процедура кадр сәтті жіберілгенде немесе жіберу кезінде соқтығысу анықталғанда аяқталады. Жіберуге кадр дайын ба? Егер дайын болмаса, кадр күтіңіз. Орта бос па? Егер бос болмаса, бос болғанша күтіңіз. Жіберуді бастап, жіберу кезінде соқтығысуды бақылаңыз. Соқтығысу болды ма? Егер болса, соқтығысуды анықтау процедурасына өтіңіз. Қайта жіберу санағыштарын нөлдеңіз және кадр жіберуді аяқтаңыз. Анықталған соқтығысуды шешу үшін келесі процедура қолданылады. Процедура қайта жіберу басталғанда немесе көптеген соқтығысулар салдарынан қайта жіберу тоқтатылғанда аяқталады. Барлық қабылдағыштардың соқтығысуды анықтауын қамтамасыз ету үшін, ең аз пакет уақыты жеткенше (кадр басқасы / деректер / CRC орнына кедергі сигналдарымен) жіберуді жалғастырыңыз. Қайта жіберу санағышын арттырыңыз. Жіберудің максималды санына жетті ме? Егер жетсе, жіберуді тоқтатыңыз. Соқтығысулар санына сәйкес кездейсоқ күту уақытын есептеп, күтіңіз. Негізгі процедураға 1-қадамнан қайта оралыңыз. Соқтығысуды анықтау әдістері ортаға байланысты. 10BASE5 немесе 10BASE2 сияқты ортақ электрлік шинада, соқтығысуларды жіберілген деректерді алынған деректермен салыстыру арқылы немесе шинадағы қалыптыдан жоғары сигнал амплитудасын анықтау арқылы табуға болады. Қалған барлық орталарда, жіберу кезінде қабылдау арнасында тасымалдаушының болуы соқтығысу оқиғасын тудырады. Қайталаушылар немесе хабтар соқтығысуды өздігінен анықтап, кедергі сигналдарын таратады. Соқтығысуды қалпына келтіру процедурасын кешкі асқа теңеуге болады, онда барлық қонақтар ортақ орта (ауа) арқылы бір-бірімен сөйлеседі. Сөйлеуге кіріспес бұрын, әрбір қонақ ағымдағы спикердің сөзін аяқтауын күтеді. Егер екі қонақ бір уақытта сөйлесе бастаса, екеуі де тоқтап, қысқа, кездейсоқ уақыт аралығында күтеді (Ethernet-те бұл уақыт микросекундтармен өлшенеді). Әрқайсысы кездейсоқ уақыт аралығын таңдаса, екі қонақ та бір уақытта сөйлесуге тырыспайды, осылайша тағы да соқтығысудан сақталады.

Жаңылмалы сигнал

Тосқауыл сигналы немесе кедергі тудыру сигналы – дерек станциясы басқа трансляциялау станцияларына соқтығысу туралы хабар беру және олар трансляциялауын тоқтатуы керек екенін білдіру үшін жіберетін 32 биттік екілік үлгісі бар сигнал. Максималды тосқауыл уақыты былай есептеледі: Ethernet желісінің рұқсат етілген максималды диаметрі 232 битпен шектеледі. Бұл 464 биттік кешігуді құрайды. Ethernet-тегі слот уақыты 512 бит болғандықтан, слот уақыты мен кешігу уақыты арасындағы айырмашылық 48 бит (6 байт) болып табылады, бұл максималды тосқауыл уақыты. Осының салдарынан: соқтығысуды байқаған станция 16 «10» биттік комбинациядан тұратын 4-6 байттық үлгі жібереді. Мұның мақсаты – қазіргі уақытта кадр қабылдап жатқан кез келген түйіннің дұрыс 32 биттік MAC CRC орнына тосқауыл сигналын қабылдауына кепілдік беру; бұл басқа қабылдағыштардың CRC қатесіне байланысты кадрды жоюына себеп болады.

Соңғы соққы

Кейінгі соқтығысу – бұл протокол стандартында белгіленгеннен кейін пакет ішінде пайда болатын соқтығысу түрі. 10 мегабит/секундық ортақ орталы Ethernet желісінде, егер деректерді жіберу станциясы алғашқы 512 битті жібергеннен кейін соқтығысу қатесі туындаса, онда кеш соқтығысу болды делінеді. Маңыздысы, кеш соқтығысулар NIC (желілік карта) арқылы қайта жіберілмейді, ал алғашқы 64 байтқа дейін болатын соқтығысулардың керісінше, деректердің жоғалғанын анықтау протокол стегінің жоғарғы деңгейлеріне жүктеледі. Дұрыс орнатылған CSMA/CD желілік байланысында кеш соқтығысулар болмауы керек, сондықтан олардың себептері әдетте толық және жартылай дуплекс арасындағы үйлесімсіздік, Ethernet кабельдерінің рұқсат етілген ұзындығын асыру, немесе нашар жабдықтар – мысалы, бұрыс кабельдеу, желідегі хабтардың талапқа сай келмеуі, немесе нашар желілік карта болуы мүмкін.

Жергілікті соққы

Жергілікті соқтығысу – сымда емес, желілік картада (NIC) болатын соқтығысу. Желілік карта ақпарат жіберуге тырыспаса, жергілікті соқтығысуды анықтай алмайды. UTP кабелінде жергілікті соқтығысу жергілікті сегментте ғана анықталады, яғни станция RX жұбы арқылы сигнал алғанда бір мезгілде TX жұбы арқылы сигнал жіберген кезде. Екі сигнал әртүрлі жұптарда болғандықтан, сигналдың ерекше өзгерісі болмайды. UTP кабелінде соқтығысуды станция жартылай дуплекс режимінде жұмыс істеген кезде ғана таниды. Жартылай және толық дуплекс режимдерінің арасындағы жалғыз функционалдық айырмашылық – тарату және қабылдау жұптарын бір уақытта пайдалануға рұқсат ету немесе бермеу болып табылады.

Қашықтан соқтығысу

CSMA/CD компьютерлік желілерінде жартылай дуплекс ортасы (10BASE5 немесе 10BASE2) арқылы алыстан болатын соқтығысу – бұл ең аз ұзындығынан қысқа кадр жіберілген кезде туындайтын соқтығысу. Бұл кадр қабылдаушы тарапта соқтығысуға себеп болуы мүмкін, бірақ жіберуші оны анықтай алмайды, сондықтан кадр физикалық деңгейде қайта жіберілмейді. Ортадағы кедергі салдарынан деректері бұзылып, кадр тексеру тізбегі сәтсіз аяқталады, мүмкін болған жағдайда жоғары деңгейде қалпына келтіру қажет болады.

Каналды түсіру эффектісі

Каналды басып алу эффектісі – ортақ ортаны бір пайдаланушының едәуір уақыт бойы "басып алуы" құбылысы. Бұл кезеңде (әдетте 16 кадр) басқа пайдаланушыларға ортаны пайдалануға рұқсат берілмейді. Бұл эффект алғаш рет CSMA/CD протоколын қолданатын Ethernet желілерінде байқалды. Осы эффектінің салдарынан, ең көп дерек жіберетін қосылыс көп кіреберісті сымсыз арнада басымдық алады. Бұл Ethernet байланыстарында түйіндердің байланыстан "кері шегінуі" және оған қайта қол жеткізуге тырысуынан туындайды. Ethernet протоколында егер байланыс қақтығысы болса (ортаны екі пайдаланушы бір уақытта жіберуге тырысқанда), әр пайдаланушы байланысқа қайта қол жеткізу үшін кездейсоқ уақыт күтеді. Алайда, пайдаланушы байланысқа кіруге тырысқан реттерінің санына пропорционалды кездейсоқ уақыт күтеді ("кері шегіледі"). Каналды басып алу эффектісі бір пайдаланушы байланысты "жеңіп" алуды жалғастырғанда пайда болады. Мысалы, A және B пайдаланушылары бір уақытта бос байланысқа қол жеткізуге тырысады. Олар қақтығысты байқайтындықтан, A пайдаланушы 0 мен 1 уақыт бірлігі аралығында кездейсоқ уақыт күтеді, сондай-ақ B пайдаланушысы да күтеді. Егер A пайдаланушы төменгі кері шегіну уақытын таңдаса. Содан кейін A пайдаланушы байланысты пайдалана бастайды, ал B оған өзінің кадрын жіберуді аяқтауға мүмкіндік береді. Егер A пайдаланушыда әлі де жіберуге дерек болса, онда A және B пайдаланушылары тағы бір дерек қақтығысын тудырады. A қайтадан 0 мен 1 аралығындағы кездейсоқ уақытты таңдайды, бірақ B пайдаланушы 0 мен 3 аралығындағы уақытты таңдайды, өйткені бұл B үшін қатарынан екінші қақтығыс. A тағы да жеңіске жетеді деп болжауға болады. Егер осылай жалғаса берсе, A барлық қақтығыс шайқастарында жеңіске жетеді және 16 қақтығыстан кейін (пайдаланушы ұзақ уақытқа кері шегінгенге дейін жасаған әрекеттер саны) A пайдаланушы арнаны "басып алады". Бір түйіннің бүкіл ортаны басып алу қабілеті түйіндердің саны артқан сайын төмендейді. Себебі түйіндердің саны артқан сайын, "басқа" түйіндердің бірі басып алатын түйінге қарағанда қысқарақ кері шегіну уақытына ие болу ықтималдығы артады. Каналды басып алу эффектісі бір станцияның басқалары үнемі кері шегінген кезде хабар таратуына мүмкіндік береді, демек, қысқа мерзімді әділетсіздікке әкеледі. Бірақ, жағдай ұзақ мерзімді әділетті, өйткені әр станция бір станция хабар таратуын аяқтағаннан кейін ортаны "басып алуға" мүмкіндік алады. Бір түйін арнаны басып алғанда арнаның тиімділігі артады. Басып алу эффектісінің теріс әсері – станциялардың кері шегінуіне байланысты пайда болатын бос уақыт. Бір станция ортада хабар таратуын аяқтағаннан кейін, барлық басқа станциялар үнемі кері шегінгендіктен, көптеген бос уақыттар пайда болады. Кейбір жағдайларда кері шегіну соншалыққа созылуы мүмкін, кейбір станциялар пакеттерді тастайды, өйткені максималды әрекеттер санына жетіледі.

Қолданбалар

CSMA/CD технологиясы қазір қолданылмайтын ортақ ортаға ие Ethernet нұсқаларында (10BASE5, 10BASE2) және қайталайтын хабтар қолданылған бұрылған жұп Ethernet-тің бастапқы нұсқаларында пайдаланылды. Қазіргі заманғы Ethernet желілері, коммутаторлармен және толық дуплекс байланыстарымен құрылғандықтан, CSMA/CD қолдану қажеттілігі тумайды, себебі әрбір Ethernet сегменті немесе соқтығысу домені енді оқшауланған. CSMA/CD кері үйлесімділік және жартылай дуплекс байланыстары үшін әлі де қолдау көрсетіледі. Барлық Ethernet нұсқаларын анықтайтын IEEE 802.3 стандарты, тарихи себептерге байланысты, 802.3 2008 жылға дейін "Тасымалдағышты сезіну, көптеген кіру және соқтығысуды анықтау (CSMA/CD) кіру әдісі және физикалық қабат сипаттамалары" деген атауды сақтап келді, ал енді "IEEE Ethernet стандарты" деген жаңа атау қолданылады.