Кіріспе
IBM Systems Network Architecture (SNA) – 1974 жылы IBM құраған меншік желілік архитектурасы. Бұл компьютерлер мен олардың ресурстарын бір-бірімен байланыстыруға арналған толық протокол жиынтығы. SNA форматтар мен протоколдарды сипаттайды, бірақ өзі бағдарламалық қамтамасыз ету емес. SNA-ны іске асыру әртүрлі коммуникациялық пакеттер арқылы жүзеге асырылады, ең бастысы – Виртуалды телекоммуникациялық қолжетімділік әдісі (VTAM), SNA коммуникациясы үшін мейнфрейм бағдарламалық қамтамасыз етуі.
Systems Network Architecture (SNA) is IBM's proprietary networking architecture, created in 1974. It is a complete protocol stack for interconnecting computers and their resources. SNA describes formats and protocols but, in itself, is not a piece of software. The implementation of SNA takes the form of various communications packages, most notably Virtual Telecommunications Access Method (VTAM), the mainframe software package for SNA communications.
ҰБЖ-ның мақсаттары
IBM 1970-ші жылдардың ортасында өзін негізінен аппараттық өнімдерді жеткізуші ретінде қарастырды, сондықтан дәл сол кезеңдегі барлық жаңалықтар аппараттық өнімдердің сатылымын арттыруға бағытталған еді. SNA-ның мақсаты – көптеген терминалдарды пайдалану шығындарын төмендету, соның арқасында клиенттерді интерактивті терминалға негізделген жүйелерді жасауға немесе кеңейтуге итермелеу. Интерактивті терминалға негізделген жүйелерді кеңейту терминалдардың және, одан да маңыздысы, негізгі компьютерлер мен сыртқы құрылғылардың сатылымын арттырады, себебі жүйелер атқаратын жұмыстың көлемі артады, ал интерактивті өңдеу бір транзакцияға шаққанда пакеттік өңдеуге қарағанда көбірек есептеу қуатын қажет етеді. Сондықтан SNA-ның мақсаты – компьютерлік емес, негізгі шығындарды және ескі байланыс протоколдарын пайдалану арқылы үлкен желілерді пайдаланудағы басқа қиындықтарды азайту болды. Қиындықтар мыналарды қамтиды: Көбінесе байланыс желісі әртүрлі типтегі терминалдармен бөлісе алмайды, өйткені олар қолданыстағы байланыс протоколдарының әртүрлі «диалектілерін» қолданады. 1970-ші жылдардың басына дейін компьютерлік компоненттер өте қымбат және көлемді болды, сондықтан терминалдарға көп мақсатты байланыс интерфейсі карталарын қосу мүмкін болған жоқ. Терминалдардың әр түрі бір желідегі басқа терминалдармен үйлесімсіз, тек бір типті терминалдың жұмысын қолдайтын қатты сымдық байланыс картасына ие болды. Бастапқы байланыс карталары қолданатын протоколдар тиімді емес еді. Әрбір байланыс желісі деректерді беру үшін қазіргі желілерге қарағанда көбірек уақыт жұмсады. Сол кездегі телекоммуникациялық желілердің сапасы нашар болды. Мысалы, қоңырау шалу желісін секундына 19 200 бит жылдамдықпен іске қосу мүмкін емес еді, себебі қателік деңгейі өте жоғары, бүгінгі қоңырау шалу желілерінде секундына 56 000 бит жылдамдықпен салыстырғанда; ал 1970-ші жылдардың басында жалға алынған көптеген желілер секундына 2400 бит жылдамдықпен жұмыс істеді (бұл төмен жылдамдықтар салыстырмалы түрде төмен технологиялық ортада Шеннон заңының салдары). Нәтижесінде, көптеген терминалдарды басқару үшін қазіргі уақытта қажеттіге қарағанда әлдеқайда көп байланыс желілері қажет болды, әсіресе егер терминалдардың әртүрлі түрлерін қолдау қажет болса немесе пайдаланушылар бір орналасқан жерден әртүрлі типтегі қолданбаларды пайдалануды қаласа (мысалы, CICS немесе TSO астында). Тек қаржылық тұрғыдан SNA-ның мақсаттары – клиенттердің терминалға негізделген жүйелерге жұмсаған шығындарын арттыру және сонымен бірге IBM-нің осы шығындардағы үлесін, негізінен телекоммуникациялық компаниялардың есебінен арттыру болды. SNA сонымен қатар IBM-нің System/370 негізгі компьютерлері System/360-тан мұра еткен архитектураның шектеулерін жеңуге бағытталған. Әрбір процессор ең көп дегенде 16 кіріс-шығыс (I/O) арнасына қосыла алады және әрбір арна 256 сыртқы құрылғыны басқара алады, яғни бір процессорда ең көп дегенде 4096 сыртқы құрылғы болуы мүмкін. SNA жобаланған кезде, әрбір байланыс желісі сыртқы құрылғы ретінде есептелді. Осылайша, қуатты негізгі компьютерлер басқаша байланыс жасай алатын терминалдар саны шектеулі болды.
Often a communications line could not be shared by terminals of different types, as they used different "dialects" of the existing communications protocols. Up to the early 1970s, computer components were so expensive and bulky that it was not feasible to include all purpose communications interface cards in terminals. Every type of terminal had a hard wired communications card which supported only the operation of one type of terminal without compatibility with other types of terminals on the same line. The protocols which the primitive communications cards could handle were not efficient. Each communications line used more time transmitting data than modern lines do. Telecommunications lines at the time were of much lower quality. For example, it was almost impossible to run a dial up line at more than 19,200 bits per second because of the overwhelming error rate, as compared with 56,000 bits per second today on dial up lines; and in the early 1970s few leased lines were run at more than 2400 bits per second (these low speeds are a consequence of Shannon's Law in a relatively low technology environment). As a result, running a large number of terminals required a lot more communications lines than the number required today, especially if different types of terminals needed to be supported, or the users wanted to use different types of applications (. e. g. under CICS or TSO) from the same location. In purely financial terms SNA's objectives were to increase customers' spending on terminal based systems and at the same time to increase IBM's share of that spending, mainly at the expense of the telecommunications companies. SNA also aimed to overcome a limitation of the architecture which IBM's System/370 mainframes inherited from System/360. Each CPU could connect to at most 16 I/O channels and each channel could handle up to 256 peripherals i. e. there was a maximum of 4096 peripherals per CPU. At the time when SNA was designed, each communications line counted as a peripheral. Thus the number of terminals with which powerful mainframes could otherwise communicate was limited.
Артықшылықтары мен кемшіліктері
SNA қолданбалық бағдарламадан байланыс басқаруын алып тастап, оны NCP-ге көшirdi. Бұл мынадай артықшылықтар мен кемшіліктерге әкелді:
Артықшылықтар
Телекоммуникациялық желідегі проблемаларды локализациялау оңай болды, себебі байланыс арналарымен тікелей айналысатын бағдарламалық қамтамасы аз ғана болды. Бір ғана қате туралы хабарлау жүйесі жұмыс істеді. Қолданбалық бағдарламаға байланыс мүмкіндіктерін қосу әлдеқайда жеңіл болды, өйткені үзіліс процессорлары мен бағдарламалық таймерлерді қажет ететін байланыс бақылау бағдарламалық жасақтамасының кең аумағы жүйелік бағдарламалық жасақтама мен NCP-ге берілді. Advanced Peer to Peer Networking (APPN) енгізілгеннен кейін маршрутизациялау функциясы маршрутизатордың емес, компьютердің жауапкершілігіне көшті (TCP/IP желілеріндегідей). Әрбір компьютер жіберу механизмдерін анықтайтын түйіндердің тізімін сақтайтын. Желілік түйін деп аталатын орталық түйіннің типі барлық басқа түйіндердің жаһандық кестелерін ұстады. APPN бағдарламалық байланыс (APPC) маршрутизациялау кестелерін сақтау қажеттілігін жойды, бұл кестелер байланыстың бастапқы және соңғы нүктелерін нақты анықтайтын. APPN сеанстары мақсатты нүктеге жеткенше, басқа рұқсат етілген түйіндер арқылы соңғы нүктелерге бағытталатын. Бұл Интернет протоколы және Netware Internetwork Packet Exchange протоколы үшін маршрутизаторлардың жұмыс істеу принципіне ұқсас. (APPN кейде PU2.1 немесе Physical Unit 2.1 деп те аталады. APPC, кейде LU6.2 немесе Логикалық бірлік 6.2 деп аталады, APPN желілері үшін анықталған жалғыз протокол болды, бірақ бастапқыда VTAM/NCP қолдаған көптеген протоколдардың бірі болды, соның ішінде LU0, LU1, LU2 (3270 терминалы) және LU3. APPC негізінен CICS орталарында және деректер базасы қызметтерінде қолданылды, себебі ол 2 кезеңдік міндеттемелерді өңдеу үшін байланыс протоколдарымен жұмыс істейтін). Физикалық бірліктер: PU5 (VTAM), PU4 (37xx), PU2 (кластерлік контроллер). PU5 ең мүмкіндігі жоғары және барлық байланыстарда негізгі болып саналды. Басқа PU құрылғылары PU5-тен қосылуды сұрады, ал PU5 қосылымды орнатуға немесе орнатпауға құқылы болды. Басқа PU түрлері PU5-ке екінші деңгейлі ғана бола алатын. PU2.1 PU2.1-дің басқа PU2.1-ге өзара байланыс ортасында қосылу мүмкіндігін қосты.
Кемшіліктер
SNA емес желілерге қосылу қиын болды. SNA-ның ағымдағы нұсқасында қолдау көрсетілмейтін коммуникация схемаларына қол жеткізуді қажет ететін бағдарламалар кедергілерге тап болар еді. IBM X.25 қолдауын (NPSI) SNA-ға енгізгенге дейін X.25 желісіне қосылу қиынға соқты. X.25 және SNA протоколдары арасындағы түрлендіруді NCP бағдарламалық қамтамасының өзгертулері немесе сыртқы протокол түрлендіргіші арқылы жүзеге асыруға болар еді. Желідегі әрбір түйін жұбы үшін баламалы жолдар жиынтығы алдын ала жоспарланып, орталықта сақталуы тиіс еді. SNA бұл жолдарды таңдауда қатаң болды және ең жоғары жылдамдық үшін ағымдағы байланыс жүктемелерін ескермеді. SNA желісін орнату және күтіп ұстау қиын, ал SNA желісі өнімдері (немесе болған) қымбатқа бағаланды. IBM Advanced Peer to Peer Networking функционалдығын қосу арқылы SNA желісінің күрделілігін азайтуға жасалған әрекеттер толыққанды сәтті болған жоқ, себебі дәстүрлі SNA-дан SNA/APPN-ге көшу өте күрделі болды және бастапқыда көп қосымша құнды ұсынбады. SNA бағдарламалық қамтамасы лицензиясы (VTAM) жоғары деңгейдегі жүйелер үшін айына 10 000 долларға дейін тұратын. Ал SNA IBM 3745 байланыс контроллері әдетте 100 мың доллардан астам тұратын. TCP/IP 1980 жылдардың соңына дейін, мысалы, қаржы саласында коммерциялық қолдануға жарамсыз деп есептелді, бірақ 1990 жылдары өзіндік желісі және пакеттік коммуникация технологиясының арқасында тез дамыды. SNA-ның байланысқа негізделген архитектурасы барлық нәрсені қадағалау үшін үлкен күйлік машина логикасын қолданды. APPN әртүрлі түйін түрлерінің тұжырымымен күйлік логикаға жаңа өлшем қосты. Бәрі дұрыс жұмыс істеген кезде ол тұрақты болғанымен, қолмен араласу қажеттігі болды. Басқару нүктесі сеанстарын қарау сияқты қарапайым нәрселерді де қолмен жасау қажет еді. APPN-де мәселелер болған жоқ емес; алғашқы күндері көптеген компаниялар APPN қолдауындағы мәселелерге байланысты оны тастап кетті. Бірақ уақыт өте келе көптеген мәселелер шешілді, бірақ 1990 жылдардың басында TCP/IP-дің үлкен танымалдыққа ие болуы SNA үшін соңының басталуын білдірді.
Қауіпсіздік
SNA негізінде әртүрлі байланыс деңгейлерін қауіпсіздікпен қамту мүмкіндігімен құрылған. SNA ортасында байланыс үшін алдымен түйінге қосылып, желіге байланыс орнату және оны сақтау қажет. Содан кейін тиісті сессияны келісіп, сессия ішіндегі дерек ағынын басқару керек. Әр деңгейде байланыстарды басқаруға және сессия ақпаратын қорғауға арналған түрлі қауіпсіздік шаралары бар.
Токендік сақина арқылы SNA
IBM Token Ring желілеріне қосылған VTAM/NCP PU4 түйіндері жұмыс станциялары және серверлермен бірдей жергілікті желі инфрақұрылымын бөлісе алады. NCP SNA пакеттерін Token Ring кадрларына енгізеді, бұл сеанстардың Token Ring желісі арқылы жүруіне мүмкіндік береді. Нақты капсулалау және декапсулациялау 3745 құрылғысында жүзеге асырылады.
SNA IP арқылы
Мейнфреймдік жүйелер 37XX негізіндегі желілеріне балама іздеген кезде, IBM 1990-шы жылдардың ортасында Cisco компаниясымен серіктестік құрды және олар бірлесіп Data Link Switching, немесе DLSw әзірледі. DLSw SNA пакеттерін IP дерекграммаларына енгізеді, бұл IP желісі арқылы сеанстардың өтуіне мүмкіндік береді. Нақты енгізу және шығару DLSw байланысының екі шетіндегі Cisco маршрутизаторларында жүзеге асырылады. Жергілікті, яғни мейнфреймдік жағында маршрутизатор VTAM-ға тікелей қосылу үшін Token Ring топологиясын пайдаланады. Қосылымның қашықтағы (пайдаланушы) жағында PU типті 2 эмуляторы (мысалы, SNA шлюз сервері) маршрутизатордың LAN интерфейсі арқылы әріптес маршрутизаторға қосылады. Соңғы пайдаланушы терминалдары әдетте 3270 эмуляциялық бағдарламалық қамтамасы бар дербес компьютерлер болып табылады, олар SNA шлюзіне сәйкестендіріледі. VTAM/NCP PU типті 2 анықтамасы VTAM-ға жергілікті (NCPсыз) болатын коммутацияланған негізгі түйінге айналады, ал "Желі" қосылымын әртүрлі мүмкін шешімдерді пайдалана отырып анықтауға болады (мысалы, 3745-тегі Token Ring интерфейсі, 3172 LAN Channel Station немесе Cisco ESCON үйлесімді Channel Interface Processor).
Бәсекелестер
Honeywell Bull мейнфреймдерінің эксклюзивті желілік архитектурасы – Таратылған жүйелер архитектурасы (DSA). DSA үшін байланыс жиынтығы VIP болып табылады. DSA клиенттік қолжетімділік үшін де енді қолдау көрсетілмейді. Bull мейнфреймдері DSA-ны TCP/IP-ге аудару үшін Mainway құрылғыларымен жабдықталған, ал VIP құрылғылары TNVIP терминал эмуляцияларымен (GLink, Winsurf) алмастырылған. GCOS 8 TCP/IP арқылы TNVIP SE-ді қолдайды. Univac мейнфреймдерінің желілік архитектурасы – Үлестірілген есептеу архитектурасы (DCA), ал Burroughs мейнфреймдерінің желілік архитектурасы – Burroughs Network Architecture (BNA) болды; олар Unisys компаниясы құрылғаннан кейін екеуі де біріктірілген компания тарапынан ұсынылды. Екеуі де 2012 жылға қарай көнеріп қалды. International Computers Limited (ICL) өз ақпаратты өңдеу архитектурасын (IPA) ұсынды. DECnet – Digital Equipment Corporation компаниясы 1975 жылы екі PDP 11 миникомпьютерін байланыстыру үшін жасаған желілік протоколдар жиынтығы. Ол өзара тең желілік архитектураларының біріншілерінің біріне айналып, DEC-ті 1980-ші жылдары желілік қуатқа айналдырды. SNA сондай-ақ ISO-ның Open Systems Interconnection жүйесімен бәсекелестікке түсті, ол «комитетпен жобалау» мәселелеріне байланысты сәтсіз аяқталған, жеткізушіге тәуелді емес желілік архитектура құруға жасалған әрекет болды. OSI жүйелері өте күрделі, ал көптеген қатысушы тараптар OSI жүйелерінің өзара үйлесімділігіне кедерлес болатын кең ауқымды икемділікті қажет етті, бұл бастапқы мақсатқа қайшы болды. TCP/IP жиынтығы көп жылдар бойы IBM тарапынан маңызды балама деп есептелмеді, бұл ішінара зияткерлік меншік құқығын бақылаудың болмауына байланысты болды. 1988 жылы Яков Рехтердің жариялаған еңбегі, Telnet арқылы IBM 3270 сессиясын іске асыру мүмкіндігін анықтайды, дерек орталығында өзара іс-қимылға қатысты клиенттердің сұранысын нақты көрсетеді. Кейіннен IETF бұл жұмысты көптеген басқа RFC-термен кеңейтті. Осы RFC-терде анықталған TN3270 (Telnet 3270) мейнфреймдегі TN3270 серверін және соңғы пайдаланушының компьютеріндегі TN3270 эмуляциялық пакетін пайдалана отырып, мейнфреймге тікелей клиент-сервер қосылыстарын қолдайды. Бұл протокол дәстүрлі 3270 терминал протоколын TCP/IP сессиясы арқылы қолдау арқылы дәстүрлі SNA-дан аз немесе ешқандай өзгеріссіз жұмыс істеуге мүмкіндік береді. Бұл протокол Data Link Switching (DLSw) және басқа SNA алмастыру технологияларына қарағанда ескі SNA байланысын алмастыру үшін кеңінен қолданылады. IBM 5250 үшін ұқсас TN5250 (Telnet 5250) нұсқасы бар.
IBM SNA емес іске асырулар
IBM SNA бағдарламалық жасақтамасы IBM-нен басқа жүйелерге IBM-нің мейнфреймдерімен және AS/400 орта ауқымды компьютерлерімен SNA протоколдарын пайдалана отырып байланыс жасауға мүмкіндік берді. Кейбір Unix жүйелерін жеткізушілер, мысалы Sun Microsystems өзінің SunLink SNA өнімдер тізбегімен, соның ішінде PU2.1 Server, және Hewlett Packard/Hewlett Packard Enterprise, олардың SNAplus2 өнімдерімен SNA бағдарламалық жасақтамасын ұсынды. Microsoft 1993 жылы Windows үшін SNA Server-ді ұсынды; ол қазір Microsoft Host Integration Server деп аталады. Digital Equipment Corporation компаниясының VMS/SNA-сы VMS жүйесі үшін болды. Systems Strategies, Inc. компаниясының VAX Link өнімдері сияқты VMS үшін үшінші тараптан шыққан SNA бағдарламалық жасақтамалары да болды. Brixton Systems компаниясы "Brixton" деген атпен сатылатын бірнеше SNA бағдарламалық жасақтамаларын, мысалы Brixton BrxPU21, BrxPU5, BrxLU62 және BrxAPPC, Hewlett Packard және Sun Microsystems жұмыс станциялары сияқты жүйелер үшін әзірледі. IBM z/OS жүйесімен байланыс үшін APPC/PU2.1/LU6.2-нің бірнеше IBM емес бағдарламалық жасақтамаларын қолдады, соның ішінде HP жүйелері үшін SNAplus2, Sun Solaris үшін Brixton 4.1 SNA және Sun Solaris үшін SunLink SNA 9.1 қолдауы.
Brixton Systems developed several SNA software packages, sold under the name "Brixton", such as Brixton BrxPU21, BrxPU5, BrxLU62, and BrxAPPC, for systems such as workstations from Hewlett Packard, and Sun Microsystems. IBM supported using several non IBM software implementations of APPC/PU2.1/LU6.2 to communicate with z/OS, including SNAplus2 for systems from HP, Brixton 4.1 SNA for Sun Solaris, and SunLink SNA 9.1 Support for Sun Solaris.