Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Жартылай ашық деген термин TCP қосылымдарын білдіреді, олардың жағдайы екі байланыс хосттарының арасында синхрондылықтан тыс, мүмкін бір жақтың құлдырауынан. Қалыптасып жатқан байланысты эмбрионалды байланыс деп те атайды. Синхрондылық жетіспеушіліктің себебі қастандық болуы мүмкін.
The term half open refers to TCP connections whose state is out of synchronization between the two communicating hosts, possibly due to a crash of one side. A connection which is in the process of being established is also known as embryonic connection. The lack of synchronization could be due to malicious intent.
RFC 793
RFC 793 сәйкес, TCP қосылысы жартылай ашық деп аталады, егер TCP қосылысының бір шетіндегі хост құлаған болса немесе басқаша болса, сокет басқа шетке хабарламай алынып тасталған. Егер қалған ұшы бос болса, қосынды жартылай ашық күйде шексіз уақыт бойы бола алады.
According to RFC 793, a TCP connection is referred to as half open when the host at one end of that TCP connection has crashed, or has otherwise removed the socket without notifying the other end. If the remaining end is idle, the connection may remain in the half open state for unbounded periods of time.
Stateful файрволының уақыт шегі
Жарым ашық қосылымдарға әкелетін тағы бір жағдай - егер өртке қарсы қорғаныс станциясы ұзақ уақыт бос тұрған қосылымды уақыттан тыс ұстаса. Бұл жағдайда, бөрене өзінің ішкі күйін тазалайды, егер қосылымның екі жағы да пакет жіберсе, бөрене пакетін тастайды. Бұл көбінесе жартылай ашық қосылысқа әкеледі, өйткені қосылыстың екі жағы сәйкес келмейтін қосылым күйлеріне ұшырауы мүмкін.
Another circumstance that can lead to half open connections is if a stateful firewall times out a connection that is idle for too long. In this case, the firewall clears its internal state, and if either side of the connection sends a packet, the firewall will drop the packet. This will often result in a half open connection as the two sides of the connection can end up with inconsistent connection states.
Эмбрионалды байланыс
Жартылай ашық байланыс термині эмбрионалды байланысты, яғни құрылу процесінде болатын TCP байланысын сипаттау үшін де қолданылуы мүмкін. TCP-де қосылымды ашу үшін үш күйлі жүйе бар. Біріншіден, бастапқы нүкте (А) SYN пакетті мақсатты нүктеге (В) жібереді. A қазір эмбрионалды күйде (яғни SYN SENT) және жауап күтуде. B енді өзінің ядролық ақпаратын А-дан кіріс қосылымын көрсету үшін жаңартады және қайтадан арна ашу туралы сұрау жібереді (SYN/ACK пакеті). Бұл кезде B эмбрионалды күйде (айрықша, SYN RCVD). Есіңізде болсын, B-ді басқа машинаның көмегімен, B-нің бақылауынан тыс күйге келтірілген. Әдеттегі жағдайларда (қасақана істен шығу жағдайлары үшін қызмет көрсетуден бас тарту шабуылдарын қараңыз) А B-ден SYN/ACK алады, кестелерін жаңартады (қазір A-ға жіберу және қабылдау үшін жеткілікті ақпарат бар) және соңғы ACK-ті B-ге қайтарады. B соңғы ACK-ны алғаннан кейін, ол екі жақты байланыс үшін жеткілікті ақпаратқа ие болады және байланыс толық ашық болады. Екі нүкте де қазір қалыптасқан күйде.
The term half open connection can also be used to describe an embryonic connection, i. e. a TCP connection that is in the process of being established. TCP has a three state system for opening a connection. First, the originating endpoint (A) sends a SYN packet to the destination (B). A is now in an embryonic state (specifically, SYN SENT), and awaiting a response. B now updates its kernel information to indicate the incoming connection from A, and sends out a request to open a channel back (the SYN/ACK packet). At this point, B is also in an embryonic state (specifically, SYN RCVD). Note that B was put into this state by another machine, outside of B's control. Under normal circumstances (see denial of service attack for deliberate failure cases), A will receive the SYN/ACK from B, update its tables (which now have enough information for A to both send and receive), and send a final ACK back to B. Once B receives this final ACK, it also has sufficient information for two way communication, and the connection is fully open. Both endpoints are now in an established state.